@azure/arm-resources 30.0.0-alpha.20210806.1 → 30.0.0-alpha.20210930.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +18 -0
- package/README.md +2 -1
- 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/esm/resourceManagementClientContext.js +1 -1
- package/package.json +2 -2
- package/src/resourceManagementClientContext.ts +1 -1
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/models/index.ts","../src/models/mappers.ts","../src/models/parameters.ts","../src/operations/operations.ts","../src/lro/requestUtils.ts","../src/lro/models.ts","../src/lro/azureAsyncPolling.ts","../src/lro/bodyPolling.ts","../src/lro/locationPolling.ts","../src/lro/passthrough.ts","../src/lro/stateMachine.ts","../src/lro/operation.ts","../src/lro/lroEngine.ts","../src/coreClientLro.ts","../src/operations/deployments.ts","../src/operations/providers.ts","../src/operations/providerResourceTypes.ts","../src/operations/resources.ts","../src/operations/resourceGroups.ts","../src/operations/tagsOperations.ts","../src/operations/deploymentOperations.ts","../src/resourceManagementClientContext.ts","../src/resourceManagementClient.ts"],"sourcesContent":["/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport * as coreClient from \"@azure/core-client\";\n\n/** Result of the request to list Microsoft.Resources operations. It contains a list of operations and a URL link to get the next set of results. */\nexport interface OperationListResult {\n /** List of Microsoft.Resources operations. */\n value?: Operation[];\n /** URL to get the next set of operation list results if there are any. */\n nextLink?: string;\n}\n\n/** Microsoft.Resources operation */\nexport interface Operation {\n /** Operation name: {provider}/{resource}/{operation} */\n name?: string;\n /** The object that represents the operation. */\n display?: OperationDisplay;\n}\n\n/** The object that represents the operation. */\nexport interface OperationDisplay {\n /** Service provider: Microsoft.Resources */\n provider?: string;\n /** Resource on which the operation is performed: Profile, endpoint, etc. */\n resource?: string;\n /** Operation type: Read, write, delete, etc. */\n operation?: string;\n /** Description of the operation. */\n description?: string;\n}\n\n/** An error response for a resource management request. */\nexport interface CloudError {\n /** Common error response for all Azure Resource Manager APIs to return error details for failed operations. (This also follows the OData error response format.) */\n error?: ErrorResponse;\n}\n\n/** Common error response for all Azure Resource Manager APIs to return error details for failed operations. (This also follows the OData error response format.) */\nexport interface ErrorResponse {\n /**\n * The error code.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly code?: string;\n /**\n * The error message.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly message?: string;\n /**\n * The error target.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly target?: string;\n /**\n * The error details.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly details?: ErrorResponse[];\n /**\n * The error additional info.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly additionalInfo?: ErrorAdditionalInfo[];\n}\n\n/** The resource management error additional info. */\nexport interface ErrorAdditionalInfo {\n /**\n * The additional info type.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly type?: string;\n /**\n * The additional info.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly info?: Record<string, unknown>;\n}\n\n/** Deployment operation parameters. */\nexport interface Deployment {\n /** The location to store the deployment data. */\n location?: string;\n /** The deployment properties. */\n properties: DeploymentProperties;\n /** Deployment tags */\n tags?: { [propertyName: string]: string };\n}\n\n/** Deployment properties. */\nexport interface DeploymentProperties {\n /** The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both. */\n template?: Record<string, unknown>;\n /** The URI of the template. Use either the templateLink property or the template property, but not both. */\n templateLink?: TemplateLink;\n /** Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string. */\n parameters?: Record<string, unknown>;\n /** The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both. */\n parametersLink?: ParametersLink;\n /** The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources. */\n mode: DeploymentMode;\n /** The debug setting of the deployment. */\n debugSetting?: DebugSetting;\n /** The deployment on error behavior. */\n onErrorDeployment?: OnErrorDeployment;\n /** Specifies whether template expressions are evaluated within the scope of the parent template or nested template. Only applicable to nested templates. If not specified, default value is outer. */\n expressionEvaluationOptions?: ExpressionEvaluationOptions;\n}\n\n/** Entity representing the reference to the template. */\nexport interface TemplateLink {\n /** The URI of the template to deploy. Use either the uri or id property, but not both. */\n uri?: string;\n /** The resource id of a Template Spec. Use either the id or uri property, but not both. */\n id?: string;\n /** The relativePath property can be used to deploy a linked template at a location relative to the parent. If the parent template was linked with a TemplateSpec, this will reference an artifact in the TemplateSpec. If the parent was linked with a URI, the child deployment will be a combination of the parent and relativePath URIs */\n relativePath?: string;\n /** If included, must match the ContentVersion in the template. */\n contentVersion?: string;\n /** The query string (for example, a SAS token) to be used with the templateLink URI. */\n queryString?: string;\n}\n\n/** Entity representing the reference to the deployment parameters. */\nexport interface ParametersLink {\n /** The URI of the parameters file. */\n uri: string;\n /** If included, must match the ContentVersion in the template. */\n contentVersion?: string;\n}\n\n/** The debug setting. */\nexport interface DebugSetting {\n /** Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations. */\n detailLevel?: string;\n}\n\n/** Deployment on error behavior. */\nexport interface OnErrorDeployment {\n /** The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment. */\n type?: OnErrorDeploymentType;\n /** The deployment to be used on error case. */\n deploymentName?: string;\n}\n\n/** Specifies whether template expressions are evaluated within the scope of the parent template or nested template. */\nexport interface ExpressionEvaluationOptions {\n /** The scope to be used for evaluation of parameters, variables and functions in a nested template. */\n scope?: ExpressionEvaluationOptionsScopeType;\n}\n\n/** Deployment information. */\nexport interface DeploymentExtended {\n /**\n * The ID of the deployment.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly id?: string;\n /**\n * The name of the deployment.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly name?: string;\n /**\n * The type of the deployment.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly type?: string;\n /** the location of the deployment. */\n location?: string;\n /** Deployment properties. */\n properties?: DeploymentPropertiesExtended;\n /** Deployment tags */\n tags?: { [propertyName: string]: string };\n}\n\n/** Deployment properties with additional details. */\nexport interface DeploymentPropertiesExtended {\n /**\n * Denotes the state of provisioning.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly provisioningState?: ProvisioningState;\n /**\n * The correlation ID of the deployment.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly correlationId?: string;\n /**\n * The timestamp of the template deployment.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly timestamp?: Date;\n /**\n * The duration of the template deployment.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly duration?: string;\n /**\n * Key/value pairs that represent deployment output.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly outputs?: Record<string, unknown>;\n /**\n * The list of resource providers needed for the deployment.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly providers?: Provider[];\n /**\n * The list of deployment dependencies.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly dependencies?: Dependency[];\n /**\n * The URI referencing the template.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly templateLink?: TemplateLink;\n /**\n * Deployment parameters.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly parameters?: Record<string, unknown>;\n /**\n * The URI referencing the parameters.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly parametersLink?: ParametersLink;\n /**\n * The deployment mode. Possible values are Incremental and Complete.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly mode?: DeploymentMode;\n /**\n * The debug setting of the deployment.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly debugSetting?: DebugSetting;\n /**\n * The deployment on error behavior.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly onErrorDeployment?: OnErrorDeploymentExtended;\n /**\n * The hash produced for the template.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly templateHash?: string;\n /**\n * Array of provisioned resources.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly outputResources?: ResourceReference[];\n /**\n * Array of validated resources.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly validatedResources?: ResourceReference[];\n /**\n * The deployment error.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly error?: ErrorResponse;\n}\n\n/** Resource provider information. */\nexport interface Provider {\n /**\n * The provider ID.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly id?: string;\n /** The namespace of the resource provider. */\n namespace?: string;\n /**\n * The registration state of the resource provider.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly registrationState?: string;\n /**\n * The registration policy of the resource provider.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly registrationPolicy?: string;\n /**\n * The collection of provider resource types.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceTypes?: ProviderResourceType[];\n /** The provider authorization consent state. */\n providerAuthorizationConsentState?: ProviderAuthorizationConsentState;\n}\n\n/** Resource type managed by the resource provider. */\nexport interface ProviderResourceType {\n /** The resource type. */\n resourceType?: string;\n /** The collection of locations where this resource type can be created. */\n locations?: string[];\n /** The location mappings that are supported by this resource type. */\n locationMappings?: ProviderExtendedLocation[];\n /** The aliases that are supported by this resource type. */\n aliases?: Alias[];\n /** The API version. */\n apiVersions?: string[];\n /**\n * The default API version.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly defaultApiVersion?: string;\n /**\n * The API profiles for the resource provider.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly apiProfiles?: ApiProfile[];\n /** The additional capabilities offered by this resource type. */\n capabilities?: string;\n /** The properties. */\n properties?: { [propertyName: string]: string };\n}\n\n/** The provider extended location. */\nexport interface ProviderExtendedLocation {\n /** The azure location. */\n location?: string;\n /** The extended location type. */\n type?: string;\n /** The extended locations for the azure location. */\n extendedLocations?: string[];\n}\n\n/** The alias type. */\nexport interface Alias {\n /** The alias name. */\n name?: string;\n /** The paths for an alias. */\n paths?: AliasPath[];\n /** The type of the alias. */\n type?: AliasType;\n /** The default path for an alias. */\n defaultPath?: string;\n /** The default pattern for an alias. */\n defaultPattern?: AliasPattern;\n /**\n * The default alias path metadata. Applies to the default path and to any alias path that doesn't have metadata\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly defaultMetadata?: AliasPathMetadata;\n}\n\n/** The type of the paths for alias. */\nexport interface AliasPath {\n /** The path of an alias. */\n path?: string;\n /** The API versions. */\n apiVersions?: string[];\n /** The pattern for an alias path. */\n pattern?: AliasPattern;\n /**\n * The metadata of the alias path. If missing, fall back to the default metadata of the alias.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly metadata?: AliasPathMetadata;\n}\n\n/** The type of the pattern for an alias path. */\nexport interface AliasPattern {\n /** The alias pattern phrase. */\n phrase?: string;\n /** The alias pattern variable. */\n variable?: string;\n /** The type of alias pattern */\n type?: AliasPatternType;\n}\n\nexport interface AliasPathMetadata {\n /**\n * The type of the token that the alias path is referring to.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly type?: AliasPathTokenType;\n /**\n * The attributes of the token that the alias path is referring to.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly attributes?: AliasPathAttributes;\n}\n\nexport interface ApiProfile {\n /**\n * The profile version.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly profileVersion?: string;\n /**\n * The API version.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly apiVersion?: string;\n}\n\n/** Deployment dependency information. */\nexport interface Dependency {\n /** The list of dependencies. */\n dependsOn?: BasicDependency[];\n /** The ID of the dependency. */\n id?: string;\n /** The dependency resource type. */\n resourceType?: string;\n /** The dependency resource name. */\n resourceName?: string;\n}\n\n/** Deployment dependency information. */\nexport interface BasicDependency {\n /** The ID of the dependency. */\n id?: string;\n /** The dependency resource type. */\n resourceType?: string;\n /** The dependency resource name. */\n resourceName?: string;\n}\n\n/** Deployment on error behavior with additional details. */\nexport interface OnErrorDeploymentExtended {\n /**\n * The state of the provisioning for the on error deployment.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly provisioningState?: string;\n /** The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment. */\n type?: OnErrorDeploymentType;\n /** The deployment to be used on error case. */\n deploymentName?: string;\n}\n\n/** The resource Id model. */\nexport interface ResourceReference {\n /**\n * The fully qualified resource Id.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly id?: string;\n}\n\n/** Information from validate template deployment response. */\nexport interface DeploymentValidateResult {\n /**\n * The deployment validation error.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly error?: ErrorResponse;\n /** The template deployment properties. */\n properties?: DeploymentPropertiesExtended;\n}\n\n/** The deployment export result. */\nexport interface DeploymentExportResult {\n /** The template content. */\n template?: Record<string, unknown>;\n}\n\n/** List of deployments. */\nexport interface DeploymentListResult {\n /** An array of deployments. */\n value?: DeploymentExtended[];\n /**\n * The URL to use for getting the next set of results.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly nextLink?: string;\n}\n\n/** Deployment operation parameters. */\nexport interface ScopedDeployment {\n /** The location to store the deployment data. */\n location: string;\n /** The deployment properties. */\n properties: DeploymentProperties;\n /** Deployment tags */\n tags?: { [propertyName: string]: string };\n}\n\n/** Deployment What-if operation parameters. */\nexport interface ScopedDeploymentWhatIf {\n /** The location to store the deployment data. */\n location: string;\n /** The deployment properties. */\n properties: DeploymentWhatIfProperties;\n}\n\n/** Deployment What-If operation settings. */\nexport interface DeploymentWhatIfSettings {\n /** The format of the What-If results */\n resultFormat?: WhatIfResultFormat;\n}\n\n/** Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results. */\nexport interface WhatIfOperationResult {\n /** Status of the What-If operation. */\n status?: string;\n /** Error when What-If operation fails. */\n error?: ErrorResponse;\n /** List of resource changes predicted by What-If operation. */\n changes?: WhatIfChange[];\n}\n\n/** Information about a single resource change predicted by What-If operation. */\nexport interface WhatIfChange {\n /** Resource ID */\n resourceId: string;\n /** Type of change that will be made to the resource when the deployment is executed. */\n changeType: ChangeType;\n /** The explanation about why the resource is unsupported by What-If. */\n unsupportedReason?: string;\n /** The snapshot of the resource before the deployment is executed. */\n before?: Record<string, unknown>;\n /** The predicted snapshot of the resource after the deployment is executed. */\n after?: Record<string, unknown>;\n /** The predicted changes to resource properties. */\n delta?: WhatIfPropertyChange[];\n}\n\n/** The predicted change to the resource property. */\nexport interface WhatIfPropertyChange {\n /** The path of the property. */\n path: string;\n /** The type of property change. */\n propertyChangeType: PropertyChangeType;\n /** The value of the property before the deployment is executed. */\n before?: Record<string, unknown>;\n /** The value of the property after the deployment is executed. */\n after?: Record<string, unknown>;\n /** Nested property changes. */\n children?: WhatIfPropertyChange[];\n}\n\n/** Deployment What-if operation parameters. */\nexport interface DeploymentWhatIf {\n /** The location to store the deployment data. */\n location?: string;\n /** The deployment properties. */\n properties: DeploymentWhatIfProperties;\n}\n\n/** List of provider permissions. */\nexport interface ProviderPermissionListResult {\n /** An array of provider permissions. */\n value?: ProviderPermission[];\n /**\n * The URL to use for getting the next set of results.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly nextLink?: string;\n}\n\n/** The provider permission */\nexport interface ProviderPermission {\n /** The application id. */\n applicationId?: string;\n /** Role definition properties. */\n roleDefinition?: RoleDefinition;\n /** Role definition properties. */\n managedByRoleDefinition?: RoleDefinition;\n /** The provider authorization consent state. */\n providerAuthorizationConsentState?: ProviderAuthorizationConsentState;\n}\n\n/** Role definition properties. */\nexport interface RoleDefinition {\n /** The role definition ID. */\n id?: string;\n /** The role definition name. */\n name?: string;\n /** If this is a service role. */\n isServiceRole?: boolean;\n /** Role definition permissions. */\n permissions?: Permission[];\n /** Role definition assignable scopes. */\n scopes?: string[];\n}\n\n/** Role definition permissions. */\nexport interface Permission {\n /** Allowed actions. */\n actions?: string[];\n /** Denied actions. */\n notActions?: string[];\n /** Allowed Data actions. */\n dataActions?: string[];\n /** Denied Data actions. */\n notDataActions?: string[];\n}\n\n/** The provider registration definition. */\nexport interface ProviderRegistrationRequest {\n /** The provider consent. */\n thirdPartyProviderConsent?: ProviderConsentDefinition;\n}\n\n/** The provider consent. */\nexport interface ProviderConsentDefinition {\n /** A value indicating whether authorization is consented or not. */\n consentToAuthorization?: boolean;\n}\n\n/** List of resource providers. */\nexport interface ProviderListResult {\n /** An array of resource providers. */\n value?: Provider[];\n /**\n * The URL to use for getting the next set of results.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly nextLink?: string;\n}\n\n/** List of resource types of a resource provider. */\nexport interface ProviderResourceTypeListResult {\n /** An array of resource types. */\n value?: ProviderResourceType[];\n /**\n * The URL to use for getting the next set of results.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly nextLink?: string;\n}\n\n/** List of resource groups. */\nexport interface ResourceListResult {\n /** An array of resources. */\n value?: GenericResourceExpanded[];\n /**\n * The URL to use for getting the next set of results.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly nextLink?: string;\n}\n\n/** Specified resource. */\nexport interface Resource {\n /**\n * Resource ID\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly id?: string;\n /**\n * Resource name\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly name?: string;\n /**\n * Resource type\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly type?: string;\n /** Resource location */\n location?: string;\n /** Resource extended location. */\n extendedLocation?: ExtendedLocation;\n /** Resource tags */\n tags?: { [propertyName: string]: string };\n}\n\n/** Resource extended location. */\nexport interface ExtendedLocation {\n /** The extended location type. */\n type?: ExtendedLocationType;\n /** The extended location name. */\n name?: string;\n}\n\n/** Plan for the resource. */\nexport interface Plan {\n /** The plan ID. */\n name?: string;\n /** The publisher ID. */\n publisher?: string;\n /** The offer ID. */\n product?: string;\n /** The promotion code. */\n promotionCode?: string;\n /** The plan's version. */\n version?: string;\n}\n\n/** SKU for the resource. */\nexport interface Sku {\n /** The SKU name. */\n name?: string;\n /** The SKU tier. */\n tier?: string;\n /** The SKU size. */\n size?: string;\n /** The SKU family. */\n family?: string;\n /** The SKU model. */\n model?: string;\n /** The SKU capacity. */\n capacity?: number;\n}\n\n/** Identity for the resource. */\nexport interface Identity {\n /**\n * The principal ID of resource identity.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly principalId?: string;\n /**\n * The tenant ID of resource.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly tenantId?: string;\n /** The identity type. */\n type?: ResourceIdentityType;\n /** The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. */\n userAssignedIdentities?: {\n [propertyName: string]: IdentityUserAssignedIdentitiesValue;\n };\n}\n\nexport interface IdentityUserAssignedIdentitiesValue {\n /**\n * The principal id of user assigned identity.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly principalId?: string;\n /**\n * The client id of user assigned identity.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly clientId?: string;\n}\n\n/** Resource group information. */\nexport interface ResourceGroup {\n /**\n * The ID of the resource group.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly id?: string;\n /**\n * The name of the resource group.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly name?: string;\n /**\n * The type of the resource group.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly type?: string;\n /** The resource group properties. */\n properties?: ResourceGroupProperties;\n /** The location of the resource group. It cannot be changed after the resource group has been created. It must be one of the supported Azure locations. */\n location: string;\n /** The ID of the resource that manages this resource group. */\n managedBy?: string;\n /** The tags attached to the resource group. */\n tags?: { [propertyName: string]: string };\n}\n\n/** The resource group properties. */\nexport interface ResourceGroupProperties {\n /**\n * The provisioning state.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly provisioningState?: string;\n}\n\n/** Resource group information. */\nexport interface ResourceGroupPatchable {\n /** The name of the resource group. */\n name?: string;\n /** The resource group properties. */\n properties?: ResourceGroupProperties;\n /** The ID of the resource that manages this resource group. */\n managedBy?: string;\n /** The tags attached to the resource group. */\n tags?: { [propertyName: string]: string };\n}\n\n/** Export resource group template request parameters. */\nexport interface ExportTemplateRequest {\n /** The IDs of the resources to filter the export by. To export all resources, supply an array with single entry '*'. */\n resources?: string[];\n /** The export template options. A CSV-formatted list containing zero or more of the following: 'IncludeParameterDefaultValue', 'IncludeComments', 'SkipResourceNameParameterization', 'SkipAllParameterization' */\n options?: string;\n}\n\n/** Resource group export result. */\nexport interface ResourceGroupExportResult {\n /** The template content. */\n template?: Record<string, unknown>;\n /** The template export error. */\n error?: ErrorResponse;\n}\n\n/** List of resource groups. */\nexport interface ResourceGroupListResult {\n /** An array of resource groups. */\n value?: ResourceGroup[];\n /**\n * The URL to use for getting the next set of results.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly nextLink?: string;\n}\n\n/** Parameters of move resources. */\nexport interface ResourcesMoveInfo {\n /** The IDs of the resources. */\n resources?: string[];\n /** The target resource group. */\n targetResourceGroup?: string;\n}\n\n/** Tag information. */\nexport interface TagValue {\n /**\n * The tag value ID.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly id?: string;\n /** The tag value. */\n tagValue?: string;\n /** The tag value count. */\n count?: TagCount;\n}\n\n/** Tag count. */\nexport interface TagCount {\n /** Type of count. */\n type?: string;\n /** Value of count. */\n value?: number;\n}\n\n/** Tag details. */\nexport interface TagDetails {\n /**\n * The tag name ID.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly id?: string;\n /** The tag name. */\n tagName?: string;\n /** The total number of resources that use the resource tag. When a tag is initially created and has no associated resources, the value is 0. */\n count?: TagCount;\n /** The list of tag values. */\n values?: TagValue[];\n}\n\n/** List of subscription tags. */\nexport interface TagsListResult {\n /** An array of tags. */\n value?: TagDetails[];\n /**\n * The URL to use for getting the next set of results.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly nextLink?: string;\n}\n\n/** Deployment operation information. */\nexport interface DeploymentOperation {\n /**\n * Full deployment operation ID.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly id?: string;\n /**\n * Deployment operation ID.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly operationId?: string;\n /** Deployment properties. */\n properties?: DeploymentOperationProperties;\n}\n\n/** Deployment operation properties. */\nexport interface DeploymentOperationProperties {\n /**\n * The name of the current provisioning operation.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly provisioningOperation?: ProvisioningOperation;\n /**\n * The state of the provisioning.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly provisioningState?: string;\n /**\n * The date and time of the operation.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly timestamp?: Date;\n /**\n * The duration of the operation.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly duration?: string;\n /**\n * Deployment operation service request id.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly serviceRequestId?: string;\n /**\n * Operation status code from the resource provider. This property may not be set if a response has not yet been received.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly statusCode?: string;\n /**\n * Operation status message from the resource provider. This property is optional. It will only be provided if an error was received from the resource provider.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly statusMessage?: StatusMessage;\n /**\n * The target resource.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly targetResource?: TargetResource;\n /**\n * The HTTP request message.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly request?: HttpMessage;\n /**\n * The HTTP response message.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly response?: HttpMessage;\n}\n\n/** Operation status message object. */\nexport interface StatusMessage {\n /** Status of the deployment operation. */\n status?: string;\n /** The error reported by the operation. */\n error?: ErrorResponse;\n}\n\n/** Target resource. */\nexport interface TargetResource {\n /** The ID of the resource. */\n id?: string;\n /** The name of the resource. */\n resourceName?: string;\n /** The type of the resource. */\n resourceType?: string;\n}\n\n/** HTTP message. */\nexport interface HttpMessage {\n /** HTTP message content. */\n content?: Record<string, unknown>;\n}\n\n/** List of deployment operations. */\nexport interface DeploymentOperationsListResult {\n /** An array of deployment operations. */\n value?: DeploymentOperation[];\n /**\n * The URL to use for getting the next set of results.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly nextLink?: string;\n}\n\n/** Result of the request to calculate template hash. It contains a string of minified template and its hash. */\nexport interface TemplateHashResult {\n /** The minified template string. */\n minifiedTemplate?: string;\n /** The template hash. */\n templateHash?: string;\n}\n\n/** Wrapper resource for tags API requests and responses. */\nexport interface TagsResource {\n /**\n * The ID of the tags wrapper resource.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly id?: string;\n /**\n * The name of the tags wrapper resource.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly name?: string;\n /**\n * The type of the tags wrapper resource.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly type?: string;\n /** The set of tags. */\n properties: Tags;\n}\n\n/** A dictionary of name and value pairs. */\nexport interface Tags {\n /** Dictionary of <string> */\n tags?: { [propertyName: string]: string };\n}\n\n/** Wrapper resource for tags patch API request only. */\nexport interface TagsPatchResource {\n /** The operation type for the patch API. */\n operation?: TagsPatchOperation;\n /** The set of tags. */\n properties?: Tags;\n}\n\n/** Deployment filter. */\nexport interface DeploymentExtendedFilter {\n /** The provisioning state. */\n provisioningState?: string;\n}\n\n/** Resource filter. */\nexport interface GenericResourceFilter {\n /** The resource type. */\n resourceType?: string;\n /** The tag name. */\n tagname?: string;\n /** The tag value. */\n tagvalue?: string;\n}\n\n/** Resource group filter. */\nexport interface ResourceGroupFilter {\n /** The tag name. */\n tagName?: string;\n /** The tag value. */\n tagValue?: string;\n}\n\n/** Resource provider operation's display properties. */\nexport interface ResourceProviderOperationDisplayProperties {\n /** Operation description. */\n publisher?: string;\n /** Operation provider. */\n provider?: string;\n /** Operation resource. */\n resource?: string;\n /** Resource provider operation. */\n operation?: string;\n /** Operation description. */\n description?: string;\n}\n\n/** Sub-resource. */\nexport interface SubResource {\n /** Resource ID */\n id?: string;\n}\n\n/** Deployment What-if properties. */\nexport type DeploymentWhatIfProperties = DeploymentProperties & {\n /** Optional What-If operation settings. */\n whatIfSettings?: DeploymentWhatIfSettings;\n};\n\n/** Resource information. */\nexport type GenericResource = Resource & {\n /** The plan of the resource. */\n plan?: Plan;\n /** The resource properties. */\n properties?: Record<string, unknown>;\n /** The kind of the resource. */\n kind?: string;\n /** ID of the resource that manages this resource. */\n managedBy?: string;\n /** The SKU of the resource. */\n sku?: Sku;\n /** The identity of the resource. */\n identity?: Identity;\n};\n\n/** Resource information. */\nexport type GenericResourceExpanded = GenericResource & {\n /**\n * The created time of the resource. This is only present if requested via the $expand query parameter.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly createdTime?: Date;\n /**\n * The changed time of the resource. This is only present if requested via the $expand query parameter.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly changedTime?: Date;\n /**\n * The provisioning state of the resource. This is only present if requested via the $expand query parameter.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly provisioningState?: string;\n};\n\n/** Defines headers for Deployments_whatIfAtTenantScope operation. */\nexport interface DeploymentsWhatIfAtTenantScopeHeaders {\n /** URL to get status of this long-running operation. */\n location?: string;\n /** Number of seconds to wait before polling for status. */\n retryAfter?: string;\n}\n\n/** Defines headers for Deployments_whatIfAtManagementGroupScope operation. */\nexport interface DeploymentsWhatIfAtManagementGroupScopeHeaders {\n /** URL to get status of this long-running operation. */\n location?: string;\n /** Number of seconds to wait before polling for status. */\n retryAfter?: string;\n}\n\n/** Defines headers for Deployments_whatIfAtSubscriptionScope operation. */\nexport interface DeploymentsWhatIfAtSubscriptionScopeHeaders {\n /** URL to get status of this long-running operation. */\n location?: string;\n /** Number of seconds to wait before polling for status. */\n retryAfter?: string;\n}\n\n/** Defines headers for Deployments_whatIf operation. */\nexport interface DeploymentsWhatIfHeaders {\n /** URL to get status of this long-running operation. */\n location?: string;\n /** Number of seconds to wait before polling for status. */\n retryAfter?: string;\n}\n\n/** Known values of {@link ExpressionEvaluationOptionsScopeType} that the service accepts. */\nexport enum KnownExpressionEvaluationOptionsScopeType {\n NotSpecified = \"NotSpecified\",\n Outer = \"Outer\",\n Inner = \"Inner\"\n}\n\n/**\n * Defines values for ExpressionEvaluationOptionsScopeType. \\\n * {@link KnownExpressionEvaluationOptionsScopeType} can be used interchangeably with ExpressionEvaluationOptionsScopeType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **NotSpecified** \\\n * **Outer** \\\n * **Inner**\n */\nexport type ExpressionEvaluationOptionsScopeType = string;\n\n/** Known values of {@link ProvisioningState} that the service accepts. */\nexport enum KnownProvisioningState {\n NotSpecified = \"NotSpecified\",\n Accepted = \"Accepted\",\n Running = \"Running\",\n Ready = \"Ready\",\n Creating = \"Creating\",\n Created = \"Created\",\n Deleting = \"Deleting\",\n Deleted = \"Deleted\",\n Canceled = \"Canceled\",\n Failed = \"Failed\",\n Succeeded = \"Succeeded\",\n Updating = \"Updating\"\n}\n\n/**\n * Defines values for ProvisioningState. \\\n * {@link KnownProvisioningState} can be used interchangeably with ProvisioningState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **NotSpecified** \\\n * **Accepted** \\\n * **Running** \\\n * **Ready** \\\n * **Creating** \\\n * **Created** \\\n * **Deleting** \\\n * **Deleted** \\\n * **Canceled** \\\n * **Failed** \\\n * **Succeeded** \\\n * **Updating**\n */\nexport type ProvisioningState = string;\n\n/** Known values of {@link AliasPathTokenType} that the service accepts. */\nexport enum KnownAliasPathTokenType {\n /** The token type is not specified. */\n NotSpecified = \"NotSpecified\",\n /** The token type can be anything. */\n Any = \"Any\",\n /** The token type is string. */\n String = \"String\",\n /** The token type is object. */\n Object = \"Object\",\n /** The token type is array. */\n Array = \"Array\",\n /** The token type is integer. */\n Integer = \"Integer\",\n /** The token type is number. */\n Number = \"Number\",\n /** The token type is boolean. */\n Boolean = \"Boolean\"\n}\n\n/**\n * Defines values for AliasPathTokenType. \\\n * {@link KnownAliasPathTokenType} can be used interchangeably with AliasPathTokenType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **NotSpecified**: The token type is not specified. \\\n * **Any**: The token type can be anything. \\\n * **String**: The token type is string. \\\n * **Object**: The token type is object. \\\n * **Array**: The token type is array. \\\n * **Integer**: The token type is integer. \\\n * **Number**: The token type is number. \\\n * **Boolean**: The token type is boolean.\n */\nexport type AliasPathTokenType = string;\n\n/** Known values of {@link AliasPathAttributes} that the service accepts. */\nexport enum KnownAliasPathAttributes {\n /** The token that the alias path is referring to has no attributes. */\n None = \"None\",\n /** The token that the alias path is referring to is modifiable by policies with 'modify' effect. */\n Modifiable = \"Modifiable\"\n}\n\n/**\n * Defines values for AliasPathAttributes. \\\n * {@link KnownAliasPathAttributes} can be used interchangeably with AliasPathAttributes,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **None**: The token that the alias path is referring to has no attributes. \\\n * **Modifiable**: The token that the alias path is referring to is modifiable by policies with 'modify' effect.\n */\nexport type AliasPathAttributes = string;\n\n/** Known values of {@link ProviderAuthorizationConsentState} that the service accepts. */\nexport enum KnownProviderAuthorizationConsentState {\n NotSpecified = \"NotSpecified\",\n Required = \"Required\",\n NotRequired = \"NotRequired\",\n Consented = \"Consented\"\n}\n\n/**\n * Defines values for ProviderAuthorizationConsentState. \\\n * {@link KnownProviderAuthorizationConsentState} can be used interchangeably with ProviderAuthorizationConsentState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **NotSpecified** \\\n * **Required** \\\n * **NotRequired** \\\n * **Consented**\n */\nexport type ProviderAuthorizationConsentState = string;\n\n/** Known values of {@link ExtendedLocationType} that the service accepts. */\nexport enum KnownExtendedLocationType {\n EdgeZone = \"EdgeZone\"\n}\n\n/**\n * Defines values for ExtendedLocationType. \\\n * {@link KnownExtendedLocationType} can be used interchangeably with ExtendedLocationType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **EdgeZone**\n */\nexport type ExtendedLocationType = string;\n\n/** Known values of {@link TagsPatchOperation} that the service accepts. */\nexport enum KnownTagsPatchOperation {\n /** The 'replace' option replaces the entire set of existing tags with a new set. */\n Replace = \"Replace\",\n /** The 'merge' option allows adding tags with new names and updating the values of tags with existing names. */\n Merge = \"Merge\",\n /** The 'delete' option allows selectively deleting tags based on given names or name/value pairs. */\n Delete = \"Delete\"\n}\n\n/**\n * Defines values for TagsPatchOperation. \\\n * {@link KnownTagsPatchOperation} can be used interchangeably with TagsPatchOperation,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Replace**: The 'replace' option replaces the entire set of existing tags with a new set. \\\n * **Merge**: The 'merge' option allows adding tags with new names and updating the values of tags with existing names. \\\n * **Delete**: The 'delete' option allows selectively deleting tags based on given names or name\\/value pairs.\n */\nexport type TagsPatchOperation = string;\n/** Defines values for DeploymentMode. */\nexport type DeploymentMode = \"Incremental\" | \"Complete\";\n/** Defines values for OnErrorDeploymentType. */\nexport type OnErrorDeploymentType = \"LastSuccessful\" | \"SpecificDeployment\";\n/** Defines values for AliasPatternType. */\nexport type AliasPatternType = \"NotSpecified\" | \"Extract\";\n/** Defines values for AliasType. */\nexport type AliasType = \"NotSpecified\" | \"PlainText\" | \"Mask\";\n/** Defines values for WhatIfResultFormat. */\nexport type WhatIfResultFormat = \"ResourceIdOnly\" | \"FullResourcePayloads\";\n/** Defines values for ChangeType. */\nexport type ChangeType =\n | \"Create\"\n | \"Delete\"\n | \"Ignore\"\n | \"Deploy\"\n | \"NoChange\"\n | \"Modify\"\n | \"Unsupported\";\n/** Defines values for PropertyChangeType. */\nexport type PropertyChangeType =\n | \"Create\"\n | \"Delete\"\n | \"Modify\"\n | \"Array\"\n | \"NoEffect\";\n/** Defines values for ResourceIdentityType. */\nexport type ResourceIdentityType =\n | \"SystemAssigned\"\n | \"UserAssigned\"\n | \"SystemAssigned, UserAssigned\"\n | \"None\";\n/** Defines values for ProvisioningOperation. */\nexport type ProvisioningOperation =\n | \"NotSpecified\"\n | \"Create\"\n | \"Delete\"\n | \"Waiting\"\n | \"AzureAsyncOperationWaiting\"\n | \"ResourceCacheWaiting\"\n | \"Action\"\n | \"Read\"\n | \"EvaluateDeploymentOutput\"\n | \"DeploymentCleanup\";\n\n/** Optional parameters. */\nexport interface OperationsListOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the list operation. */\nexport type OperationsListResponse = OperationListResult;\n\n/** Optional parameters. */\nexport interface OperationsListNextOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listNext operation. */\nexport type OperationsListNextResponse = OperationListResult;\n\n/** Optional parameters. */\nexport interface OperationsListNextNextOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listNextNext operation. */\nexport type OperationsListNextNextResponse = OperationListResult;\n\n/** Optional parameters. */\nexport interface DeploymentsDeleteAtScopeOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface DeploymentsCheckExistenceAtScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the checkExistenceAtScope operation. */\nexport type DeploymentsCheckExistenceAtScopeResponse = {\n body: boolean;\n};\n\n/** Optional parameters. */\nexport interface DeploymentsCreateOrUpdateAtScopeOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the createOrUpdateAtScope operation. */\nexport type DeploymentsCreateOrUpdateAtScopeResponse = DeploymentExtended;\n\n/** Optional parameters. */\nexport interface DeploymentsGetAtScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the getAtScope operation. */\nexport type DeploymentsGetAtScopeResponse = DeploymentExtended;\n\n/** Optional parameters. */\nexport interface DeploymentsCancelAtScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Optional parameters. */\nexport interface DeploymentsValidateAtScopeOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the validateAtScope operation. */\nexport type DeploymentsValidateAtScopeResponse = DeploymentValidateResult;\n\n/** Optional parameters. */\nexport interface DeploymentsExportTemplateAtScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the exportTemplateAtScope operation. */\nexport type DeploymentsExportTemplateAtScopeResponse = DeploymentExportResult;\n\n/** Optional parameters. */\nexport interface DeploymentsListAtScopeOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'. */\n filter?: string;\n /** The number of results to get. If null is passed, returns all deployments. */\n top?: number;\n}\n\n/** Contains response data for the listAtScope operation. */\nexport type DeploymentsListAtScopeResponse = DeploymentListResult;\n\n/** Optional parameters. */\nexport interface DeploymentsDeleteAtTenantScopeOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface DeploymentsCheckExistenceAtTenantScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the checkExistenceAtTenantScope operation. */\nexport type DeploymentsCheckExistenceAtTenantScopeResponse = {\n body: boolean;\n};\n\n/** Optional parameters. */\nexport interface DeploymentsCreateOrUpdateAtTenantScopeOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the createOrUpdateAtTenantScope operation. */\nexport type DeploymentsCreateOrUpdateAtTenantScopeResponse = DeploymentExtended;\n\n/** Optional parameters. */\nexport interface DeploymentsGetAtTenantScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the getAtTenantScope operation. */\nexport type DeploymentsGetAtTenantScopeResponse = DeploymentExtended;\n\n/** Optional parameters. */\nexport interface DeploymentsCancelAtTenantScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Optional parameters. */\nexport interface DeploymentsValidateAtTenantScopeOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the validateAtTenantScope operation. */\nexport type DeploymentsValidateAtTenantScopeResponse = DeploymentValidateResult;\n\n/** Optional parameters. */\nexport interface DeploymentsWhatIfAtTenantScopeOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the whatIfAtTenantScope operation. */\nexport type DeploymentsWhatIfAtTenantScopeResponse = WhatIfOperationResult;\n\n/** Optional parameters. */\nexport interface DeploymentsExportTemplateAtTenantScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the exportTemplateAtTenantScope operation. */\nexport type DeploymentsExportTemplateAtTenantScopeResponse = DeploymentExportResult;\n\n/** Optional parameters. */\nexport interface DeploymentsListAtTenantScopeOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'. */\n filter?: string;\n /** The number of results to get. If null is passed, returns all deployments. */\n top?: number;\n}\n\n/** Contains response data for the listAtTenantScope operation. */\nexport type DeploymentsListAtTenantScopeResponse = DeploymentListResult;\n\n/** Optional parameters. */\nexport interface DeploymentsDeleteAtManagementGroupScopeOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface DeploymentsCheckExistenceAtManagementGroupScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the checkExistenceAtManagementGroupScope operation. */\nexport type DeploymentsCheckExistenceAtManagementGroupScopeResponse = {\n body: boolean;\n};\n\n/** Optional parameters. */\nexport interface DeploymentsCreateOrUpdateAtManagementGroupScopeOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the createOrUpdateAtManagementGroupScope operation. */\nexport type DeploymentsCreateOrUpdateAtManagementGroupScopeResponse = DeploymentExtended;\n\n/** Optional parameters. */\nexport interface DeploymentsGetAtManagementGroupScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the getAtManagementGroupScope operation. */\nexport type DeploymentsGetAtManagementGroupScopeResponse = DeploymentExtended;\n\n/** Optional parameters. */\nexport interface DeploymentsCancelAtManagementGroupScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Optional parameters. */\nexport interface DeploymentsValidateAtManagementGroupScopeOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the validateAtManagementGroupScope operation. */\nexport type DeploymentsValidateAtManagementGroupScopeResponse = DeploymentValidateResult;\n\n/** Optional parameters. */\nexport interface DeploymentsWhatIfAtManagementGroupScopeOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the whatIfAtManagementGroupScope operation. */\nexport type DeploymentsWhatIfAtManagementGroupScopeResponse = WhatIfOperationResult;\n\n/** Optional parameters. */\nexport interface DeploymentsExportTemplateAtManagementGroupScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the exportTemplateAtManagementGroupScope operation. */\nexport type DeploymentsExportTemplateAtManagementGroupScopeResponse = DeploymentExportResult;\n\n/** Optional parameters. */\nexport interface DeploymentsListAtManagementGroupScopeOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'. */\n filter?: string;\n /** The number of results to get. If null is passed, returns all deployments. */\n top?: number;\n}\n\n/** Contains response data for the listAtManagementGroupScope operation. */\nexport type DeploymentsListAtManagementGroupScopeResponse = DeploymentListResult;\n\n/** Optional parameters. */\nexport interface DeploymentsDeleteAtSubscriptionScopeOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface DeploymentsCheckExistenceAtSubscriptionScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the checkExistenceAtSubscriptionScope operation. */\nexport type DeploymentsCheckExistenceAtSubscriptionScopeResponse = {\n body: boolean;\n};\n\n/** Optional parameters. */\nexport interface DeploymentsCreateOrUpdateAtSubscriptionScopeOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the createOrUpdateAtSubscriptionScope operation. */\nexport type DeploymentsCreateOrUpdateAtSubscriptionScopeResponse = DeploymentExtended;\n\n/** Optional parameters. */\nexport interface DeploymentsGetAtSubscriptionScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the getAtSubscriptionScope operation. */\nexport type DeploymentsGetAtSubscriptionScopeResponse = DeploymentExtended;\n\n/** Optional parameters. */\nexport interface DeploymentsCancelAtSubscriptionScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Optional parameters. */\nexport interface DeploymentsValidateAtSubscriptionScopeOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the validateAtSubscriptionScope operation. */\nexport type DeploymentsValidateAtSubscriptionScopeResponse = DeploymentValidateResult;\n\n/** Optional parameters. */\nexport interface DeploymentsWhatIfAtSubscriptionScopeOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the whatIfAtSubscriptionScope operation. */\nexport type DeploymentsWhatIfAtSubscriptionScopeResponse = WhatIfOperationResult;\n\n/** Optional parameters. */\nexport interface DeploymentsExportTemplateAtSubscriptionScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the exportTemplateAtSubscriptionScope operation. */\nexport type DeploymentsExportTemplateAtSubscriptionScopeResponse = DeploymentExportResult;\n\n/** Optional parameters. */\nexport interface DeploymentsListAtSubscriptionScopeOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'. */\n filter?: string;\n /** The number of results to get. If null is passed, returns all deployments. */\n top?: number;\n}\n\n/** Contains response data for the listAtSubscriptionScope operation. */\nexport type DeploymentsListAtSubscriptionScopeResponse = DeploymentListResult;\n\n/** Optional parameters. */\nexport interface DeploymentsDeleteOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface DeploymentsCheckExistenceOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the checkExistence operation. */\nexport type DeploymentsCheckExistenceResponse = {\n body: boolean;\n};\n\n/** Optional parameters. */\nexport interface DeploymentsCreateOrUpdateOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the createOrUpdate operation. */\nexport type DeploymentsCreateOrUpdateResponse = DeploymentExtended;\n\n/** Optional parameters. */\nexport interface DeploymentsGetOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the get operation. */\nexport type DeploymentsGetResponse = DeploymentExtended;\n\n/** Optional parameters. */\nexport interface DeploymentsCancelOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Optional parameters. */\nexport interface DeploymentsValidateOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the validate operation. */\nexport type DeploymentsValidateResponse = DeploymentValidateResult;\n\n/** Optional parameters. */\nexport interface DeploymentsWhatIfOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the whatIf operation. */\nexport type DeploymentsWhatIfResponse = WhatIfOperationResult;\n\n/** Optional parameters. */\nexport interface DeploymentsExportTemplateOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the exportTemplate operation. */\nexport type DeploymentsExportTemplateResponse = DeploymentExportResult;\n\n/** Optional parameters. */\nexport interface DeploymentsListByResourceGroupOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'. */\n filter?: string;\n /** The number of results to get. If null is passed, returns all deployments. */\n top?: number;\n}\n\n/** Contains response data for the listByResourceGroup operation. */\nexport type DeploymentsListByResourceGroupResponse = DeploymentListResult;\n\n/** Optional parameters. */\nexport interface DeploymentsCalculateTemplateHashOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the calculateTemplateHash operation. */\nexport type DeploymentsCalculateTemplateHashResponse = TemplateHashResult;\n\n/** Optional parameters. */\nexport interface DeploymentsListAtScopeNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'. */\n filter?: string;\n /** The number of results to get. If null is passed, returns all deployments. */\n top?: number;\n}\n\n/** Contains response data for the listAtScopeNext operation. */\nexport type DeploymentsListAtScopeNextResponse = DeploymentListResult;\n\n/** Optional parameters. */\nexport interface DeploymentsListAtTenantScopeNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'. */\n filter?: string;\n /** The number of results to get. If null is passed, returns all deployments. */\n top?: number;\n}\n\n/** Contains response data for the listAtTenantScopeNext operation. */\nexport type DeploymentsListAtTenantScopeNextResponse = DeploymentListResult;\n\n/** Optional parameters. */\nexport interface DeploymentsListAtManagementGroupScopeNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'. */\n filter?: string;\n /** The number of results to get. If null is passed, returns all deployments. */\n top?: number;\n}\n\n/** Contains response data for the listAtManagementGroupScopeNext operation. */\nexport type DeploymentsListAtManagementGroupScopeNextResponse = DeploymentListResult;\n\n/** Optional parameters. */\nexport interface DeploymentsListAtSubscriptionScopeNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'. */\n filter?: string;\n /** The number of results to get. If null is passed, returns all deployments. */\n top?: number;\n}\n\n/** Contains response data for the listAtSubscriptionScopeNext operation. */\nexport type DeploymentsListAtSubscriptionScopeNextResponse = DeploymentListResult;\n\n/** Optional parameters. */\nexport interface DeploymentsListByResourceGroupNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'. */\n filter?: string;\n /** The number of results to get. If null is passed, returns all deployments. */\n top?: number;\n}\n\n/** Contains response data for the listByResourceGroupNext operation. */\nexport type DeploymentsListByResourceGroupNextResponse = DeploymentListResult;\n\n/** Optional parameters. */\nexport interface DeploymentsListAtScopeNextNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'. */\n filter?: string;\n /** The number of results to get. If null is passed, returns all deployments. */\n top?: number;\n}\n\n/** Contains response data for the listAtScopeNextNext operation. */\nexport type DeploymentsListAtScopeNextNextResponse = DeploymentListResult;\n\n/** Optional parameters. */\nexport interface DeploymentsListAtTenantScopeNextNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'. */\n filter?: string;\n /** The number of results to get. If null is passed, returns all deployments. */\n top?: number;\n}\n\n/** Contains response data for the listAtTenantScopeNextNext operation. */\nexport type DeploymentsListAtTenantScopeNextNextResponse = DeploymentListResult;\n\n/** Optional parameters. */\nexport interface DeploymentsListAtManagementGroupScopeNextNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'. */\n filter?: string;\n /** The number of results to get. If null is passed, returns all deployments. */\n top?: number;\n}\n\n/** Contains response data for the listAtManagementGroupScopeNextNext operation. */\nexport type DeploymentsListAtManagementGroupScopeNextNextResponse = DeploymentListResult;\n\n/** Optional parameters. */\nexport interface DeploymentsListAtSubscriptionScopeNextNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'. */\n filter?: string;\n /** The number of results to get. If null is passed, returns all deployments. */\n top?: number;\n}\n\n/** Contains response data for the listAtSubscriptionScopeNextNext operation. */\nexport type DeploymentsListAtSubscriptionScopeNextNextResponse = DeploymentListResult;\n\n/** Optional parameters. */\nexport interface DeploymentsListByResourceGroupNextNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'. */\n filter?: string;\n /** The number of results to get. If null is passed, returns all deployments. */\n top?: number;\n}\n\n/** Contains response data for the listByResourceGroupNextNext operation. */\nexport type DeploymentsListByResourceGroupNextNextResponse = DeploymentListResult;\n\n/** Optional parameters. */\nexport interface ProvidersUnregisterOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the unregister operation. */\nexport type ProvidersUnregisterResponse = Provider;\n\n/** Optional parameters. */\nexport interface ProvidersRegisterAtManagementGroupScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Optional parameters. */\nexport interface ProvidersProviderPermissionsOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the providerPermissions operation. */\nexport type ProvidersProviderPermissionsResponse = ProviderPermissionListResult;\n\n/** Optional parameters. */\nexport interface ProvidersRegisterOptionalParams\n extends coreClient.OperationOptions {\n /** The third party consent for S2S. */\n properties?: ProviderRegistrationRequest;\n}\n\n/** Contains response data for the register operation. */\nexport type ProvidersRegisterResponse = Provider;\n\n/** Optional parameters. */\nexport interface ProvidersListOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. If null is passed returns all deployments. */\n top?: number;\n /** The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases. */\n expand?: string;\n}\n\n/** Contains response data for the list operation. */\nexport type ProvidersListResponse = ProviderListResult;\n\n/** Optional parameters. */\nexport interface ProvidersListAtTenantScopeOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. If null is passed returns all providers. */\n top?: number;\n /** The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases. */\n expand?: string;\n}\n\n/** Contains response data for the listAtTenantScope operation. */\nexport type ProvidersListAtTenantScopeResponse = ProviderListResult;\n\n/** Optional parameters. */\nexport interface ProvidersGetOptionalParams\n extends coreClient.OperationOptions {\n /** The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases. */\n expand?: string;\n}\n\n/** Contains response data for the get operation. */\nexport type ProvidersGetResponse = Provider;\n\n/** Optional parameters. */\nexport interface ProvidersGetAtTenantScopeOptionalParams\n extends coreClient.OperationOptions {\n /** The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases. */\n expand?: string;\n}\n\n/** Contains response data for the getAtTenantScope operation. */\nexport type ProvidersGetAtTenantScopeResponse = Provider;\n\n/** Optional parameters. */\nexport interface ProvidersListNextOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. If null is passed returns all deployments. */\n top?: number;\n /** The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases. */\n expand?: string;\n}\n\n/** Contains response data for the listNext operation. */\nexport type ProvidersListNextResponse = ProviderListResult;\n\n/** Optional parameters. */\nexport interface ProvidersListAtTenantScopeNextOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. If null is passed returns all providers. */\n top?: number;\n /** The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases. */\n expand?: string;\n}\n\n/** Contains response data for the listAtTenantScopeNext operation. */\nexport type ProvidersListAtTenantScopeNextResponse = ProviderListResult;\n\n/** Optional parameters. */\nexport interface ProvidersListNextNextOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. If null is passed returns all deployments. */\n top?: number;\n /** The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases. */\n expand?: string;\n}\n\n/** Contains response data for the listNextNext operation. */\nexport type ProvidersListNextNextResponse = ProviderListResult;\n\n/** Optional parameters. */\nexport interface ProvidersListAtTenantScopeNextNextOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. If null is passed returns all providers. */\n top?: number;\n /** The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases. */\n expand?: string;\n}\n\n/** Contains response data for the listAtTenantScopeNextNext operation. */\nexport type ProvidersListAtTenantScopeNextNextResponse = ProviderListResult;\n\n/** Optional parameters. */\nexport interface ProviderResourceTypesListOptionalParams\n extends coreClient.OperationOptions {\n /** The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases. */\n expand?: string;\n}\n\n/** Contains response data for the list operation. */\nexport type ProviderResourceTypesListResponse = ProviderResourceTypeListResult;\n\n/** Optional parameters. */\nexport interface ResourcesListByResourceGroupOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation.<br><br>The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.<br><br>For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'<br><br>You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.<br><br>For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)<br><br>You can link more than one substringof together by adding and/or operators.<br><br>You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.<br><br>You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId. */\n filter?: string;\n /** The number of results to return. If null is passed, returns all resources. */\n top?: number;\n /** Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`. */\n expand?: string;\n}\n\n/** Contains response data for the listByResourceGroup operation. */\nexport type ResourcesListByResourceGroupResponse = ResourceListResult;\n\n/** Optional parameters. */\nexport interface ResourcesMoveResourcesOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface ResourcesValidateMoveResourcesOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface ResourcesListOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation.<br><br>The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.<br><br>For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'<br><br>You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.<br><br>For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)<br><br>You can link more than one substringof together by adding and/or operators.<br><br>You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.<br><br>You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId. */\n filter?: string;\n /** The number of results to return. If null is passed, returns all resource groups. */\n top?: number;\n /** Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`. */\n expand?: string;\n}\n\n/** Contains response data for the list operation. */\nexport type ResourcesListResponse = ResourceListResult;\n\n/** Optional parameters. */\nexport interface ResourcesCheckExistenceOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the checkExistence operation. */\nexport type ResourcesCheckExistenceResponse = {\n body: boolean;\n};\n\n/** Optional parameters. */\nexport interface ResourcesDeleteOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface ResourcesCreateOrUpdateOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the createOrUpdate operation. */\nexport type ResourcesCreateOrUpdateResponse = GenericResource;\n\n/** Optional parameters. */\nexport interface ResourcesUpdateOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the update operation. */\nexport type ResourcesUpdateResponse = GenericResource;\n\n/** Optional parameters. */\nexport interface ResourcesGetOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the get operation. */\nexport type ResourcesGetResponse = GenericResource;\n\n/** Optional parameters. */\nexport interface ResourcesCheckExistenceByIdOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the checkExistenceById operation. */\nexport type ResourcesCheckExistenceByIdResponse = {\n body: boolean;\n};\n\n/** Optional parameters. */\nexport interface ResourcesDeleteByIdOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface ResourcesCreateOrUpdateByIdOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the createOrUpdateById operation. */\nexport type ResourcesCreateOrUpdateByIdResponse = GenericResource;\n\n/** Optional parameters. */\nexport interface ResourcesUpdateByIdOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the updateById operation. */\nexport type ResourcesUpdateByIdResponse = GenericResource;\n\n/** Optional parameters. */\nexport interface ResourcesGetByIdOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the getById operation. */\nexport type ResourcesGetByIdResponse = GenericResource;\n\n/** Optional parameters. */\nexport interface ResourcesListByResourceGroupNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation.<br><br>The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.<br><br>For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'<br><br>You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.<br><br>For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)<br><br>You can link more than one substringof together by adding and/or operators.<br><br>You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.<br><br>You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId. */\n filter?: string;\n /** The number of results to return. If null is passed, returns all resources. */\n top?: number;\n /** Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`. */\n expand?: string;\n}\n\n/** Contains response data for the listByResourceGroupNext operation. */\nexport type ResourcesListByResourceGroupNextResponse = ResourceListResult;\n\n/** Optional parameters. */\nexport interface ResourcesListNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation.<br><br>The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.<br><br>For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'<br><br>You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.<br><br>For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)<br><br>You can link more than one substringof together by adding and/or operators.<br><br>You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.<br><br>You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId. */\n filter?: string;\n /** The number of results to return. If null is passed, returns all resource groups. */\n top?: number;\n /** Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`. */\n expand?: string;\n}\n\n/** Contains response data for the listNext operation. */\nexport type ResourcesListNextResponse = ResourceListResult;\n\n/** Optional parameters. */\nexport interface ResourcesListByResourceGroupNextNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation.<br><br>The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.<br><br>For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'<br><br>You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.<br><br>For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)<br><br>You can link more than one substringof together by adding and/or operators.<br><br>You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.<br><br>You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId. */\n filter?: string;\n /** The number of results to return. If null is passed, returns all resources. */\n top?: number;\n /** Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`. */\n expand?: string;\n}\n\n/** Contains response data for the listByResourceGroupNextNext operation. */\nexport type ResourcesListByResourceGroupNextNextResponse = ResourceListResult;\n\n/** Optional parameters. */\nexport interface ResourcesListNextNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation.<br><br>The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.<br><br>For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'<br><br>You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.<br><br>For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)<br><br>You can link more than one substringof together by adding and/or operators.<br><br>You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.<br><br>You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId. */\n filter?: string;\n /** The number of results to return. If null is passed, returns all resource groups. */\n top?: number;\n /** Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`. */\n expand?: string;\n}\n\n/** Contains response data for the listNextNext operation. */\nexport type ResourcesListNextNextResponse = ResourceListResult;\n\n/** Optional parameters. */\nexport interface ResourceGroupsCheckExistenceOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the checkExistence operation. */\nexport type ResourceGroupsCheckExistenceResponse = {\n body: boolean;\n};\n\n/** Optional parameters. */\nexport interface ResourceGroupsCreateOrUpdateOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the createOrUpdate operation. */\nexport type ResourceGroupsCreateOrUpdateResponse = ResourceGroup;\n\n/** Optional parameters. */\nexport interface ResourceGroupsDeleteOptionalParams\n extends coreClient.OperationOptions {\n /** The resource types you want to force delete. Currently, only the following is supported: forceDeletionTypes=Microsoft.Compute/virtualMachines,Microsoft.Compute/virtualMachineScaleSets */\n forceDeletionTypes?: string;\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface ResourceGroupsGetOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the get operation. */\nexport type ResourceGroupsGetResponse = ResourceGroup;\n\n/** Optional parameters. */\nexport interface ResourceGroupsUpdateOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the update operation. */\nexport type ResourceGroupsUpdateResponse = ResourceGroup;\n\n/** Optional parameters. */\nexport interface ResourceGroupsExportTemplateOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the exportTemplate operation. */\nexport type ResourceGroupsExportTemplateResponse = ResourceGroupExportResult;\n\n/** Optional parameters. */\nexport interface ResourceGroupsListOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation.<br><br>You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1' */\n filter?: string;\n /** The number of results to return. If null is passed, returns all resource groups. */\n top?: number;\n}\n\n/** Contains response data for the list operation. */\nexport type ResourceGroupsListResponse = ResourceGroupListResult;\n\n/** Optional parameters. */\nexport interface ResourceGroupsListNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation.<br><br>You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1' */\n filter?: string;\n /** The number of results to return. If null is passed, returns all resource groups. */\n top?: number;\n}\n\n/** Contains response data for the listNext operation. */\nexport type ResourceGroupsListNextResponse = ResourceGroupListResult;\n\n/** Optional parameters. */\nexport interface ResourceGroupsListNextNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation.<br><br>You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1' */\n filter?: string;\n /** The number of results to return. If null is passed, returns all resource groups. */\n top?: number;\n}\n\n/** Contains response data for the listNextNext operation. */\nexport type ResourceGroupsListNextNextResponse = ResourceGroupListResult;\n\n/** Optional parameters. */\nexport interface TagsOperationsDeleteValueOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Optional parameters. */\nexport interface TagsOperationsCreateOrUpdateValueOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the createOrUpdateValue operation. */\nexport type TagsOperationsCreateOrUpdateValueResponse = TagValue;\n\n/** Optional parameters. */\nexport interface TagsOperationsCreateOrUpdateOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the createOrUpdate operation. */\nexport type TagsOperationsCreateOrUpdateResponse = TagDetails;\n\n/** Optional parameters. */\nexport interface TagsOperationsDeleteOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Optional parameters. */\nexport interface TagsOperationsListOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the list operation. */\nexport type TagsOperationsListResponse = TagsListResult;\n\n/** Optional parameters. */\nexport interface TagsOperationsCreateOrUpdateAtScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the createOrUpdateAtScope operation. */\nexport type TagsOperationsCreateOrUpdateAtScopeResponse = TagsResource;\n\n/** Optional parameters. */\nexport interface TagsOperationsUpdateAtScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the updateAtScope operation. */\nexport type TagsOperationsUpdateAtScopeResponse = TagsResource;\n\n/** Optional parameters. */\nexport interface TagsOperationsGetAtScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the getAtScope operation. */\nexport type TagsOperationsGetAtScopeResponse = TagsResource;\n\n/** Optional parameters. */\nexport interface TagsOperationsDeleteAtScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Optional parameters. */\nexport interface TagsOperationsListNextOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listNext operation. */\nexport type TagsOperationsListNextResponse = TagsListResult;\n\n/** Optional parameters. */\nexport interface TagsOperationsListNextNextOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listNextNext operation. */\nexport type TagsOperationsListNextNextResponse = TagsListResult;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsGetAtScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the getAtScope operation. */\nexport type DeploymentOperationsGetAtScopeResponse = DeploymentOperation;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsListAtScopeOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. */\n top?: number;\n}\n\n/** Contains response data for the listAtScope operation. */\nexport type DeploymentOperationsListAtScopeResponse = DeploymentOperationsListResult;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsGetAtTenantScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the getAtTenantScope operation. */\nexport type DeploymentOperationsGetAtTenantScopeResponse = DeploymentOperation;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsListAtTenantScopeOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. */\n top?: number;\n}\n\n/** Contains response data for the listAtTenantScope operation. */\nexport type DeploymentOperationsListAtTenantScopeResponse = DeploymentOperationsListResult;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsGetAtManagementGroupScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the getAtManagementGroupScope operation. */\nexport type DeploymentOperationsGetAtManagementGroupScopeResponse = DeploymentOperation;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsListAtManagementGroupScopeOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. */\n top?: number;\n}\n\n/** Contains response data for the listAtManagementGroupScope operation. */\nexport type DeploymentOperationsListAtManagementGroupScopeResponse = DeploymentOperationsListResult;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsGetAtSubscriptionScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the getAtSubscriptionScope operation. */\nexport type DeploymentOperationsGetAtSubscriptionScopeResponse = DeploymentOperation;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsListAtSubscriptionScopeOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. */\n top?: number;\n}\n\n/** Contains response data for the listAtSubscriptionScope operation. */\nexport type DeploymentOperationsListAtSubscriptionScopeResponse = DeploymentOperationsListResult;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsGetOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the get operation. */\nexport type DeploymentOperationsGetResponse = DeploymentOperation;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsListOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. */\n top?: number;\n}\n\n/** Contains response data for the list operation. */\nexport type DeploymentOperationsListResponse = DeploymentOperationsListResult;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsListAtScopeNextOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. */\n top?: number;\n}\n\n/** Contains response data for the listAtScopeNext operation. */\nexport type DeploymentOperationsListAtScopeNextResponse = DeploymentOperationsListResult;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsListAtTenantScopeNextOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. */\n top?: number;\n}\n\n/** Contains response data for the listAtTenantScopeNext operation. */\nexport type DeploymentOperationsListAtTenantScopeNextResponse = DeploymentOperationsListResult;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsListAtManagementGroupScopeNextOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. */\n top?: number;\n}\n\n/** Contains response data for the listAtManagementGroupScopeNext operation. */\nexport type DeploymentOperationsListAtManagementGroupScopeNextResponse = DeploymentOperationsListResult;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsListAtSubscriptionScopeNextOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. */\n top?: number;\n}\n\n/** Contains response data for the listAtSubscriptionScopeNext operation. */\nexport type DeploymentOperationsListAtSubscriptionScopeNextResponse = DeploymentOperationsListResult;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsListNextOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. */\n top?: number;\n}\n\n/** Contains response data for the listNext operation. */\nexport type DeploymentOperationsListNextResponse = DeploymentOperationsListResult;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsListAtScopeNextNextOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. */\n top?: number;\n}\n\n/** Contains response data for the listAtScopeNextNext operation. */\nexport type DeploymentOperationsListAtScopeNextNextResponse = DeploymentOperationsListResult;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsListAtTenantScopeNextNextOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. */\n top?: number;\n}\n\n/** Contains response data for the listAtTenantScopeNextNext operation. */\nexport type DeploymentOperationsListAtTenantScopeNextNextResponse = DeploymentOperationsListResult;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsListAtManagementGroupScopeNextNextOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. */\n top?: number;\n}\n\n/** Contains response data for the listAtManagementGroupScopeNextNext operation. */\nexport type DeploymentOperationsListAtManagementGroupScopeNextNextResponse = DeploymentOperationsListResult;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsListAtSubscriptionScopeNextNextOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. */\n top?: number;\n}\n\n/** Contains response data for the listAtSubscriptionScopeNextNext operation. */\nexport type DeploymentOperationsListAtSubscriptionScopeNextNextResponse = DeploymentOperationsListResult;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsListNextNextOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. */\n top?: number;\n}\n\n/** Contains response data for the listNextNext operation. */\nexport type DeploymentOperationsListNextNextResponse = DeploymentOperationsListResult;\n\n/** Optional parameters. */\nexport interface ResourceManagementClientOptionalParams\n extends coreClient.ServiceClientOptions {\n /** server parameter */\n $host?: string;\n /** Api Version */\n apiVersion?: string;\n /** Overrides client endpoint. */\n endpoint?: string;\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport * as coreClient from \"@azure/core-client\";\n\nexport const OperationListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"OperationListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"Operation\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const Operation: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Operation\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n type: {\n name: \"String\"\n }\n },\n display: {\n serializedName: \"display\",\n type: {\n name: \"Composite\",\n className: \"OperationDisplay\"\n }\n }\n }\n }\n};\n\nexport const OperationDisplay: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"OperationDisplay\",\n modelProperties: {\n provider: {\n serializedName: \"provider\",\n type: {\n name: \"String\"\n }\n },\n resource: {\n serializedName: \"resource\",\n type: {\n name: \"String\"\n }\n },\n operation: {\n serializedName: \"operation\",\n type: {\n name: \"String\"\n }\n },\n description: {\n serializedName: \"description\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const CloudError: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"CloudError\",\n modelProperties: {\n error: {\n serializedName: \"error\",\n type: {\n name: \"Composite\",\n className: \"ErrorResponse\"\n }\n }\n }\n }\n};\n\nexport const ErrorResponse: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ErrorResponse\",\n modelProperties: {\n code: {\n serializedName: \"code\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n message: {\n serializedName: \"message\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n target: {\n serializedName: \"target\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n details: {\n serializedName: \"details\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ErrorResponse\"\n }\n }\n }\n },\n additionalInfo: {\n serializedName: \"additionalInfo\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ErrorAdditionalInfo\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const ErrorAdditionalInfo: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ErrorAdditionalInfo\",\n modelProperties: {\n type: {\n serializedName: \"type\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n info: {\n serializedName: \"info\",\n readOnly: true,\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } }\n }\n }\n }\n }\n};\n\nexport const Deployment: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Deployment\",\n modelProperties: {\n location: {\n serializedName: \"location\",\n type: {\n name: \"String\"\n }\n },\n properties: {\n serializedName: \"properties\",\n type: {\n name: \"Composite\",\n className: \"DeploymentProperties\"\n }\n },\n tags: {\n serializedName: \"tags\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n }\n }\n }\n};\n\nexport const DeploymentProperties: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentProperties\",\n modelProperties: {\n template: {\n serializedName: \"template\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } }\n }\n },\n templateLink: {\n serializedName: \"templateLink\",\n type: {\n name: \"Composite\",\n className: \"TemplateLink\"\n }\n },\n parameters: {\n serializedName: \"parameters\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } }\n }\n },\n parametersLink: {\n serializedName: \"parametersLink\",\n type: {\n name: \"Composite\",\n className: \"ParametersLink\"\n }\n },\n mode: {\n serializedName: \"mode\",\n required: true,\n type: {\n name: \"Enum\",\n allowedValues: [\"Incremental\", \"Complete\"]\n }\n },\n debugSetting: {\n serializedName: \"debugSetting\",\n type: {\n name: \"Composite\",\n className: \"DebugSetting\"\n }\n },\n onErrorDeployment: {\n serializedName: \"onErrorDeployment\",\n type: {\n name: \"Composite\",\n className: \"OnErrorDeployment\"\n }\n },\n expressionEvaluationOptions: {\n serializedName: \"expressionEvaluationOptions\",\n type: {\n name: \"Composite\",\n className: \"ExpressionEvaluationOptions\"\n }\n }\n }\n }\n};\n\nexport const TemplateLink: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"TemplateLink\",\n modelProperties: {\n uri: {\n serializedName: \"uri\",\n type: {\n name: \"String\"\n }\n },\n id: {\n serializedName: \"id\",\n type: {\n name: \"String\"\n }\n },\n relativePath: {\n serializedName: \"relativePath\",\n type: {\n name: \"String\"\n }\n },\n contentVersion: {\n serializedName: \"contentVersion\",\n type: {\n name: \"String\"\n }\n },\n queryString: {\n serializedName: \"queryString\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ParametersLink: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ParametersLink\",\n modelProperties: {\n uri: {\n serializedName: \"uri\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n contentVersion: {\n serializedName: \"contentVersion\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const DebugSetting: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DebugSetting\",\n modelProperties: {\n detailLevel: {\n serializedName: \"detailLevel\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const OnErrorDeployment: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"OnErrorDeployment\",\n modelProperties: {\n type: {\n serializedName: \"type\",\n type: {\n name: \"Enum\",\n allowedValues: [\"LastSuccessful\", \"SpecificDeployment\"]\n }\n },\n deploymentName: {\n serializedName: \"deploymentName\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ExpressionEvaluationOptions: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ExpressionEvaluationOptions\",\n modelProperties: {\n scope: {\n serializedName: \"scope\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const DeploymentExtended: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentExtended\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n name: {\n serializedName: \"name\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n location: {\n serializedName: \"location\",\n type: {\n name: \"String\"\n }\n },\n properties: {\n serializedName: \"properties\",\n type: {\n name: \"Composite\",\n className: \"DeploymentPropertiesExtended\"\n }\n },\n tags: {\n serializedName: \"tags\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n }\n }\n }\n};\n\nexport const DeploymentPropertiesExtended: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentPropertiesExtended\",\n modelProperties: {\n provisioningState: {\n serializedName: \"provisioningState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n correlationId: {\n serializedName: \"correlationId\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n timestamp: {\n serializedName: \"timestamp\",\n readOnly: true,\n type: {\n name: \"DateTime\"\n }\n },\n duration: {\n serializedName: \"duration\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n outputs: {\n serializedName: \"outputs\",\n readOnly: true,\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } }\n }\n },\n providers: {\n serializedName: \"providers\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"Provider\"\n }\n }\n }\n },\n dependencies: {\n serializedName: \"dependencies\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"Dependency\"\n }\n }\n }\n },\n templateLink: {\n serializedName: \"templateLink\",\n type: {\n name: \"Composite\",\n className: \"TemplateLink\"\n }\n },\n parameters: {\n serializedName: \"parameters\",\n readOnly: true,\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } }\n }\n },\n parametersLink: {\n serializedName: \"parametersLink\",\n type: {\n name: \"Composite\",\n className: \"ParametersLink\"\n }\n },\n mode: {\n serializedName: \"mode\",\n readOnly: true,\n type: {\n name: \"Enum\",\n allowedValues: [\"Incremental\", \"Complete\"]\n }\n },\n debugSetting: {\n serializedName: \"debugSetting\",\n type: {\n name: \"Composite\",\n className: \"DebugSetting\"\n }\n },\n onErrorDeployment: {\n serializedName: \"onErrorDeployment\",\n type: {\n name: \"Composite\",\n className: \"OnErrorDeploymentExtended\"\n }\n },\n templateHash: {\n serializedName: \"templateHash\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n outputResources: {\n serializedName: \"outputResources\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ResourceReference\"\n }\n }\n }\n },\n validatedResources: {\n serializedName: \"validatedResources\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ResourceReference\"\n }\n }\n }\n },\n error: {\n serializedName: \"error\",\n type: {\n name: \"Composite\",\n className: \"ErrorResponse\"\n }\n }\n }\n }\n};\n\nexport const Provider: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Provider\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n namespace: {\n serializedName: \"namespace\",\n type: {\n name: \"String\"\n }\n },\n registrationState: {\n serializedName: \"registrationState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n registrationPolicy: {\n serializedName: \"registrationPolicy\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n resourceTypes: {\n serializedName: \"resourceTypes\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ProviderResourceType\"\n }\n }\n }\n },\n providerAuthorizationConsentState: {\n serializedName: \"providerAuthorizationConsentState\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ProviderResourceType: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ProviderResourceType\",\n modelProperties: {\n resourceType: {\n serializedName: \"resourceType\",\n type: {\n name: \"String\"\n }\n },\n locations: {\n serializedName: \"locations\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n },\n locationMappings: {\n serializedName: \"locationMappings\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ProviderExtendedLocation\"\n }\n }\n }\n },\n aliases: {\n serializedName: \"aliases\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"Alias\"\n }\n }\n }\n },\n apiVersions: {\n serializedName: \"apiVersions\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n },\n defaultApiVersion: {\n serializedName: \"defaultApiVersion\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n apiProfiles: {\n serializedName: \"apiProfiles\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ApiProfile\"\n }\n }\n }\n },\n capabilities: {\n serializedName: \"capabilities\",\n type: {\n name: \"String\"\n }\n },\n properties: {\n serializedName: \"properties\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n }\n }\n }\n};\n\nexport const ProviderExtendedLocation: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ProviderExtendedLocation\",\n modelProperties: {\n location: {\n serializedName: \"location\",\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n type: {\n name: \"String\"\n }\n },\n extendedLocations: {\n serializedName: \"extendedLocations\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const Alias: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Alias\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n type: {\n name: \"String\"\n }\n },\n paths: {\n serializedName: \"paths\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"AliasPath\"\n }\n }\n }\n },\n type: {\n serializedName: \"type\",\n type: {\n name: \"Enum\",\n allowedValues: [\"NotSpecified\", \"PlainText\", \"Mask\"]\n }\n },\n defaultPath: {\n serializedName: \"defaultPath\",\n type: {\n name: \"String\"\n }\n },\n defaultPattern: {\n serializedName: \"defaultPattern\",\n type: {\n name: \"Composite\",\n className: \"AliasPattern\"\n }\n },\n defaultMetadata: {\n serializedName: \"defaultMetadata\",\n type: {\n name: \"Composite\",\n className: \"AliasPathMetadata\"\n }\n }\n }\n }\n};\n\nexport const AliasPath: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"AliasPath\",\n modelProperties: {\n path: {\n serializedName: \"path\",\n type: {\n name: \"String\"\n }\n },\n apiVersions: {\n serializedName: \"apiVersions\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n },\n pattern: {\n serializedName: \"pattern\",\n type: {\n name: \"Composite\",\n className: \"AliasPattern\"\n }\n },\n metadata: {\n serializedName: \"metadata\",\n type: {\n name: \"Composite\",\n className: \"AliasPathMetadata\"\n }\n }\n }\n }\n};\n\nexport const AliasPattern: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"AliasPattern\",\n modelProperties: {\n phrase: {\n serializedName: \"phrase\",\n type: {\n name: \"String\"\n }\n },\n variable: {\n serializedName: \"variable\",\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n type: {\n name: \"Enum\",\n allowedValues: [\"NotSpecified\", \"Extract\"]\n }\n }\n }\n }\n};\n\nexport const AliasPathMetadata: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"AliasPathMetadata\",\n modelProperties: {\n type: {\n serializedName: \"type\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n attributes: {\n serializedName: \"attributes\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ApiProfile: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ApiProfile\",\n modelProperties: {\n profileVersion: {\n serializedName: \"profileVersion\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n apiVersion: {\n serializedName: \"apiVersion\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const Dependency: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Dependency\",\n modelProperties: {\n dependsOn: {\n serializedName: \"dependsOn\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"BasicDependency\"\n }\n }\n }\n },\n id: {\n serializedName: \"id\",\n type: {\n name: \"String\"\n }\n },\n resourceType: {\n serializedName: \"resourceType\",\n type: {\n name: \"String\"\n }\n },\n resourceName: {\n serializedName: \"resourceName\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const BasicDependency: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"BasicDependency\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n type: {\n name: \"String\"\n }\n },\n resourceType: {\n serializedName: \"resourceType\",\n type: {\n name: \"String\"\n }\n },\n resourceName: {\n serializedName: \"resourceName\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const OnErrorDeploymentExtended: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"OnErrorDeploymentExtended\",\n modelProperties: {\n provisioningState: {\n serializedName: \"provisioningState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n type: {\n name: \"Enum\",\n allowedValues: [\"LastSuccessful\", \"SpecificDeployment\"]\n }\n },\n deploymentName: {\n serializedName: \"deploymentName\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ResourceReference: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ResourceReference\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const DeploymentValidateResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentValidateResult\",\n modelProperties: {\n error: {\n serializedName: \"error\",\n type: {\n name: \"Composite\",\n className: \"ErrorResponse\"\n }\n },\n properties: {\n serializedName: \"properties\",\n type: {\n name: \"Composite\",\n className: \"DeploymentPropertiesExtended\"\n }\n }\n }\n }\n};\n\nexport const DeploymentExportResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentExportResult\",\n modelProperties: {\n template: {\n serializedName: \"template\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } }\n }\n }\n }\n }\n};\n\nexport const DeploymentListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"DeploymentExtended\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ScopedDeployment: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ScopedDeployment\",\n modelProperties: {\n location: {\n serializedName: \"location\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n properties: {\n serializedName: \"properties\",\n type: {\n name: \"Composite\",\n className: \"DeploymentProperties\"\n }\n },\n tags: {\n serializedName: \"tags\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n }\n }\n }\n};\n\nexport const ScopedDeploymentWhatIf: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ScopedDeploymentWhatIf\",\n modelProperties: {\n location: {\n serializedName: \"location\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n properties: {\n serializedName: \"properties\",\n type: {\n name: \"Composite\",\n className: \"DeploymentWhatIfProperties\"\n }\n }\n }\n }\n};\n\nexport const DeploymentWhatIfSettings: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentWhatIfSettings\",\n modelProperties: {\n resultFormat: {\n serializedName: \"resultFormat\",\n type: {\n name: \"Enum\",\n allowedValues: [\"ResourceIdOnly\", \"FullResourcePayloads\"]\n }\n }\n }\n }\n};\n\nexport const WhatIfOperationResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"WhatIfOperationResult\",\n modelProperties: {\n status: {\n serializedName: \"status\",\n type: {\n name: \"String\"\n }\n },\n error: {\n serializedName: \"error\",\n type: {\n name: \"Composite\",\n className: \"ErrorResponse\"\n }\n },\n changes: {\n serializedName: \"properties.changes\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"WhatIfChange\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const WhatIfChange: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"WhatIfChange\",\n modelProperties: {\n resourceId: {\n serializedName: \"resourceId\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n changeType: {\n serializedName: \"changeType\",\n required: true,\n type: {\n name: \"Enum\",\n allowedValues: [\n \"Create\",\n \"Delete\",\n \"Ignore\",\n \"Deploy\",\n \"NoChange\",\n \"Modify\",\n \"Unsupported\"\n ]\n }\n },\n unsupportedReason: {\n serializedName: \"unsupportedReason\",\n type: {\n name: \"String\"\n }\n },\n before: {\n serializedName: \"before\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } }\n }\n },\n after: {\n serializedName: \"after\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } }\n }\n },\n delta: {\n serializedName: \"delta\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"WhatIfPropertyChange\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const WhatIfPropertyChange: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"WhatIfPropertyChange\",\n modelProperties: {\n path: {\n serializedName: \"path\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n propertyChangeType: {\n serializedName: \"propertyChangeType\",\n required: true,\n type: {\n name: \"Enum\",\n allowedValues: [\"Create\", \"Delete\", \"Modify\", \"Array\", \"NoEffect\"]\n }\n },\n before: {\n serializedName: \"before\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } }\n }\n },\n after: {\n serializedName: \"after\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } }\n }\n },\n children: {\n serializedName: \"children\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"WhatIfPropertyChange\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const DeploymentWhatIf: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentWhatIf\",\n modelProperties: {\n location: {\n serializedName: \"location\",\n type: {\n name: \"String\"\n }\n },\n properties: {\n serializedName: \"properties\",\n type: {\n name: \"Composite\",\n className: \"DeploymentWhatIfProperties\"\n }\n }\n }\n }\n};\n\nexport const ProviderPermissionListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ProviderPermissionListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ProviderPermission\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ProviderPermission: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ProviderPermission\",\n modelProperties: {\n applicationId: {\n serializedName: \"applicationId\",\n type: {\n name: \"String\"\n }\n },\n roleDefinition: {\n serializedName: \"roleDefinition\",\n type: {\n name: \"Composite\",\n className: \"RoleDefinition\"\n }\n },\n managedByRoleDefinition: {\n serializedName: \"managedByRoleDefinition\",\n type: {\n name: \"Composite\",\n className: \"RoleDefinition\"\n }\n },\n providerAuthorizationConsentState: {\n serializedName: \"providerAuthorizationConsentState\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const RoleDefinition: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"RoleDefinition\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n type: {\n name: \"String\"\n }\n },\n name: {\n serializedName: \"name\",\n type: {\n name: \"String\"\n }\n },\n isServiceRole: {\n serializedName: \"isServiceRole\",\n type: {\n name: \"Boolean\"\n }\n },\n permissions: {\n serializedName: \"permissions\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"Permission\"\n }\n }\n }\n },\n scopes: {\n serializedName: \"scopes\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const Permission: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Permission\",\n modelProperties: {\n actions: {\n serializedName: \"actions\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n },\n notActions: {\n serializedName: \"notActions\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n },\n dataActions: {\n serializedName: \"dataActions\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n },\n notDataActions: {\n serializedName: \"notDataActions\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const ProviderRegistrationRequest: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ProviderRegistrationRequest\",\n modelProperties: {\n thirdPartyProviderConsent: {\n serializedName: \"thirdPartyProviderConsent\",\n type: {\n name: \"Composite\",\n className: \"ProviderConsentDefinition\"\n }\n }\n }\n }\n};\n\nexport const ProviderConsentDefinition: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ProviderConsentDefinition\",\n modelProperties: {\n consentToAuthorization: {\n serializedName: \"consentToAuthorization\",\n type: {\n name: \"Boolean\"\n }\n }\n }\n }\n};\n\nexport const ProviderListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ProviderListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"Provider\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ProviderResourceTypeListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ProviderResourceTypeListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ProviderResourceType\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ResourceListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ResourceListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"GenericResourceExpanded\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const Resource: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Resource\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n name: {\n serializedName: \"name\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n location: {\n serializedName: \"location\",\n type: {\n name: \"String\"\n }\n },\n extendedLocation: {\n serializedName: \"extendedLocation\",\n type: {\n name: \"Composite\",\n className: \"ExtendedLocation\"\n }\n },\n tags: {\n serializedName: \"tags\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n }\n }\n }\n};\n\nexport const ExtendedLocation: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ExtendedLocation\",\n modelProperties: {\n type: {\n serializedName: \"type\",\n type: {\n name: \"String\"\n }\n },\n name: {\n serializedName: \"name\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const Plan: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Plan\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n type: {\n name: \"String\"\n }\n },\n publisher: {\n serializedName: \"publisher\",\n type: {\n name: \"String\"\n }\n },\n product: {\n serializedName: \"product\",\n type: {\n name: \"String\"\n }\n },\n promotionCode: {\n serializedName: \"promotionCode\",\n type: {\n name: \"String\"\n }\n },\n version: {\n serializedName: \"version\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const Sku: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Sku\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n type: {\n name: \"String\"\n }\n },\n tier: {\n serializedName: \"tier\",\n type: {\n name: \"String\"\n }\n },\n size: {\n serializedName: \"size\",\n type: {\n name: \"String\"\n }\n },\n family: {\n serializedName: \"family\",\n type: {\n name: \"String\"\n }\n },\n model: {\n serializedName: \"model\",\n type: {\n name: \"String\"\n }\n },\n capacity: {\n serializedName: \"capacity\",\n type: {\n name: \"Number\"\n }\n }\n }\n }\n};\n\nexport const Identity: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Identity\",\n modelProperties: {\n principalId: {\n serializedName: \"principalId\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n tenantId: {\n serializedName: \"tenantId\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n type: {\n name: \"Enum\",\n allowedValues: [\n \"SystemAssigned\",\n \"UserAssigned\",\n \"SystemAssigned, UserAssigned\",\n \"None\"\n ]\n }\n },\n userAssignedIdentities: {\n serializedName: \"userAssignedIdentities\",\n type: {\n name: \"Dictionary\",\n value: {\n type: {\n name: \"Composite\",\n className: \"IdentityUserAssignedIdentitiesValue\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const IdentityUserAssignedIdentitiesValue: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"IdentityUserAssignedIdentitiesValue\",\n modelProperties: {\n principalId: {\n serializedName: \"principalId\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n clientId: {\n serializedName: \"clientId\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ResourceGroup: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ResourceGroup\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n name: {\n serializedName: \"name\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n properties: {\n serializedName: \"properties\",\n type: {\n name: \"Composite\",\n className: \"ResourceGroupProperties\"\n }\n },\n location: {\n serializedName: \"location\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n managedBy: {\n serializedName: \"managedBy\",\n type: {\n name: \"String\"\n }\n },\n tags: {\n serializedName: \"tags\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n }\n }\n }\n};\n\nexport const ResourceGroupProperties: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ResourceGroupProperties\",\n modelProperties: {\n provisioningState: {\n serializedName: \"provisioningState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ResourceGroupPatchable: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ResourceGroupPatchable\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n type: {\n name: \"String\"\n }\n },\n properties: {\n serializedName: \"properties\",\n type: {\n name: \"Composite\",\n className: \"ResourceGroupProperties\"\n }\n },\n managedBy: {\n serializedName: \"managedBy\",\n type: {\n name: \"String\"\n }\n },\n tags: {\n serializedName: \"tags\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n }\n }\n }\n};\n\nexport const ExportTemplateRequest: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ExportTemplateRequest\",\n modelProperties: {\n resources: {\n serializedName: \"resources\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n },\n options: {\n serializedName: \"options\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ResourceGroupExportResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ResourceGroupExportResult\",\n modelProperties: {\n template: {\n serializedName: \"template\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } }\n }\n },\n error: {\n serializedName: \"error\",\n type: {\n name: \"Composite\",\n className: \"ErrorResponse\"\n }\n }\n }\n }\n};\n\nexport const ResourceGroupListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ResourceGroupListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ResourceGroup\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ResourcesMoveInfo: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ResourcesMoveInfo\",\n modelProperties: {\n resources: {\n serializedName: \"resources\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n },\n targetResourceGroup: {\n serializedName: \"targetResourceGroup\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const TagValue: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"TagValue\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n tagValue: {\n serializedName: \"tagValue\",\n type: {\n name: \"String\"\n }\n },\n count: {\n serializedName: \"count\",\n type: {\n name: \"Composite\",\n className: \"TagCount\"\n }\n }\n }\n }\n};\n\nexport const TagCount: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"TagCount\",\n modelProperties: {\n type: {\n serializedName: \"type\",\n type: {\n name: \"String\"\n }\n },\n value: {\n serializedName: \"value\",\n type: {\n name: \"Number\"\n }\n }\n }\n }\n};\n\nexport const TagDetails: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"TagDetails\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n tagName: {\n serializedName: \"tagName\",\n type: {\n name: \"String\"\n }\n },\n count: {\n serializedName: \"count\",\n type: {\n name: \"Composite\",\n className: \"TagCount\"\n }\n },\n values: {\n serializedName: \"values\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"TagValue\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const TagsListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"TagsListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"TagDetails\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const DeploymentOperation: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentOperation\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n operationId: {\n serializedName: \"operationId\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n properties: {\n serializedName: \"properties\",\n type: {\n name: \"Composite\",\n className: \"DeploymentOperationProperties\"\n }\n }\n }\n }\n};\n\nexport const DeploymentOperationProperties: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentOperationProperties\",\n modelProperties: {\n provisioningOperation: {\n serializedName: \"provisioningOperation\",\n readOnly: true,\n type: {\n name: \"Enum\",\n allowedValues: [\n \"NotSpecified\",\n \"Create\",\n \"Delete\",\n \"Waiting\",\n \"AzureAsyncOperationWaiting\",\n \"ResourceCacheWaiting\",\n \"Action\",\n \"Read\",\n \"EvaluateDeploymentOutput\",\n \"DeploymentCleanup\"\n ]\n }\n },\n provisioningState: {\n serializedName: \"provisioningState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n timestamp: {\n serializedName: \"timestamp\",\n readOnly: true,\n type: {\n name: \"DateTime\"\n }\n },\n duration: {\n serializedName: \"duration\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n serviceRequestId: {\n serializedName: \"serviceRequestId\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n statusCode: {\n serializedName: \"statusCode\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n statusMessage: {\n serializedName: \"statusMessage\",\n type: {\n name: \"Composite\",\n className: \"StatusMessage\"\n }\n },\n targetResource: {\n serializedName: \"targetResource\",\n type: {\n name: \"Composite\",\n className: \"TargetResource\"\n }\n },\n request: {\n serializedName: \"request\",\n type: {\n name: \"Composite\",\n className: \"HttpMessage\"\n }\n },\n response: {\n serializedName: \"response\",\n type: {\n name: \"Composite\",\n className: \"HttpMessage\"\n }\n }\n }\n }\n};\n\nexport const StatusMessage: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"StatusMessage\",\n modelProperties: {\n status: {\n serializedName: \"status\",\n type: {\n name: \"String\"\n }\n },\n error: {\n serializedName: \"error\",\n type: {\n name: \"Composite\",\n className: \"ErrorResponse\"\n }\n }\n }\n }\n};\n\nexport const TargetResource: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"TargetResource\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n type: {\n name: \"String\"\n }\n },\n resourceName: {\n serializedName: \"resourceName\",\n type: {\n name: \"String\"\n }\n },\n resourceType: {\n serializedName: \"resourceType\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const HttpMessage: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"HttpMessage\",\n modelProperties: {\n content: {\n serializedName: \"content\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } }\n }\n }\n }\n }\n};\n\nexport const DeploymentOperationsListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentOperationsListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"DeploymentOperation\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const TemplateHashResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"TemplateHashResult\",\n modelProperties: {\n minifiedTemplate: {\n serializedName: \"minifiedTemplate\",\n type: {\n name: \"String\"\n }\n },\n templateHash: {\n serializedName: \"templateHash\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const TagsResource: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"TagsResource\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n name: {\n serializedName: \"name\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n properties: {\n serializedName: \"properties\",\n type: {\n name: \"Composite\",\n className: \"Tags\"\n }\n }\n }\n }\n};\n\nexport const Tags: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Tags\",\n modelProperties: {\n tags: {\n serializedName: \"tags\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n }\n }\n }\n};\n\nexport const TagsPatchResource: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"TagsPatchResource\",\n modelProperties: {\n operation: {\n serializedName: \"operation\",\n type: {\n name: \"String\"\n }\n },\n properties: {\n serializedName: \"properties\",\n type: {\n name: \"Composite\",\n className: \"Tags\"\n }\n }\n }\n }\n};\n\nexport const DeploymentExtendedFilter: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentExtendedFilter\",\n modelProperties: {\n provisioningState: {\n serializedName: \"provisioningState\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const GenericResourceFilter: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"GenericResourceFilter\",\n modelProperties: {\n resourceType: {\n serializedName: \"resourceType\",\n type: {\n name: \"String\"\n }\n },\n tagname: {\n serializedName: \"tagname\",\n type: {\n name: \"String\"\n }\n },\n tagvalue: {\n serializedName: \"tagvalue\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ResourceGroupFilter: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ResourceGroupFilter\",\n modelProperties: {\n tagName: {\n serializedName: \"tagName\",\n type: {\n name: \"String\"\n }\n },\n tagValue: {\n serializedName: \"tagValue\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ResourceProviderOperationDisplayProperties: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ResourceProviderOperationDisplayProperties\",\n modelProperties: {\n publisher: {\n serializedName: \"publisher\",\n type: {\n name: \"String\"\n }\n },\n provider: {\n serializedName: \"provider\",\n type: {\n name: \"String\"\n }\n },\n resource: {\n serializedName: \"resource\",\n type: {\n name: \"String\"\n }\n },\n operation: {\n serializedName: \"operation\",\n type: {\n name: \"String\"\n }\n },\n description: {\n serializedName: \"description\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const SubResource: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SubResource\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const DeploymentWhatIfProperties: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentWhatIfProperties\",\n modelProperties: {\n ...DeploymentProperties.type.modelProperties,\n whatIfSettings: {\n serializedName: \"whatIfSettings\",\n type: {\n name: \"Composite\",\n className: \"DeploymentWhatIfSettings\"\n }\n }\n }\n }\n};\n\nexport const GenericResource: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"GenericResource\",\n modelProperties: {\n ...Resource.type.modelProperties,\n plan: {\n serializedName: \"plan\",\n type: {\n name: \"Composite\",\n className: \"Plan\"\n }\n },\n properties: {\n serializedName: \"properties\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } }\n }\n },\n kind: {\n constraints: {\n Pattern: new RegExp(\"^[-\\\\w\\\\._,\\\\(\\\\)]+$\")\n },\n serializedName: \"kind\",\n type: {\n name: \"String\"\n }\n },\n managedBy: {\n serializedName: \"managedBy\",\n type: {\n name: \"String\"\n }\n },\n sku: {\n serializedName: \"sku\",\n type: {\n name: \"Composite\",\n className: \"Sku\"\n }\n },\n identity: {\n serializedName: \"identity\",\n type: {\n name: \"Composite\",\n className: \"Identity\"\n }\n }\n }\n }\n};\n\nexport const GenericResourceExpanded: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"GenericResourceExpanded\",\n modelProperties: {\n ...GenericResource.type.modelProperties,\n createdTime: {\n serializedName: \"createdTime\",\n readOnly: true,\n type: {\n name: \"DateTime\"\n }\n },\n changedTime: {\n serializedName: \"changedTime\",\n readOnly: true,\n type: {\n name: \"DateTime\"\n }\n },\n provisioningState: {\n serializedName: \"provisioningState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const DeploymentsWhatIfAtTenantScopeHeaders: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentsWhatIfAtTenantScopeHeaders\",\n modelProperties: {\n location: {\n serializedName: \"location\",\n type: {\n name: \"String\"\n }\n },\n retryAfter: {\n serializedName: \"retry-after\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const DeploymentsWhatIfAtManagementGroupScopeHeaders: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentsWhatIfAtManagementGroupScopeHeaders\",\n modelProperties: {\n location: {\n serializedName: \"location\",\n type: {\n name: \"String\"\n }\n },\n retryAfter: {\n serializedName: \"retry-after\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const DeploymentsWhatIfAtSubscriptionScopeHeaders: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentsWhatIfAtSubscriptionScopeHeaders\",\n modelProperties: {\n location: {\n serializedName: \"location\",\n type: {\n name: \"String\"\n }\n },\n retryAfter: {\n serializedName: \"retry-after\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const DeploymentsWhatIfHeaders: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentsWhatIfHeaders\",\n modelProperties: {\n location: {\n serializedName: \"location\",\n type: {\n name: \"String\"\n }\n },\n retryAfter: {\n serializedName: \"retry-after\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport {\n OperationParameter,\n OperationURLParameter,\n OperationQueryParameter\n} from \"@azure/core-client\";\nimport {\n Deployment as DeploymentMapper,\n ScopedDeployment as ScopedDeploymentMapper,\n ScopedDeploymentWhatIf as ScopedDeploymentWhatIfMapper,\n DeploymentWhatIf as DeploymentWhatIfMapper,\n ProviderRegistrationRequest as ProviderRegistrationRequestMapper,\n ResourcesMoveInfo as ResourcesMoveInfoMapper,\n GenericResource as GenericResourceMapper,\n ResourceGroup as ResourceGroupMapper,\n ResourceGroupPatchable as ResourceGroupPatchableMapper,\n ExportTemplateRequest as ExportTemplateRequestMapper,\n TagsResource as TagsResourceMapper,\n TagsPatchResource as TagsPatchResourceMapper\n} from \"../models/mappers\";\n\nexport const accept: OperationParameter = {\n parameterPath: \"accept\",\n mapper: {\n defaultValue: \"application/json\",\n isConstant: true,\n serializedName: \"Accept\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const $host: OperationURLParameter = {\n parameterPath: \"$host\",\n mapper: {\n serializedName: \"$host\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n skipEncoding: true\n};\n\nexport const apiVersion: OperationQueryParameter = {\n parameterPath: \"apiVersion\",\n mapper: {\n defaultValue: \"2021-04-01\",\n isConstant: true,\n serializedName: \"api-version\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const nextLink: OperationURLParameter = {\n parameterPath: \"nextLink\",\n mapper: {\n serializedName: \"nextLink\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n skipEncoding: true\n};\n\nexport const scope: OperationURLParameter = {\n parameterPath: \"scope\",\n mapper: {\n serializedName: \"scope\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n skipEncoding: true\n};\n\nexport const deploymentName: OperationURLParameter = {\n parameterPath: \"deploymentName\",\n mapper: {\n constraints: {\n Pattern: new RegExp(\"^[-\\\\w\\\\._\\\\(\\\\)]+$\"),\n MaxLength: 64,\n MinLength: 1\n },\n serializedName: \"deploymentName\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const contentType: OperationParameter = {\n parameterPath: [\"options\", \"contentType\"],\n mapper: {\n defaultValue: \"application/json\",\n isConstant: true,\n serializedName: \"Content-Type\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const parameters: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: DeploymentMapper\n};\n\nexport const filter: OperationQueryParameter = {\n parameterPath: [\"options\", \"filter\"],\n mapper: {\n serializedName: \"$filter\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const top: OperationQueryParameter = {\n parameterPath: [\"options\", \"top\"],\n mapper: {\n serializedName: \"$top\",\n type: {\n name: \"Number\"\n }\n }\n};\n\nexport const parameters1: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: ScopedDeploymentMapper\n};\n\nexport const parameters2: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: ScopedDeploymentWhatIfMapper\n};\n\nexport const groupId: OperationURLParameter = {\n parameterPath: \"groupId\",\n mapper: {\n constraints: {\n MaxLength: 90,\n MinLength: 1\n },\n serializedName: \"groupId\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const subscriptionId: OperationURLParameter = {\n parameterPath: \"subscriptionId\",\n mapper: {\n serializedName: \"subscriptionId\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const parameters3: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: DeploymentWhatIfMapper\n};\n\nexport const resourceGroupName: OperationURLParameter = {\n parameterPath: \"resourceGroupName\",\n mapper: {\n constraints: {\n Pattern: new RegExp(\"^[-\\\\w\\\\._\\\\(\\\\)]+$\"),\n MaxLength: 90,\n MinLength: 1\n },\n serializedName: \"resourceGroupName\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const template: OperationParameter = {\n parameterPath: \"template\",\n mapper: {\n serializedName: \"template\",\n required: true,\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } }\n }\n }\n};\n\nexport const resourceProviderNamespace: OperationURLParameter = {\n parameterPath: \"resourceProviderNamespace\",\n mapper: {\n serializedName: \"resourceProviderNamespace\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const properties: OperationParameter = {\n parameterPath: [\"options\", \"properties\"],\n mapper: ProviderRegistrationRequestMapper\n};\n\nexport const expand: OperationQueryParameter = {\n parameterPath: [\"options\", \"expand\"],\n mapper: {\n serializedName: \"$expand\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const parameters4: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: ResourcesMoveInfoMapper\n};\n\nexport const sourceResourceGroupName: OperationURLParameter = {\n parameterPath: \"sourceResourceGroupName\",\n mapper: {\n constraints: {\n Pattern: new RegExp(\"^[-\\\\w\\\\._\\\\(\\\\)]+$\"),\n MaxLength: 90,\n MinLength: 1\n },\n serializedName: \"sourceResourceGroupName\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const parentResourcePath: OperationURLParameter = {\n parameterPath: \"parentResourcePath\",\n mapper: {\n serializedName: \"parentResourcePath\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n skipEncoding: true\n};\n\nexport const resourceType: OperationURLParameter = {\n parameterPath: \"resourceType\",\n mapper: {\n serializedName: \"resourceType\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n skipEncoding: true\n};\n\nexport const resourceName: OperationURLParameter = {\n parameterPath: \"resourceName\",\n mapper: {\n serializedName: \"resourceName\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const apiVersion1: OperationQueryParameter = {\n parameterPath: \"apiVersion\",\n mapper: {\n serializedName: \"api-version\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const parameters5: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: GenericResourceMapper\n};\n\nexport const resourceId: OperationURLParameter = {\n parameterPath: \"resourceId\",\n mapper: {\n serializedName: \"resourceId\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n skipEncoding: true\n};\n\nexport const parameters6: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: ResourceGroupMapper\n};\n\nexport const forceDeletionTypes: OperationQueryParameter = {\n parameterPath: [\"options\", \"forceDeletionTypes\"],\n mapper: {\n serializedName: \"forceDeletionTypes\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const parameters7: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: ResourceGroupPatchableMapper\n};\n\nexport const parameters8: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: ExportTemplateRequestMapper\n};\n\nexport const resourceGroupName1: OperationURLParameter = {\n parameterPath: \"resourceGroupName\",\n mapper: {\n constraints: {\n MaxLength: 90,\n MinLength: 1\n },\n serializedName: \"resourceGroupName\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const tagName: OperationURLParameter = {\n parameterPath: \"tagName\",\n mapper: {\n serializedName: \"tagName\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const tagValue: OperationURLParameter = {\n parameterPath: \"tagValue\",\n mapper: {\n serializedName: \"tagValue\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const parameters9: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: TagsResourceMapper\n};\n\nexport const parameters10: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: TagsPatchResourceMapper\n};\n\nexport const operationId: OperationURLParameter = {\n parameterPath: \"operationId\",\n mapper: {\n serializedName: \"operationId\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport \"@azure/core-paging\";\nimport { PagedAsyncIterableIterator } from \"@azure/core-paging\";\nimport { Operations } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { ResourceManagementClientContext } from \"../resourceManagementClientContext\";\nimport {\n Operation,\n OperationsListNextOptionalParams,\n OperationsListOptionalParams,\n OperationsListNextNextOptionalParams,\n OperationsListResponse,\n OperationsListNextResponse,\n OperationsListNextNextResponse\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class representing a Operations. */\nexport class OperationsImpl implements Operations {\n private readonly client: ResourceManagementClientContext;\n\n /**\n * Initialize a new instance of the class Operations class.\n * @param client Reference to the service client\n */\n constructor(client: ResourceManagementClientContext) {\n this.client = client;\n }\n\n /**\n * Lists all of the available Microsoft.Resources REST API operations.\n * @param options The options parameters.\n */\n public list(\n options?: OperationsListOptionalParams\n ): PagedAsyncIterableIterator<Operation> {\n const iter = this.listPagingAll(options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listPagingPage(options);\n }\n };\n }\n\n private async *listPagingPage(\n options?: OperationsListOptionalParams\n ): AsyncIterableIterator<Operation[]> {\n let result = await this._list(options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listNext(continuationToken, options);\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listPagingAll(\n options?: OperationsListOptionalParams\n ): AsyncIterableIterator<Operation> {\n for await (const page of this.listPagingPage(options)) {\n yield* page;\n }\n }\n\n /**\n * ListNext\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n public listNext(\n nextLink: string,\n options?: OperationsListNextOptionalParams\n ): PagedAsyncIterableIterator<Operation> {\n const iter = this.listNextPagingAll(nextLink, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listNextPagingPage(nextLink, options);\n }\n };\n }\n\n private async *listNextPagingPage(\n nextLink: string,\n options?: OperationsListNextOptionalParams\n ): AsyncIterableIterator<Operation[]> {\n let result = await this._listNext(nextLink, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listNextNext(continuationToken, options);\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listNextPagingAll(\n nextLink: string,\n options?: OperationsListNextOptionalParams\n ): AsyncIterableIterator<Operation> {\n for await (const page of this.listNextPagingPage(nextLink, options)) {\n yield* page;\n }\n }\n\n /**\n * Lists all of the available Microsoft.Resources REST API operations.\n * @param options The options parameters.\n */\n private _list(\n options?: OperationsListOptionalParams\n ): Promise<OperationsListResponse> {\n return this.client.sendOperationRequest({ options }, listOperationSpec);\n }\n\n /**\n * ListNext\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n private _listNext(\n nextLink: string,\n options?: OperationsListNextOptionalParams\n ): Promise<OperationsListNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listNextOperationSpec\n );\n }\n\n /**\n * ListNextNext\n * @param nextLink The nextLink from the previous successful call to the ListNext method.\n * @param options The options parameters.\n */\n private _listNextNext(\n nextLink: string,\n options?: OperationsListNextNextOptionalParams\n ): Promise<OperationsListNextNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listNextNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst listOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Resources/operations\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.OperationListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.OperationListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.nextLink],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.OperationListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.nextLink],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\n// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { LroConfig, RawResponse } from \"./models\";\n\n/**\n * Detects where the continuation token is and returns it. Notice that azure-asyncoperation\n * must be checked first before the other location headers because there are scenarios\n * where both azure-asyncoperation and location could be present in the same response but\n * azure-asyncoperation should be the one to use for polling.\n */\nexport function getPollingUrl(\n rawResponse: RawResponse,\n defaultPath: string\n): string {\n return (\n getAzureAsyncOperation(rawResponse) ??\n getLocation(rawResponse) ??\n getOperationLocation(rawResponse) ??\n defaultPath\n );\n}\n\nfunction getLocation(rawResponse: RawResponse): string | undefined {\n return rawResponse.headers[\"location\"];\n}\n\nfunction getOperationLocation(rawResponse: RawResponse): string | undefined {\n return rawResponse.headers[\"operation-location\"];\n}\n\nfunction getAzureAsyncOperation(rawResponse: RawResponse): string | undefined {\n return rawResponse.headers[\"azure-asyncoperation\"];\n}\n\nexport function inferLroMode(\n requestPath: string,\n requestMethod: string,\n rawResponse: RawResponse\n): LroConfig {\n if (getAzureAsyncOperation(rawResponse) !== undefined) {\n return {\n mode: \"AzureAsync\",\n resourceLocation:\n requestMethod === \"PUT\"\n ? requestPath\n : requestMethod === \"POST\"\n ? getLocation(rawResponse)\n : undefined\n };\n } else if (\n getLocation(rawResponse) !== undefined ||\n getOperationLocation(rawResponse) !== undefined\n ) {\n return {\n mode: \"Location\"\n };\n } else if ([\"PUT\", \"PATCH\"].includes(requestMethod)) {\n return {\n mode: \"Body\"\n };\n }\n return {};\n}\n\nexport class RestError extends Error {\n public statusCode?: number;\n constructor(message: string, statusCode: number) {\n super(message);\n this.name = \"RestError\";\n this.statusCode = statusCode;\n\n Object.setPrototypeOf(this, RestError.prototype);\n }\n}\n\nexport function isUnexpectedInitialResponse(rawResponse: RawResponse): boolean {\n const code = rawResponse.statusCode;\n if (![203, 204, 202, 201, 200, 500].includes(code)) {\n throw new RestError(\n `Received unexpected HTTP status code ${code} in the initial response. This may indicate a server issue.`,\n code\n );\n }\n return false;\n}\n\nexport function isUnexpectedPollingResponse(rawResponse: RawResponse): boolean {\n const code = rawResponse.statusCode;\n if (![202, 201, 200, 500].includes(code)) {\n throw new RestError(\n `Received unexpected HTTP status code ${code} while polling. This may indicate a server issue.`,\n code\n );\n }\n return false;\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\n// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { PollOperationState } from \"@azure/core-lro\";\n\n/**\n * Options for the LRO poller.\n */\nexport interface LroEngineOptions {\n /**\n * Defines how much time the poller is going to wait before making a new request to the service.\n */\n intervalInMs?: number;\n /**\n * A serialized poller which can be used to resume an existing paused Long-Running-Operation.\n */\n resumeFrom?: string;\n}\n\nexport const successStates = [\"succeeded\"];\nexport const failureStates = [\"failed\", \"canceled\", \"cancelled\"];\n/**\n * The LRO states that signal that the LRO has completed.\n */\nexport const terminalStates = successStates.concat(failureStates);\n\n/**\n * The potential location of the result of the LRO if specified by the LRO extension in the swagger.\n */\nexport type LroResourceLocationConfig =\n | \"azure-async-operation\"\n | \"location\"\n | \"original-uri\";\n\n/**\n * The type of a LRO response body. This is just a convenience type for checking the status of the operation.\n */\n\nexport interface LroBody extends Record<string, unknown> {\n /** The status of the operation. */\n status?: string;\n /** The state of the provisioning process */\n provisioningState?: string;\n /** The properties of the provisioning process */\n properties?: { provisioningState?: string } & Record<string, unknown>;\n}\n\n/**\n * Simple type of the raw response.\n */\nexport interface RawResponse {\n /** The HTTP status code */\n statusCode: number;\n /** A HttpHeaders collection in the response represented as a simple JSON object where all header names have been normalized to be lower-case. */\n headers: {\n [headerName: string]: string;\n };\n /** The parsed response body */\n body?: unknown;\n}\n\n/**\n * The type of the response of a LRO.\n */\nexport interface LroResponse<T> {\n /** The flattened response */\n flatResponse: T;\n /** The raw response */\n rawResponse: RawResponse;\n}\n\n/** The type of which LRO implementation being followed by a specific API. */\nexport type LroMode = \"AzureAsync\" | \"Location\" | \"Body\";\n\n/**\n * The configuration of a LRO to determine how to perform polling and checking whether the operation has completed.\n */\nexport interface LroConfig {\n /** The LRO mode */\n mode?: LroMode;\n /** The path of a provisioned resource */\n resourceLocation?: string;\n}\n\n/**\n * Type of a polling operation state that can actually be resumed.\n */\nexport type ResumablePollOperationState<T> = PollOperationState<T> & {\n initialRawResponse?: RawResponse;\n config?: LroConfig;\n pollingURL?: string;\n};\n\nexport interface PollerConfig {\n intervalInMs: number;\n}\n\n/**\n * The type of a terminal state of an LRO.\n */\nexport interface LroTerminalState<T> extends LroResponse<T> {\n /**\n * Whether the operation has finished.\n */\n done: true;\n}\n\n/**\n * The type of an in-progress state of an LRO.\n */\nexport interface LroInProgressState<T> extends LroResponse<T> {\n /**\n * Whether the operation has finished.\n */\n done: false;\n /**\n * The request to be sent next if it is different from the standard polling one.\n * Notice that it will disregard any polling URLs provided to it.\n */\n next?: () => Promise<LroStatus<T>>;\n}\n\n/**\n * The type of an LRO state which is a tagged union of terminal and in-progress states.\n */\nexport type LroStatus<T> = LroTerminalState<T> | LroInProgressState<T>;\n\n/**\n * The type of the getLROStatusFromResponse method. It takes the response as input and returns along the response whether the operation has finished.\n */\nexport type GetLroStatusFromResponse<T> = (\n rawResponse: RawResponse,\n flatResponse: T\n) => LroStatus<T>;\n\n/**\n * Description of a long running operation.\n */\nexport interface LongRunningOperation<T> {\n /**\n * The request path.\n */\n requestPath: string;\n /**\n * The HTTP request method.\n */\n requestMethod: string;\n /**\n * A function that can be used to send initial request to the service.\n */\n sendInitialRequest: (\n initializeState: (\n rawResponse: RawResponse,\n flatResponse: unknown\n ) => boolean\n ) => Promise<LroResponse<T>>;\n /**\n * A function that can be used to poll for the current status of a long running operation.\n */\n sendPollRequest: (config: LroConfig, path: string) => Promise<LroStatus<T>>;\n /**\n * A function that can be used to retrieve the provisioned azure resource.\n */\n retrieveAzureAsyncResource: (path?: string) => Promise<LroResponse<T>>;\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\n// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport {\n failureStates,\n LroResourceLocationConfig,\n LongRunningOperation,\n LroBody,\n LroResponse,\n LroStatus,\n RawResponse,\n successStates\n} from \"./models\";\nimport { isUnexpectedPollingResponse } from \"./requestUtils\";\n\nfunction getResponseStatus(rawResponse: RawResponse): string {\n const { status } = (rawResponse.body as LroBody) ?? {};\n return status?.toLowerCase() ?? \"succeeded\";\n}\n\nfunction isAzureAsyncPollingDone(rawResponse: RawResponse): boolean {\n const state = getResponseStatus(rawResponse);\n if (\n isUnexpectedPollingResponse(rawResponse) ||\n failureStates.includes(state)\n ) {\n throw new Error(`Operation status: ${state}`);\n }\n return successStates.includes(state);\n}\n\nasync function sendFinalRequest<TResult>(\n lro: LongRunningOperation<TResult>,\n lroResourceLocationConfig?: LroResourceLocationConfig,\n resourceLocation?: string\n): Promise<LroResponse<TResult> | undefined> {\n switch (lroResourceLocationConfig) {\n case \"original-uri\":\n return lro.retrieveAzureAsyncResource();\n case \"azure-async-operation\":\n return Promise.resolve(undefined);\n case \"location\":\n default:\n return lro.retrieveAzureAsyncResource(resourceLocation);\n }\n}\n\nexport function processAzureAsyncOperationResult<TResult>(\n lro: LongRunningOperation<TResult>,\n resourceLocation?: string,\n lroResourceLocationConfig?: LroResourceLocationConfig\n): (rawResponse: RawResponse, flatResponse: TResult) => LroStatus<TResult> {\n return (\n rawResponse: RawResponse,\n flatResponse: TResult\n ): LroStatus<TResult> => {\n if (isAzureAsyncPollingDone(rawResponse)) {\n if (resourceLocation === undefined) {\n return { rawResponse, flatResponse, done: true };\n } else {\n return {\n rawResponse,\n flatResponse,\n done: false,\n next: async () => {\n const finalResponse = await sendFinalRequest(\n lro,\n lroResourceLocationConfig,\n resourceLocation\n );\n return {\n ...(finalResponse ?? {\n rawResponse,\n flatResponse\n }),\n done: true\n };\n }\n };\n }\n }\n return {\n rawResponse,\n flatResponse,\n done: false\n };\n };\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\n// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport {\n failureStates,\n LroBody,\n LroStatus,\n RawResponse,\n successStates\n} from \"./models\";\nimport { isUnexpectedPollingResponse } from \"./requestUtils\";\n\nfunction getProvisioningState(rawResponse: RawResponse): string {\n const { properties, provisioningState } = (rawResponse.body as LroBody) ?? {};\n const state: string | undefined =\n properties?.provisioningState ?? provisioningState;\n return state?.toLowerCase() ?? \"succeeded\";\n}\n\nexport function isBodyPollingDone(rawResponse: RawResponse): boolean {\n const state = getProvisioningState(rawResponse);\n if (\n isUnexpectedPollingResponse(rawResponse) ||\n failureStates.includes(state)\n ) {\n throw new Error(\n `The long running operation has failed. The provisioning state: ${state}.`\n );\n }\n return successStates.includes(state);\n}\n\n/**\n * Creates a polling strategy based on BodyPolling which uses the provisioning state\n * from the result to determine the current operation state\n */\nexport function processBodyPollingOperationResult<TResult>(\n rawResponse: RawResponse,\n flatResponse: TResult\n): LroStatus<TResult> {\n return {\n rawResponse,\n flatResponse,\n done: isBodyPollingDone(rawResponse)\n };\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\n// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { LroStatus, RawResponse } from \"./models\";\nimport { isUnexpectedPollingResponse } from \"./requestUtils\";\n\nfunction isLocationPollingDone(rawResponse: RawResponse): boolean {\n return (\n !isUnexpectedPollingResponse(rawResponse) && rawResponse.statusCode !== 202\n );\n}\n\nexport function processLocationPollingOperationResult<TResult>(\n rawResponse: RawResponse,\n flatResponse: TResult\n): LroStatus<TResult> {\n return {\n rawResponse,\n flatResponse,\n done: isLocationPollingDone(rawResponse)\n };\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\n// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { LroStatus, RawResponse } from \"./models\";\n\nexport function processPassthroughOperationResult<TResult>(\n rawResponse: RawResponse,\n flatResponse: TResult\n): LroStatus<TResult> {\n return {\n rawResponse,\n flatResponse,\n done: true\n };\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\n// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { processAzureAsyncOperationResult } from \"./azureAsyncPolling\";\nimport {\n isBodyPollingDone,\n processBodyPollingOperationResult\n} from \"./bodyPolling\";\nimport { processLocationPollingOperationResult } from \"./locationPolling\";\nimport {\n LroResourceLocationConfig,\n GetLroStatusFromResponse,\n LongRunningOperation,\n LroConfig,\n LroStatus,\n PollerConfig,\n RawResponse,\n ResumablePollOperationState\n} from \"./models\";\nimport { processPassthroughOperationResult } from \"./passthrough\";\nimport {\n getPollingUrl,\n inferLroMode,\n isUnexpectedInitialResponse\n} from \"./requestUtils\";\n\n/**\n * creates a stepping function that maps an LRO state to another.\n */\nexport function createGetLroStatusFromResponse<TResult>(\n lroPrimitives: LongRunningOperation<TResult>,\n config: LroConfig,\n lroResourceLocationConfig?: LroResourceLocationConfig\n): GetLroStatusFromResponse<TResult> {\n switch (config.mode) {\n case \"AzureAsync\": {\n return processAzureAsyncOperationResult(\n lroPrimitives,\n config.resourceLocation,\n lroResourceLocationConfig\n );\n }\n case \"Location\": {\n return processLocationPollingOperationResult;\n }\n case \"Body\": {\n return processBodyPollingOperationResult;\n }\n default: {\n return processPassthroughOperationResult;\n }\n }\n}\n\n/**\n * Creates a polling operation that returns a LRO state.\n */\nexport function createPollForLROStatus<TResult>(\n lroPrimitives: LongRunningOperation<TResult>,\n config: LroConfig\n): (\n pollingURL: string,\n pollerConfig: PollerConfig\n) => Promise<LroStatus<TResult>> {\n return async (\n path: string,\n pollerConfig: PollerConfig\n ): Promise<LroStatus<TResult>> => {\n const response = await lroPrimitives.sendPollRequest(config, path);\n const retryAfter: string | undefined =\n response.rawResponse.headers[\"retry-after\"];\n if (retryAfter !== undefined) {\n const retryAfterInMs = parseInt(retryAfter);\n pollerConfig.intervalInMs = isNaN(retryAfterInMs)\n ? calculatePollingIntervalFromDate(\n new Date(retryAfter),\n pollerConfig.intervalInMs\n )\n : retryAfterInMs;\n }\n return response;\n };\n}\n\nfunction calculatePollingIntervalFromDate(\n retryAfterDate: Date,\n defaultIntervalInMs: number\n): number {\n const timeNow = Math.floor(new Date().getTime());\n const retryAfterTime = retryAfterDate.getTime();\n if (timeNow < retryAfterTime) {\n return retryAfterTime - timeNow;\n }\n return defaultIntervalInMs;\n}\n\n/**\n * Creates a callback to be used to initialize the polling operation state.\n * @param state - of the polling operation\n * @param operationSpec - of the LRO\n * @param callback - callback to be called when the operation is done\n * @returns callback that initializes the state of the polling operation\n */\nexport function createInitializeState<TResult>(\n state: ResumablePollOperationState<TResult>,\n requestPath: string,\n requestMethod: string\n): (rawResponse: RawResponse, flatResponse: unknown) => boolean {\n return (rawResponse: RawResponse, flatResponse: unknown) => {\n if (isUnexpectedInitialResponse(rawResponse)) return true;\n state.initialRawResponse = rawResponse;\n state.isStarted = true;\n state.pollingURL = getPollingUrl(state.initialRawResponse, requestPath);\n state.config = inferLroMode(\n requestPath,\n requestMethod,\n state.initialRawResponse\n );\n /** short circuit polling if body polling is done in the initial request */\n if (\n state.config.mode === undefined ||\n (state.config.mode === \"Body\" &&\n isBodyPollingDone(state.initialRawResponse))\n ) {\n state.result = flatResponse as TResult;\n state.isCompleted = true;\n }\n return Boolean(state.isCompleted);\n };\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\n// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { AbortSignalLike } from \"@azure/abort-controller\";\nimport { PollOperationState, PollOperation } from \"@azure/core-lro\";\nimport {\n PollerConfig,\n ResumablePollOperationState,\n LongRunningOperation,\n LroStatus\n} from \"./models\";\nimport { getPollingUrl } from \"./requestUtils\";\nimport { createInitializeState, createPollForLROStatus } from \"./stateMachine\";\n\nexport class GenericPollOperation<\n TResult,\n TState extends PollOperationState<TResult>\n> implements PollOperation<TState, TResult> {\n private getLROStatusFromResponse?: (\n pollingURL: string,\n pollerConfig: PollerConfig\n ) => Promise<LroStatus<TResult>>;\n private pollerConfig?: PollerConfig;\n constructor(\n public state: TState & ResumablePollOperationState<TResult>,\n private lro: LongRunningOperation<TResult>\n ) {}\n\n public setPollerConfig(pollerConfig: PollerConfig): void {\n this.pollerConfig = pollerConfig;\n }\n\n /**\n * General update function for LROPoller, the general process is as follows\n * 1. Check initial operation result to determine the strategy to use\n * - Strategies: Location, Azure-AsyncOperation, Original Uri\n * 2. Check if the operation result has a terminal state\n * - Terminal state will be determined by each strategy\n * 2.1 If it is terminal state Check if a final GET request is required, if so\n * send final GET request and return result from operation. If no final GET\n * is required, just return the result from operation.\n * - Determining what to call for final request is responsibility of each strategy\n * 2.2 If it is not terminal state, call the polling operation and go to step 1\n * - Determining what to call for polling is responsibility of each strategy\n * - Strategies will always use the latest URI for polling if provided otherwise\n * the last known one\n */\n async update(options?: {\n abortSignal?: AbortSignalLike | undefined;\n fireProgress?: ((state: TState) => void) | undefined;\n }): Promise<PollOperation<TState, TResult>> {\n const state = this.state;\n if (!state.isStarted) {\n const initializeState = createInitializeState(\n state,\n this.lro.requestPath,\n this.lro.requestMethod\n );\n await this.lro.sendInitialRequest(initializeState);\n }\n\n if (!state.isCompleted) {\n if (this.getLROStatusFromResponse === undefined) {\n if (state.config === undefined) {\n throw new Error(\n \"Bad state: LRO mode is undefined. Please check if the serialized state is well-formed.\"\n );\n }\n this.getLROStatusFromResponse = createPollForLROStatus(\n this.lro,\n state.config\n );\n }\n if (state.pollingURL === undefined) {\n throw new Error(\n \"Bad state: polling URL is undefined. Please check if the serialized state is well-formed.\"\n );\n }\n const currentState = await this.getLROStatusFromResponse(\n state.pollingURL,\n this.pollerConfig!\n );\n if (currentState.done) {\n state.result = currentState.flatResponse;\n state.isCompleted = true;\n } else {\n this.getLROStatusFromResponse =\n currentState.next ?? this.getLROStatusFromResponse;\n state.pollingURL = getPollingUrl(\n currentState.rawResponse,\n state.pollingURL\n );\n }\n }\n options?.fireProgress?.(state);\n return this;\n }\n\n async cancel(): Promise<PollOperation<TState, TResult>> {\n this.state.isCancelled = true;\n return this;\n }\n\n /**\n * Serializes the Poller operation.\n */\n public toString(): string {\n return JSON.stringify({\n state: this.state\n });\n }\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\n// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { Poller, PollOperationState } from \"@azure/core-lro\";\nimport {\n LongRunningOperation,\n LroEngineOptions,\n ResumablePollOperationState\n} from \"./models\";\nimport { GenericPollOperation } from \"./operation\";\n\n/**\n * The LRO Engine, a class that performs polling.\n */\nexport class LroEngine<\n TResult,\n TState extends PollOperationState<TResult>\n> extends Poller<TState, TResult> {\n private intervalInMs: number;\n\n constructor(lro: LongRunningOperation<TResult>, options?: LroEngineOptions) {\n const { intervalInMs = 2000, resumeFrom } = options || {};\n function deserializeState(\n resumeFrom: string\n ): TState & ResumablePollOperationState<TResult> {\n try {\n return JSON.parse(resumeFrom).state;\n } catch (e) {\n throw new Error(\n `LroEngine: Unable to deserialize state: ${resumeFrom}`\n );\n }\n }\n const state: TState & ResumablePollOperationState<TResult> = resumeFrom\n ? deserializeState(resumeFrom)\n : ({} as any);\n\n const operation = new GenericPollOperation(state, lro);\n super(operation);\n\n this.intervalInMs = intervalInMs;\n operation.setPollerConfig(this as any);\n }\n\n /**\n * The method used by the poller to wait before attempting to update its operation.\n */\n delay(): Promise<void> {\n return new Promise((resolve) =>\n setTimeout(() => resolve(), this.intervalInMs)\n );\n }\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\n// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport {\n OperationArguments,\n OperationSpec,\n OperationResponseMap,\n FullOperationResponse\n} from \"@azure/core-client\";\nimport {\n LroResourceLocationConfig,\n GetLroStatusFromResponse,\n LongRunningOperation,\n LroConfig,\n LroMode,\n LroResponse,\n LroStatus,\n createGetLroStatusFromResponse,\n RawResponse\n} from \"./lro\";\n\nexport const successStates = [\"succeeded\"];\nexport const failureStates = [\"failed\", \"canceled\", \"cancelled\"];\nexport const terminalStates = successStates.concat(failureStates);\n\nexport type SendOperationFn<T> = (\n args: OperationArguments,\n spec: OperationSpec\n) => Promise<LroResponse<T>>;\n\nexport function createPollingMethod<TResult>(\n sendOperationFn: SendOperationFn<TResult>,\n GetLroStatusFromResponse: GetLroStatusFromResponse<TResult>,\n args: OperationArguments,\n spec: OperationSpec,\n mode?: LroMode\n): (path?: string) => Promise<LroStatus<TResult>> {\n /**\n * Polling calls will always return a status object i.e. {\"status\": \"success\"}\n * these intermediate responses are not described in the swagger so we need to\n * pass custom mappers at runtime.\n * This function replaces all the existing mappers to be able to deserialize a status object\n * @param responses Original set of responses defined in the operation\n */\n function getCompositeMappers(responses: {\n [responseCode: string]: OperationResponseMap;\n }): {\n [responseCode: string]: OperationResponseMap;\n } {\n return Object.keys(responses).reduce((acc, statusCode) => {\n return {\n ...acc,\n [statusCode]: {\n ...responses[statusCode],\n bodyMapper: {\n type: {\n name: \"Composite\",\n modelProperties: {\n status: {\n serializedName: \"status\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n }\n }\n };\n }, {} as { [responseCode: string]: OperationResponseMap });\n }\n let response: LroStatus<TResult> | undefined = undefined;\n const customerCallback = args?.options?.onResponse;\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: (\n rawResponse: FullOperationResponse,\n flatResponse: unknown\n ): void => {\n response = GetLroStatusFromResponse(\n {\n statusCode: rawResponse.status,\n body: rawResponse.parsedBody,\n headers: rawResponse.headers.toJSON()\n },\n flatResponse as TResult\n );\n if (response.done) {\n customerCallback?.(rawResponse, flatResponse);\n }\n }\n }\n };\n // Make sure we don't send any body to the get request\n const { requestBody, responses, ...restSpec } = spec;\n if (mode === \"AzureAsync\") {\n return async (path?: string) => {\n await sendOperationFn(updatedArgs, {\n ...restSpec,\n responses: getCompositeMappers(responses),\n httpMethod: \"GET\",\n ...(path && { path })\n });\n return response!;\n };\n }\n return async (path?: string) => {\n await sendOperationFn(updatedArgs, {\n ...restSpec,\n responses: responses,\n httpMethod: \"GET\",\n ...(path && { path })\n });\n return response!;\n };\n}\n\n/**\n * We need to selectively deserialize our responses, only deserializing if we\n * are in a final Lro response, not deserializing any polling non-terminal responses\n */\nexport function shouldDeserializeLro(lroResourceLocationConfig?: string) {\n let initialOperationInfo: LroResponseInfo | undefined;\n let isInitialRequest = true;\n\n return (response: FullOperationResponse) => {\n if (response.status < 200 || response.status >= 300) {\n return true;\n }\n\n if (!initialOperationInfo) {\n initialOperationInfo = getLroData(response);\n } else {\n isInitialRequest = false;\n }\n\n if (\n initialOperationInfo.azureAsyncOperation ||\n initialOperationInfo.operationLocation\n ) {\n return (\n !isInitialRequest &&\n isAsyncOperationFinalResponse(\n response,\n initialOperationInfo,\n lroResourceLocationConfig\n )\n );\n }\n\n if (initialOperationInfo.location) {\n return isLocationFinalResponse(response);\n }\n\n if (initialOperationInfo.requestMethod === \"PUT\") {\n return isBodyPollingFinalResponse(response);\n }\n\n return true;\n };\n}\n\nfunction isAsyncOperationFinalResponse(\n response: FullOperationResponse,\n initialOperationInfo: LroResponseInfo,\n lroResourceLocationConfig?: string\n): boolean {\n const status: string = response.parsedBody?.status || \"Succeeded\";\n if (!terminalStates.includes(status.toLowerCase())) {\n return false;\n }\n\n if (initialOperationInfo.requestMethod === \"DELETE\") {\n return true;\n }\n\n if (\n initialOperationInfo.requestMethod === \"PUT\" &&\n lroResourceLocationConfig &&\n lroResourceLocationConfig.toLowerCase() === \"azure-asyncoperation\"\n ) {\n return true;\n }\n\n if (\n initialOperationInfo.requestMethod !== \"PUT\" &&\n !initialOperationInfo.location\n ) {\n return true;\n }\n\n return false;\n}\n\nfunction isLocationFinalResponse(response: FullOperationResponse): boolean {\n return response.status !== 202;\n}\n\nfunction isBodyPollingFinalResponse(response: FullOperationResponse): boolean {\n const provisioningState: string =\n response.parsedBody?.properties?.provisioningState || \"Succeeded\";\n\n if (terminalStates.includes(provisioningState.toLowerCase())) {\n return true;\n }\n\n return false;\n}\n\ninterface LroResponseInfo {\n requestMethod: string;\n azureAsyncOperation?: string;\n operationLocation?: string;\n location?: string;\n}\n\nfunction getLroData(result: FullOperationResponse): LroResponseInfo {\n return {\n azureAsyncOperation: result.headers.get(\"azure-asyncoperation\"),\n operationLocation: result.headers.get(\"operation-location\"),\n location: result.headers.get(\"location\"),\n requestMethod: result.request.method\n };\n}\n\nexport function getSpecPath(spec: OperationSpec): string {\n if (spec.path) {\n return spec.path;\n } else {\n throw Error(\"Bad spec: request path is not found!\");\n }\n}\n\nexport class CoreClientLro<T> implements LongRunningOperation<T> {\n constructor(\n private sendOperationFn: SendOperationFn<T>,\n private args: OperationArguments,\n private spec: OperationSpec,\n private lroResourceLocationConfig?: LroResourceLocationConfig,\n public requestPath: string = spec.path!,\n public requestMethod: string = spec.httpMethod\n ) {}\n public async sendInitialRequest(\n initializeState: (\n rawResponse: RawResponse,\n flatResponse: unknown\n ) => boolean\n ): Promise<LroResponse<T>> {\n const { onResponse, ...restOptions } = this.args.options || {};\n return this.sendOperationFn(\n {\n ...this.args,\n options: {\n ...restOptions,\n onResponse: (\n rawResponse: FullOperationResponse,\n flatResponse: unknown\n ) => {\n const isCompleted = initializeState(\n {\n statusCode: rawResponse.status,\n body: rawResponse.parsedBody,\n headers: rawResponse.headers.toJSON()\n },\n flatResponse\n );\n if (isCompleted) {\n onResponse?.(rawResponse, flatResponse);\n }\n }\n }\n },\n this.spec\n );\n }\n\n public async sendPollRequest(\n config: LroConfig,\n path: string\n ): Promise<LroStatus<T>> {\n const getLroStatusFromResponse = createGetLroStatusFromResponse(\n this,\n config,\n this.lroResourceLocationConfig\n );\n return createPollingMethod(\n this.sendOperationFn,\n getLroStatusFromResponse,\n this.args,\n this.spec,\n config.mode\n )(path);\n }\n\n public async retrieveAzureAsyncResource(\n path?: string\n ): Promise<LroResponse<T>> {\n const updatedArgs = { ...this.args };\n if (updatedArgs.options) {\n (updatedArgs.options as any).shouldDeserialize = true;\n }\n return createPollingMethod(\n this.sendOperationFn,\n (rawResponse, flatResponse) => ({\n rawResponse,\n flatResponse,\n done: true\n }),\n updatedArgs,\n this.spec\n )(path);\n }\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport \"@azure/core-paging\";\nimport { PagedAsyncIterableIterator } from \"@azure/core-paging\";\nimport { Deployments } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { ResourceManagementClientContext } from \"../resourceManagementClientContext\";\nimport { PollerLike, PollOperationState } from \"@azure/core-lro\";\nimport { LroEngine } from \"../lro\";\nimport { CoreClientLro, shouldDeserializeLro } from \"../coreClientLro\";\nimport {\n DeploymentExtended,\n DeploymentsListAtScopeNextOptionalParams,\n DeploymentsListAtScopeOptionalParams,\n DeploymentsListAtTenantScopeNextOptionalParams,\n DeploymentsListAtTenantScopeOptionalParams,\n DeploymentsListAtManagementGroupScopeNextOptionalParams,\n DeploymentsListAtManagementGroupScopeOptionalParams,\n DeploymentsListAtSubscriptionScopeNextOptionalParams,\n DeploymentsListAtSubscriptionScopeOptionalParams,\n DeploymentsListByResourceGroupNextOptionalParams,\n DeploymentsListByResourceGroupOptionalParams,\n DeploymentsListAtScopeNextNextOptionalParams,\n DeploymentsListAtTenantScopeNextNextOptionalParams,\n DeploymentsListAtManagementGroupScopeNextNextOptionalParams,\n DeploymentsListAtSubscriptionScopeNextNextOptionalParams,\n DeploymentsListByResourceGroupNextNextOptionalParams,\n DeploymentsDeleteAtScopeOptionalParams,\n DeploymentsCheckExistenceAtScopeOptionalParams,\n DeploymentsCheckExistenceAtScopeResponse,\n Deployment,\n DeploymentsCreateOrUpdateAtScopeOptionalParams,\n DeploymentsCreateOrUpdateAtScopeResponse,\n DeploymentsGetAtScopeOptionalParams,\n DeploymentsGetAtScopeResponse,\n DeploymentsCancelAtScopeOptionalParams,\n DeploymentsValidateAtScopeOptionalParams,\n DeploymentsValidateAtScopeResponse,\n DeploymentsExportTemplateAtScopeOptionalParams,\n DeploymentsExportTemplateAtScopeResponse,\n DeploymentsListAtScopeResponse,\n DeploymentsDeleteAtTenantScopeOptionalParams,\n DeploymentsCheckExistenceAtTenantScopeOptionalParams,\n DeploymentsCheckExistenceAtTenantScopeResponse,\n ScopedDeployment,\n DeploymentsCreateOrUpdateAtTenantScopeOptionalParams,\n DeploymentsCreateOrUpdateAtTenantScopeResponse,\n DeploymentsGetAtTenantScopeOptionalParams,\n DeploymentsGetAtTenantScopeResponse,\n DeploymentsCancelAtTenantScopeOptionalParams,\n DeploymentsValidateAtTenantScopeOptionalParams,\n DeploymentsValidateAtTenantScopeResponse,\n ScopedDeploymentWhatIf,\n DeploymentsWhatIfAtTenantScopeOptionalParams,\n DeploymentsWhatIfAtTenantScopeResponse,\n DeploymentsExportTemplateAtTenantScopeOptionalParams,\n DeploymentsExportTemplateAtTenantScopeResponse,\n DeploymentsListAtTenantScopeResponse,\n DeploymentsDeleteAtManagementGroupScopeOptionalParams,\n DeploymentsCheckExistenceAtManagementGroupScopeOptionalParams,\n DeploymentsCheckExistenceAtManagementGroupScopeResponse,\n DeploymentsCreateOrUpdateAtManagementGroupScopeOptionalParams,\n DeploymentsCreateOrUpdateAtManagementGroupScopeResponse,\n DeploymentsGetAtManagementGroupScopeOptionalParams,\n DeploymentsGetAtManagementGroupScopeResponse,\n DeploymentsCancelAtManagementGroupScopeOptionalParams,\n DeploymentsValidateAtManagementGroupScopeOptionalParams,\n DeploymentsValidateAtManagementGroupScopeResponse,\n DeploymentsWhatIfAtManagementGroupScopeOptionalParams,\n DeploymentsWhatIfAtManagementGroupScopeResponse,\n DeploymentsExportTemplateAtManagementGroupScopeOptionalParams,\n DeploymentsExportTemplateAtManagementGroupScopeResponse,\n DeploymentsListAtManagementGroupScopeResponse,\n DeploymentsDeleteAtSubscriptionScopeOptionalParams,\n DeploymentsCheckExistenceAtSubscriptionScopeOptionalParams,\n DeploymentsCheckExistenceAtSubscriptionScopeResponse,\n DeploymentsCreateOrUpdateAtSubscriptionScopeOptionalParams,\n DeploymentsCreateOrUpdateAtSubscriptionScopeResponse,\n DeploymentsGetAtSubscriptionScopeOptionalParams,\n DeploymentsGetAtSubscriptionScopeResponse,\n DeploymentsCancelAtSubscriptionScopeOptionalParams,\n DeploymentsValidateAtSubscriptionScopeOptionalParams,\n DeploymentsValidateAtSubscriptionScopeResponse,\n DeploymentWhatIf,\n DeploymentsWhatIfAtSubscriptionScopeOptionalParams,\n DeploymentsWhatIfAtSubscriptionScopeResponse,\n DeploymentsExportTemplateAtSubscriptionScopeOptionalParams,\n DeploymentsExportTemplateAtSubscriptionScopeResponse,\n DeploymentsListAtSubscriptionScopeResponse,\n DeploymentsDeleteOptionalParams,\n DeploymentsCheckExistenceOptionalParams,\n DeploymentsCheckExistenceResponse,\n DeploymentsCreateOrUpdateOptionalParams,\n DeploymentsCreateOrUpdateResponse,\n DeploymentsGetOptionalParams,\n DeploymentsGetResponse,\n DeploymentsCancelOptionalParams,\n DeploymentsValidateOptionalParams,\n DeploymentsValidateResponse,\n DeploymentsWhatIfOptionalParams,\n DeploymentsWhatIfResponse,\n DeploymentsExportTemplateOptionalParams,\n DeploymentsExportTemplateResponse,\n DeploymentsListByResourceGroupResponse,\n DeploymentsCalculateTemplateHashOptionalParams,\n DeploymentsCalculateTemplateHashResponse,\n DeploymentsListAtScopeNextResponse,\n DeploymentsListAtTenantScopeNextResponse,\n DeploymentsListAtManagementGroupScopeNextResponse,\n DeploymentsListAtSubscriptionScopeNextResponse,\n DeploymentsListByResourceGroupNextResponse,\n DeploymentsListAtScopeNextNextResponse,\n DeploymentsListAtTenantScopeNextNextResponse,\n DeploymentsListAtManagementGroupScopeNextNextResponse,\n DeploymentsListAtSubscriptionScopeNextNextResponse,\n DeploymentsListByResourceGroupNextNextResponse\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class representing a Deployments. */\nexport class DeploymentsImpl implements Deployments {\n private readonly client: ResourceManagementClientContext;\n\n /**\n * Initialize a new instance of the class Deployments class.\n * @param client Reference to the service client\n */\n constructor(client: ResourceManagementClientContext) {\n this.client = client;\n }\n\n /**\n * Get all the deployments at the given scope.\n * @param scope The resource scope.\n * @param options The options parameters.\n */\n public listAtScope(\n scope: string,\n options?: DeploymentsListAtScopeOptionalParams\n ): PagedAsyncIterableIterator<DeploymentExtended> {\n const iter = this.listAtScopePagingAll(scope, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtScopePagingPage(scope, options);\n }\n };\n }\n\n private async *listAtScopePagingPage(\n scope: string,\n options?: DeploymentsListAtScopeOptionalParams\n ): AsyncIterableIterator<DeploymentExtended[]> {\n let result = await this._listAtScope(scope, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtScopeNext(scope, continuationToken, options);\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtScopePagingAll(\n scope: string,\n options?: DeploymentsListAtScopeOptionalParams\n ): AsyncIterableIterator<DeploymentExtended> {\n for await (const page of this.listAtScopePagingPage(scope, options)) {\n yield* page;\n }\n }\n\n /**\n * Get all the deployments at the tenant scope.\n * @param options The options parameters.\n */\n public listAtTenantScope(\n options?: DeploymentsListAtTenantScopeOptionalParams\n ): PagedAsyncIterableIterator<DeploymentExtended> {\n const iter = this.listAtTenantScopePagingAll(options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtTenantScopePagingPage(options);\n }\n };\n }\n\n private async *listAtTenantScopePagingPage(\n options?: DeploymentsListAtTenantScopeOptionalParams\n ): AsyncIterableIterator<DeploymentExtended[]> {\n let result = await this._listAtTenantScope(options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtTenantScopeNext(continuationToken, options);\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtTenantScopePagingAll(\n options?: DeploymentsListAtTenantScopeOptionalParams\n ): AsyncIterableIterator<DeploymentExtended> {\n for await (const page of this.listAtTenantScopePagingPage(options)) {\n yield* page;\n }\n }\n\n /**\n * Get all the deployments for a management group.\n * @param groupId The management group ID.\n * @param options The options parameters.\n */\n public listAtManagementGroupScope(\n groupId: string,\n options?: DeploymentsListAtManagementGroupScopeOptionalParams\n ): PagedAsyncIterableIterator<DeploymentExtended> {\n const iter = this.listAtManagementGroupScopePagingAll(groupId, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtManagementGroupScopePagingPage(groupId, options);\n }\n };\n }\n\n private async *listAtManagementGroupScopePagingPage(\n groupId: string,\n options?: DeploymentsListAtManagementGroupScopeOptionalParams\n ): AsyncIterableIterator<DeploymentExtended[]> {\n let result = await this._listAtManagementGroupScope(groupId, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtManagementGroupScopeNext(\n groupId,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtManagementGroupScopePagingAll(\n groupId: string,\n options?: DeploymentsListAtManagementGroupScopeOptionalParams\n ): AsyncIterableIterator<DeploymentExtended> {\n for await (const page of this.listAtManagementGroupScopePagingPage(\n groupId,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * Get all the deployments for a subscription.\n * @param options The options parameters.\n */\n public listAtSubscriptionScope(\n options?: DeploymentsListAtSubscriptionScopeOptionalParams\n ): PagedAsyncIterableIterator<DeploymentExtended> {\n const iter = this.listAtSubscriptionScopePagingAll(options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtSubscriptionScopePagingPage(options);\n }\n };\n }\n\n private async *listAtSubscriptionScopePagingPage(\n options?: DeploymentsListAtSubscriptionScopeOptionalParams\n ): AsyncIterableIterator<DeploymentExtended[]> {\n let result = await this._listAtSubscriptionScope(options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtSubscriptionScopeNext(\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtSubscriptionScopePagingAll(\n options?: DeploymentsListAtSubscriptionScopeOptionalParams\n ): AsyncIterableIterator<DeploymentExtended> {\n for await (const page of this.listAtSubscriptionScopePagingPage(options)) {\n yield* page;\n }\n }\n\n /**\n * Get all the deployments for a resource group.\n * @param resourceGroupName The name of the resource group with the deployments to get. The name is\n * case insensitive.\n * @param options The options parameters.\n */\n public listByResourceGroup(\n resourceGroupName: string,\n options?: DeploymentsListByResourceGroupOptionalParams\n ): PagedAsyncIterableIterator<DeploymentExtended> {\n const iter = this.listByResourceGroupPagingAll(resourceGroupName, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listByResourceGroupPagingPage(resourceGroupName, options);\n }\n };\n }\n\n private async *listByResourceGroupPagingPage(\n resourceGroupName: string,\n options?: DeploymentsListByResourceGroupOptionalParams\n ): AsyncIterableIterator<DeploymentExtended[]> {\n let result = await this._listByResourceGroup(resourceGroupName, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listByResourceGroupNext(\n resourceGroupName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listByResourceGroupPagingAll(\n resourceGroupName: string,\n options?: DeploymentsListByResourceGroupOptionalParams\n ): AsyncIterableIterator<DeploymentExtended> {\n for await (const page of this.listByResourceGroupPagingPage(\n resourceGroupName,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * ListAtScopeNext\n * @param scope The resource scope.\n * @param nextLink The nextLink from the previous successful call to the ListAtScope method.\n * @param options The options parameters.\n */\n public listAtScopeNext(\n scope: string,\n nextLink: string,\n options?: DeploymentsListAtScopeNextOptionalParams\n ): PagedAsyncIterableIterator<DeploymentExtended> {\n const iter = this.listAtScopeNextPagingAll(scope, nextLink, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtScopeNextPagingPage(scope, nextLink, options);\n }\n };\n }\n\n private async *listAtScopeNextPagingPage(\n scope: string,\n nextLink: string,\n options?: DeploymentsListAtScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentExtended[]> {\n let result = await this._listAtScopeNext(scope, nextLink, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtScopeNextNext(\n scope,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtScopeNextPagingAll(\n scope: string,\n nextLink: string,\n options?: DeploymentsListAtScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentExtended> {\n for await (const page of this.listAtScopeNextPagingPage(\n scope,\n nextLink,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * ListAtTenantScopeNext\n * @param nextLink The nextLink from the previous successful call to the ListAtTenantScope method.\n * @param options The options parameters.\n */\n public listAtTenantScopeNext(\n nextLink: string,\n options?: DeploymentsListAtTenantScopeNextOptionalParams\n ): PagedAsyncIterableIterator<DeploymentExtended> {\n const iter = this.listAtTenantScopeNextPagingAll(nextLink, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtTenantScopeNextPagingPage(nextLink, options);\n }\n };\n }\n\n private async *listAtTenantScopeNextPagingPage(\n nextLink: string,\n options?: DeploymentsListAtTenantScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentExtended[]> {\n let result = await this._listAtTenantScopeNext(nextLink, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtTenantScopeNextNext(\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtTenantScopeNextPagingAll(\n nextLink: string,\n options?: DeploymentsListAtTenantScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentExtended> {\n for await (const page of this.listAtTenantScopeNextPagingPage(\n nextLink,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * ListAtManagementGroupScopeNext\n * @param groupId The management group ID.\n * @param nextLink The nextLink from the previous successful call to the ListAtManagementGroupScope\n * method.\n * @param options The options parameters.\n */\n public listAtManagementGroupScopeNext(\n groupId: string,\n nextLink: string,\n options?: DeploymentsListAtManagementGroupScopeNextOptionalParams\n ): PagedAsyncIterableIterator<DeploymentExtended> {\n const iter = this.listAtManagementGroupScopeNextPagingAll(\n groupId,\n nextLink,\n options\n );\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtManagementGroupScopeNextPagingPage(\n groupId,\n nextLink,\n options\n );\n }\n };\n }\n\n private async *listAtManagementGroupScopeNextPagingPage(\n groupId: string,\n nextLink: string,\n options?: DeploymentsListAtManagementGroupScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentExtended[]> {\n let result = await this._listAtManagementGroupScopeNext(\n groupId,\n nextLink,\n options\n );\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtManagementGroupScopeNextNext(\n groupId,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtManagementGroupScopeNextPagingAll(\n groupId: string,\n nextLink: string,\n options?: DeploymentsListAtManagementGroupScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentExtended> {\n for await (const page of this.listAtManagementGroupScopeNextPagingPage(\n groupId,\n nextLink,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * ListAtSubscriptionScopeNext\n * @param nextLink The nextLink from the previous successful call to the ListAtSubscriptionScope\n * method.\n * @param options The options parameters.\n */\n public listAtSubscriptionScopeNext(\n nextLink: string,\n options?: DeploymentsListAtSubscriptionScopeNextOptionalParams\n ): PagedAsyncIterableIterator<DeploymentExtended> {\n const iter = this.listAtSubscriptionScopeNextPagingAll(nextLink, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtSubscriptionScopeNextPagingPage(nextLink, options);\n }\n };\n }\n\n private async *listAtSubscriptionScopeNextPagingPage(\n nextLink: string,\n options?: DeploymentsListAtSubscriptionScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentExtended[]> {\n let result = await this._listAtSubscriptionScopeNext(nextLink, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtSubscriptionScopeNextNext(\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtSubscriptionScopeNextPagingAll(\n nextLink: string,\n options?: DeploymentsListAtSubscriptionScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentExtended> {\n for await (const page of this.listAtSubscriptionScopeNextPagingPage(\n nextLink,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * ListByResourceGroupNext\n * @param resourceGroupName The name of the resource group with the deployments to get. The name is\n * case insensitive.\n * @param nextLink The nextLink from the previous successful call to the ListByResourceGroup method.\n * @param options The options parameters.\n */\n public listByResourceGroupNext(\n resourceGroupName: string,\n nextLink: string,\n options?: DeploymentsListByResourceGroupNextOptionalParams\n ): PagedAsyncIterableIterator<DeploymentExtended> {\n const iter = this.listByResourceGroupNextPagingAll(\n resourceGroupName,\n nextLink,\n options\n );\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listByResourceGroupNextPagingPage(\n resourceGroupName,\n nextLink,\n options\n );\n }\n };\n }\n\n private async *listByResourceGroupNextPagingPage(\n resourceGroupName: string,\n nextLink: string,\n options?: DeploymentsListByResourceGroupNextOptionalParams\n ): AsyncIterableIterator<DeploymentExtended[]> {\n let result = await this._listByResourceGroupNext(\n resourceGroupName,\n nextLink,\n options\n );\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listByResourceGroupNextNext(\n resourceGroupName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listByResourceGroupNextPagingAll(\n resourceGroupName: string,\n nextLink: string,\n options?: DeploymentsListByResourceGroupNextOptionalParams\n ): AsyncIterableIterator<DeploymentExtended> {\n for await (const page of this.listByResourceGroupNextPagingPage(\n resourceGroupName,\n nextLink,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * A template deployment that is currently running cannot be deleted. Deleting a template deployment\n * removes the associated deployment operations. This is an asynchronous operation that returns a\n * status of 202 until the template deployment is successfully deleted. The Location response header\n * contains the URI that is used to obtain the status of the process. While the process is running, a\n * call to the URI in the Location header returns a status of 202. When the process finishes, the URI\n * in the Location header returns a status of 204 on success. If the asynchronous request failed, the\n * URI in the Location header returns an error-level status code.\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n async beginDeleteAtScope(\n scope: string,\n deploymentName: string,\n options?: DeploymentsDeleteAtScopeOptionalParams\n ): Promise<PollerLike<PollOperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { scope, deploymentName, options },\n deleteAtScopeOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * A template deployment that is currently running cannot be deleted. Deleting a template deployment\n * removes the associated deployment operations. This is an asynchronous operation that returns a\n * status of 202 until the template deployment is successfully deleted. The Location response header\n * contains the URI that is used to obtain the status of the process. While the process is running, a\n * call to the URI in the Location header returns a status of 202. When the process finishes, the URI\n * in the Location header returns a status of 204 on success. If the asynchronous request failed, the\n * URI in the Location header returns an error-level status code.\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n async beginDeleteAtScopeAndWait(\n scope: string,\n deploymentName: string,\n options?: DeploymentsDeleteAtScopeOptionalParams\n ): Promise<void> {\n const poller = await this.beginDeleteAtScope(\n scope,\n deploymentName,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Checks whether the deployment exists.\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n checkExistenceAtScope(\n scope: string,\n deploymentName: string,\n options?: DeploymentsCheckExistenceAtScopeOptionalParams\n ): Promise<DeploymentsCheckExistenceAtScopeResponse> {\n return this.client.sendOperationRequest(\n { scope, deploymentName, options },\n checkExistenceAtScopeOperationSpec\n );\n }\n\n /**\n * You can provide the template and parameters directly in the request or link to JSON files.\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param parameters Additional parameters supplied to the operation.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateAtScope(\n scope: string,\n deploymentName: string,\n parameters: Deployment,\n options?: DeploymentsCreateOrUpdateAtScopeOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<DeploymentsCreateOrUpdateAtScopeResponse>,\n DeploymentsCreateOrUpdateAtScopeResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<DeploymentsCreateOrUpdateAtScopeResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { scope, deploymentName, parameters, options },\n createOrUpdateAtScopeOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * You can provide the template and parameters directly in the request or link to JSON files.\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param parameters Additional parameters supplied to the operation.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateAtScopeAndWait(\n scope: string,\n deploymentName: string,\n parameters: Deployment,\n options?: DeploymentsCreateOrUpdateAtScopeOptionalParams\n ): Promise<DeploymentsCreateOrUpdateAtScopeResponse> {\n const poller = await this.beginCreateOrUpdateAtScope(\n scope,\n deploymentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Gets a deployment.\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n getAtScope(\n scope: string,\n deploymentName: string,\n options?: DeploymentsGetAtScopeOptionalParams\n ): Promise<DeploymentsGetAtScopeResponse> {\n return this.client.sendOperationRequest(\n { scope, deploymentName, options },\n getAtScopeOperationSpec\n );\n }\n\n /**\n * You can cancel a deployment only if the provisioningState is Accepted or Running. After the\n * deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment\n * stops the currently running template deployment and leaves the resources partially deployed.\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n cancelAtScope(\n scope: string,\n deploymentName: string,\n options?: DeploymentsCancelAtScopeOptionalParams\n ): Promise<void> {\n return this.client.sendOperationRequest(\n { scope, deploymentName, options },\n cancelAtScopeOperationSpec\n );\n }\n\n /**\n * Validates whether the specified template is syntactically correct and will be accepted by Azure\n * Resource Manager..\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginValidateAtScope(\n scope: string,\n deploymentName: string,\n parameters: Deployment,\n options?: DeploymentsValidateAtScopeOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<DeploymentsValidateAtScopeResponse>,\n DeploymentsValidateAtScopeResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<DeploymentsValidateAtScopeResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { scope, deploymentName, parameters, options },\n validateAtScopeOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Validates whether the specified template is syntactically correct and will be accepted by Azure\n * Resource Manager..\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginValidateAtScopeAndWait(\n scope: string,\n deploymentName: string,\n parameters: Deployment,\n options?: DeploymentsValidateAtScopeOptionalParams\n ): Promise<DeploymentsValidateAtScopeResponse> {\n const poller = await this.beginValidateAtScope(\n scope,\n deploymentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Exports the template used for specified deployment.\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n exportTemplateAtScope(\n scope: string,\n deploymentName: string,\n options?: DeploymentsExportTemplateAtScopeOptionalParams\n ): Promise<DeploymentsExportTemplateAtScopeResponse> {\n return this.client.sendOperationRequest(\n { scope, deploymentName, options },\n exportTemplateAtScopeOperationSpec\n );\n }\n\n /**\n * Get all the deployments at the given scope.\n * @param scope The resource scope.\n * @param options The options parameters.\n */\n private _listAtScope(\n scope: string,\n options?: DeploymentsListAtScopeOptionalParams\n ): Promise<DeploymentsListAtScopeResponse> {\n return this.client.sendOperationRequest(\n { scope, options },\n listAtScopeOperationSpec\n );\n }\n\n /**\n * A template deployment that is currently running cannot be deleted. Deleting a template deployment\n * removes the associated deployment operations. This is an asynchronous operation that returns a\n * status of 202 until the template deployment is successfully deleted. The Location response header\n * contains the URI that is used to obtain the status of the process. While the process is running, a\n * call to the URI in the Location header returns a status of 202. When the process finishes, the URI\n * in the Location header returns a status of 204 on success. If the asynchronous request failed, the\n * URI in the Location header returns an error-level status code.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n async beginDeleteAtTenantScope(\n deploymentName: string,\n options?: DeploymentsDeleteAtTenantScopeOptionalParams\n ): Promise<PollerLike<PollOperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { deploymentName, options },\n deleteAtTenantScopeOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * A template deployment that is currently running cannot be deleted. Deleting a template deployment\n * removes the associated deployment operations. This is an asynchronous operation that returns a\n * status of 202 until the template deployment is successfully deleted. The Location response header\n * contains the URI that is used to obtain the status of the process. While the process is running, a\n * call to the URI in the Location header returns a status of 202. When the process finishes, the URI\n * in the Location header returns a status of 204 on success. If the asynchronous request failed, the\n * URI in the Location header returns an error-level status code.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n async beginDeleteAtTenantScopeAndWait(\n deploymentName: string,\n options?: DeploymentsDeleteAtTenantScopeOptionalParams\n ): Promise<void> {\n const poller = await this.beginDeleteAtTenantScope(deploymentName, options);\n return poller.pollUntilDone();\n }\n\n /**\n * Checks whether the deployment exists.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n checkExistenceAtTenantScope(\n deploymentName: string,\n options?: DeploymentsCheckExistenceAtTenantScopeOptionalParams\n ): Promise<DeploymentsCheckExistenceAtTenantScopeResponse> {\n return this.client.sendOperationRequest(\n { deploymentName, options },\n checkExistenceAtTenantScopeOperationSpec\n );\n }\n\n /**\n * You can provide the template and parameters directly in the request or link to JSON files.\n * @param deploymentName The name of the deployment.\n * @param parameters Additional parameters supplied to the operation.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateAtTenantScope(\n deploymentName: string,\n parameters: ScopedDeployment,\n options?: DeploymentsCreateOrUpdateAtTenantScopeOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<DeploymentsCreateOrUpdateAtTenantScopeResponse>,\n DeploymentsCreateOrUpdateAtTenantScopeResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<DeploymentsCreateOrUpdateAtTenantScopeResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { deploymentName, parameters, options },\n createOrUpdateAtTenantScopeOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * You can provide the template and parameters directly in the request or link to JSON files.\n * @param deploymentName The name of the deployment.\n * @param parameters Additional parameters supplied to the operation.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateAtTenantScopeAndWait(\n deploymentName: string,\n parameters: ScopedDeployment,\n options?: DeploymentsCreateOrUpdateAtTenantScopeOptionalParams\n ): Promise<DeploymentsCreateOrUpdateAtTenantScopeResponse> {\n const poller = await this.beginCreateOrUpdateAtTenantScope(\n deploymentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Gets a deployment.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n getAtTenantScope(\n deploymentName: string,\n options?: DeploymentsGetAtTenantScopeOptionalParams\n ): Promise<DeploymentsGetAtTenantScopeResponse> {\n return this.client.sendOperationRequest(\n { deploymentName, options },\n getAtTenantScopeOperationSpec\n );\n }\n\n /**\n * You can cancel a deployment only if the provisioningState is Accepted or Running. After the\n * deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment\n * stops the currently running template deployment and leaves the resources partially deployed.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n cancelAtTenantScope(\n deploymentName: string,\n options?: DeploymentsCancelAtTenantScopeOptionalParams\n ): Promise<void> {\n return this.client.sendOperationRequest(\n { deploymentName, options },\n cancelAtTenantScopeOperationSpec\n );\n }\n\n /**\n * Validates whether the specified template is syntactically correct and will be accepted by Azure\n * Resource Manager..\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginValidateAtTenantScope(\n deploymentName: string,\n parameters: ScopedDeployment,\n options?: DeploymentsValidateAtTenantScopeOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<DeploymentsValidateAtTenantScopeResponse>,\n DeploymentsValidateAtTenantScopeResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<DeploymentsValidateAtTenantScopeResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { deploymentName, parameters, options },\n validateAtTenantScopeOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Validates whether the specified template is syntactically correct and will be accepted by Azure\n * Resource Manager..\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginValidateAtTenantScopeAndWait(\n deploymentName: string,\n parameters: ScopedDeployment,\n options?: DeploymentsValidateAtTenantScopeOptionalParams\n ): Promise<DeploymentsValidateAtTenantScopeResponse> {\n const poller = await this.beginValidateAtTenantScope(\n deploymentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Returns changes that will be made by the deployment if executed at the scope of the tenant group.\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginWhatIfAtTenantScope(\n deploymentName: string,\n parameters: ScopedDeploymentWhatIf,\n options?: DeploymentsWhatIfAtTenantScopeOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<DeploymentsWhatIfAtTenantScopeResponse>,\n DeploymentsWhatIfAtTenantScopeResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<DeploymentsWhatIfAtTenantScopeResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { deploymentName, parameters, options },\n whatIfAtTenantScopeOperationSpec,\n \"location\"\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Returns changes that will be made by the deployment if executed at the scope of the tenant group.\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginWhatIfAtTenantScopeAndWait(\n deploymentName: string,\n parameters: ScopedDeploymentWhatIf,\n options?: DeploymentsWhatIfAtTenantScopeOptionalParams\n ): Promise<DeploymentsWhatIfAtTenantScopeResponse> {\n const poller = await this.beginWhatIfAtTenantScope(\n deploymentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Exports the template used for specified deployment.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n exportTemplateAtTenantScope(\n deploymentName: string,\n options?: DeploymentsExportTemplateAtTenantScopeOptionalParams\n ): Promise<DeploymentsExportTemplateAtTenantScopeResponse> {\n return this.client.sendOperationRequest(\n { deploymentName, options },\n exportTemplateAtTenantScopeOperationSpec\n );\n }\n\n /**\n * Get all the deployments at the tenant scope.\n * @param options The options parameters.\n */\n private _listAtTenantScope(\n options?: DeploymentsListAtTenantScopeOptionalParams\n ): Promise<DeploymentsListAtTenantScopeResponse> {\n return this.client.sendOperationRequest(\n { options },\n listAtTenantScopeOperationSpec\n );\n }\n\n /**\n * A template deployment that is currently running cannot be deleted. Deleting a template deployment\n * removes the associated deployment operations. This is an asynchronous operation that returns a\n * status of 202 until the template deployment is successfully deleted. The Location response header\n * contains the URI that is used to obtain the status of the process. While the process is running, a\n * call to the URI in the Location header returns a status of 202. When the process finishes, the URI\n * in the Location header returns a status of 204 on success. If the asynchronous request failed, the\n * URI in the Location header returns an error-level status code.\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n async beginDeleteAtManagementGroupScope(\n groupId: string,\n deploymentName: string,\n options?: DeploymentsDeleteAtManagementGroupScopeOptionalParams\n ): Promise<PollerLike<PollOperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { groupId, deploymentName, options },\n deleteAtManagementGroupScopeOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * A template deployment that is currently running cannot be deleted. Deleting a template deployment\n * removes the associated deployment operations. This is an asynchronous operation that returns a\n * status of 202 until the template deployment is successfully deleted. The Location response header\n * contains the URI that is used to obtain the status of the process. While the process is running, a\n * call to the URI in the Location header returns a status of 202. When the process finishes, the URI\n * in the Location header returns a status of 204 on success. If the asynchronous request failed, the\n * URI in the Location header returns an error-level status code.\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n async beginDeleteAtManagementGroupScopeAndWait(\n groupId: string,\n deploymentName: string,\n options?: DeploymentsDeleteAtManagementGroupScopeOptionalParams\n ): Promise<void> {\n const poller = await this.beginDeleteAtManagementGroupScope(\n groupId,\n deploymentName,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Checks whether the deployment exists.\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n checkExistenceAtManagementGroupScope(\n groupId: string,\n deploymentName: string,\n options?: DeploymentsCheckExistenceAtManagementGroupScopeOptionalParams\n ): Promise<DeploymentsCheckExistenceAtManagementGroupScopeResponse> {\n return this.client.sendOperationRequest(\n { groupId, deploymentName, options },\n checkExistenceAtManagementGroupScopeOperationSpec\n );\n }\n\n /**\n * You can provide the template and parameters directly in the request or link to JSON files.\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param parameters Additional parameters supplied to the operation.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateAtManagementGroupScope(\n groupId: string,\n deploymentName: string,\n parameters: ScopedDeployment,\n options?: DeploymentsCreateOrUpdateAtManagementGroupScopeOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<\n DeploymentsCreateOrUpdateAtManagementGroupScopeResponse\n >,\n DeploymentsCreateOrUpdateAtManagementGroupScopeResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<DeploymentsCreateOrUpdateAtManagementGroupScopeResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { groupId, deploymentName, parameters, options },\n createOrUpdateAtManagementGroupScopeOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * You can provide the template and parameters directly in the request or link to JSON files.\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param parameters Additional parameters supplied to the operation.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateAtManagementGroupScopeAndWait(\n groupId: string,\n deploymentName: string,\n parameters: ScopedDeployment,\n options?: DeploymentsCreateOrUpdateAtManagementGroupScopeOptionalParams\n ): Promise<DeploymentsCreateOrUpdateAtManagementGroupScopeResponse> {\n const poller = await this.beginCreateOrUpdateAtManagementGroupScope(\n groupId,\n deploymentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Gets a deployment.\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n getAtManagementGroupScope(\n groupId: string,\n deploymentName: string,\n options?: DeploymentsGetAtManagementGroupScopeOptionalParams\n ): Promise<DeploymentsGetAtManagementGroupScopeResponse> {\n return this.client.sendOperationRequest(\n { groupId, deploymentName, options },\n getAtManagementGroupScopeOperationSpec\n );\n }\n\n /**\n * You can cancel a deployment only if the provisioningState is Accepted or Running. After the\n * deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment\n * stops the currently running template deployment and leaves the resources partially deployed.\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n cancelAtManagementGroupScope(\n groupId: string,\n deploymentName: string,\n options?: DeploymentsCancelAtManagementGroupScopeOptionalParams\n ): Promise<void> {\n return this.client.sendOperationRequest(\n { groupId, deploymentName, options },\n cancelAtManagementGroupScopeOperationSpec\n );\n }\n\n /**\n * Validates whether the specified template is syntactically correct and will be accepted by Azure\n * Resource Manager..\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginValidateAtManagementGroupScope(\n groupId: string,\n deploymentName: string,\n parameters: ScopedDeployment,\n options?: DeploymentsValidateAtManagementGroupScopeOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<DeploymentsValidateAtManagementGroupScopeResponse>,\n DeploymentsValidateAtManagementGroupScopeResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<DeploymentsValidateAtManagementGroupScopeResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { groupId, deploymentName, parameters, options },\n validateAtManagementGroupScopeOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Validates whether the specified template is syntactically correct and will be accepted by Azure\n * Resource Manager..\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginValidateAtManagementGroupScopeAndWait(\n groupId: string,\n deploymentName: string,\n parameters: ScopedDeployment,\n options?: DeploymentsValidateAtManagementGroupScopeOptionalParams\n ): Promise<DeploymentsValidateAtManagementGroupScopeResponse> {\n const poller = await this.beginValidateAtManagementGroupScope(\n groupId,\n deploymentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Returns changes that will be made by the deployment if executed at the scope of the management\n * group.\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginWhatIfAtManagementGroupScope(\n groupId: string,\n deploymentName: string,\n parameters: ScopedDeploymentWhatIf,\n options?: DeploymentsWhatIfAtManagementGroupScopeOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<DeploymentsWhatIfAtManagementGroupScopeResponse>,\n DeploymentsWhatIfAtManagementGroupScopeResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<DeploymentsWhatIfAtManagementGroupScopeResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { groupId, deploymentName, parameters, options },\n whatIfAtManagementGroupScopeOperationSpec,\n \"location\"\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Returns changes that will be made by the deployment if executed at the scope of the management\n * group.\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginWhatIfAtManagementGroupScopeAndWait(\n groupId: string,\n deploymentName: string,\n parameters: ScopedDeploymentWhatIf,\n options?: DeploymentsWhatIfAtManagementGroupScopeOptionalParams\n ): Promise<DeploymentsWhatIfAtManagementGroupScopeResponse> {\n const poller = await this.beginWhatIfAtManagementGroupScope(\n groupId,\n deploymentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Exports the template used for specified deployment.\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n exportTemplateAtManagementGroupScope(\n groupId: string,\n deploymentName: string,\n options?: DeploymentsExportTemplateAtManagementGroupScopeOptionalParams\n ): Promise<DeploymentsExportTemplateAtManagementGroupScopeResponse> {\n return this.client.sendOperationRequest(\n { groupId, deploymentName, options },\n exportTemplateAtManagementGroupScopeOperationSpec\n );\n }\n\n /**\n * Get all the deployments for a management group.\n * @param groupId The management group ID.\n * @param options The options parameters.\n */\n private _listAtManagementGroupScope(\n groupId: string,\n options?: DeploymentsListAtManagementGroupScopeOptionalParams\n ): Promise<DeploymentsListAtManagementGroupScopeResponse> {\n return this.client.sendOperationRequest(\n { groupId, options },\n listAtManagementGroupScopeOperationSpec\n );\n }\n\n /**\n * A template deployment that is currently running cannot be deleted. Deleting a template deployment\n * removes the associated deployment operations. This is an asynchronous operation that returns a\n * status of 202 until the template deployment is successfully deleted. The Location response header\n * contains the URI that is used to obtain the status of the process. While the process is running, a\n * call to the URI in the Location header returns a status of 202. When the process finishes, the URI\n * in the Location header returns a status of 204 on success. If the asynchronous request failed, the\n * URI in the Location header returns an error-level status code.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n async beginDeleteAtSubscriptionScope(\n deploymentName: string,\n options?: DeploymentsDeleteAtSubscriptionScopeOptionalParams\n ): Promise<PollerLike<PollOperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { deploymentName, options },\n deleteAtSubscriptionScopeOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * A template deployment that is currently running cannot be deleted. Deleting a template deployment\n * removes the associated deployment operations. This is an asynchronous operation that returns a\n * status of 202 until the template deployment is successfully deleted. The Location response header\n * contains the URI that is used to obtain the status of the process. While the process is running, a\n * call to the URI in the Location header returns a status of 202. When the process finishes, the URI\n * in the Location header returns a status of 204 on success. If the asynchronous request failed, the\n * URI in the Location header returns an error-level status code.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n async beginDeleteAtSubscriptionScopeAndWait(\n deploymentName: string,\n options?: DeploymentsDeleteAtSubscriptionScopeOptionalParams\n ): Promise<void> {\n const poller = await this.beginDeleteAtSubscriptionScope(\n deploymentName,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Checks whether the deployment exists.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n checkExistenceAtSubscriptionScope(\n deploymentName: string,\n options?: DeploymentsCheckExistenceAtSubscriptionScopeOptionalParams\n ): Promise<DeploymentsCheckExistenceAtSubscriptionScopeResponse> {\n return this.client.sendOperationRequest(\n { deploymentName, options },\n checkExistenceAtSubscriptionScopeOperationSpec\n );\n }\n\n /**\n * You can provide the template and parameters directly in the request or link to JSON files.\n * @param deploymentName The name of the deployment.\n * @param parameters Additional parameters supplied to the operation.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateAtSubscriptionScope(\n deploymentName: string,\n parameters: Deployment,\n options?: DeploymentsCreateOrUpdateAtSubscriptionScopeOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<DeploymentsCreateOrUpdateAtSubscriptionScopeResponse>,\n DeploymentsCreateOrUpdateAtSubscriptionScopeResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<DeploymentsCreateOrUpdateAtSubscriptionScopeResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { deploymentName, parameters, options },\n createOrUpdateAtSubscriptionScopeOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * You can provide the template and parameters directly in the request or link to JSON files.\n * @param deploymentName The name of the deployment.\n * @param parameters Additional parameters supplied to the operation.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateAtSubscriptionScopeAndWait(\n deploymentName: string,\n parameters: Deployment,\n options?: DeploymentsCreateOrUpdateAtSubscriptionScopeOptionalParams\n ): Promise<DeploymentsCreateOrUpdateAtSubscriptionScopeResponse> {\n const poller = await this.beginCreateOrUpdateAtSubscriptionScope(\n deploymentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Gets a deployment.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n getAtSubscriptionScope(\n deploymentName: string,\n options?: DeploymentsGetAtSubscriptionScopeOptionalParams\n ): Promise<DeploymentsGetAtSubscriptionScopeResponse> {\n return this.client.sendOperationRequest(\n { deploymentName, options },\n getAtSubscriptionScopeOperationSpec\n );\n }\n\n /**\n * You can cancel a deployment only if the provisioningState is Accepted or Running. After the\n * deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment\n * stops the currently running template deployment and leaves the resources partially deployed.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n cancelAtSubscriptionScope(\n deploymentName: string,\n options?: DeploymentsCancelAtSubscriptionScopeOptionalParams\n ): Promise<void> {\n return this.client.sendOperationRequest(\n { deploymentName, options },\n cancelAtSubscriptionScopeOperationSpec\n );\n }\n\n /**\n * Validates whether the specified template is syntactically correct and will be accepted by Azure\n * Resource Manager..\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginValidateAtSubscriptionScope(\n deploymentName: string,\n parameters: Deployment,\n options?: DeploymentsValidateAtSubscriptionScopeOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<DeploymentsValidateAtSubscriptionScopeResponse>,\n DeploymentsValidateAtSubscriptionScopeResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<DeploymentsValidateAtSubscriptionScopeResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { deploymentName, parameters, options },\n validateAtSubscriptionScopeOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Validates whether the specified template is syntactically correct and will be accepted by Azure\n * Resource Manager..\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginValidateAtSubscriptionScopeAndWait(\n deploymentName: string,\n parameters: Deployment,\n options?: DeploymentsValidateAtSubscriptionScopeOptionalParams\n ): Promise<DeploymentsValidateAtSubscriptionScopeResponse> {\n const poller = await this.beginValidateAtSubscriptionScope(\n deploymentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Returns changes that will be made by the deployment if executed at the scope of the subscription.\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to What If.\n * @param options The options parameters.\n */\n async beginWhatIfAtSubscriptionScope(\n deploymentName: string,\n parameters: DeploymentWhatIf,\n options?: DeploymentsWhatIfAtSubscriptionScopeOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<DeploymentsWhatIfAtSubscriptionScopeResponse>,\n DeploymentsWhatIfAtSubscriptionScopeResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<DeploymentsWhatIfAtSubscriptionScopeResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { deploymentName, parameters, options },\n whatIfAtSubscriptionScopeOperationSpec,\n \"location\"\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Returns changes that will be made by the deployment if executed at the scope of the subscription.\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to What If.\n * @param options The options parameters.\n */\n async beginWhatIfAtSubscriptionScopeAndWait(\n deploymentName: string,\n parameters: DeploymentWhatIf,\n options?: DeploymentsWhatIfAtSubscriptionScopeOptionalParams\n ): Promise<DeploymentsWhatIfAtSubscriptionScopeResponse> {\n const poller = await this.beginWhatIfAtSubscriptionScope(\n deploymentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Exports the template used for specified deployment.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n exportTemplateAtSubscriptionScope(\n deploymentName: string,\n options?: DeploymentsExportTemplateAtSubscriptionScopeOptionalParams\n ): Promise<DeploymentsExportTemplateAtSubscriptionScopeResponse> {\n return this.client.sendOperationRequest(\n { deploymentName, options },\n exportTemplateAtSubscriptionScopeOperationSpec\n );\n }\n\n /**\n * Get all the deployments for a subscription.\n * @param options The options parameters.\n */\n private _listAtSubscriptionScope(\n options?: DeploymentsListAtSubscriptionScopeOptionalParams\n ): Promise<DeploymentsListAtSubscriptionScopeResponse> {\n return this.client.sendOperationRequest(\n { options },\n listAtSubscriptionScopeOperationSpec\n );\n }\n\n /**\n * A template deployment that is currently running cannot be deleted. Deleting a template deployment\n * removes the associated deployment operations. Deleting a template deployment does not affect the\n * state of the resource group. This is an asynchronous operation that returns a status of 202 until\n * the template deployment is successfully deleted. The Location response header contains the URI that\n * is used to obtain the status of the process. While the process is running, a call to the URI in the\n * Location header returns a status of 202. When the process finishes, the URI in the Location header\n * returns a status of 204 on success. If the asynchronous request failed, the URI in the Location\n * header returns an error-level status code.\n * @param resourceGroupName The name of the resource group with the deployment to delete. The name is\n * case insensitive.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n async beginDelete(\n resourceGroupName: string,\n deploymentName: string,\n options?: DeploymentsDeleteOptionalParams\n ): Promise<PollerLike<PollOperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { resourceGroupName, deploymentName, options },\n deleteOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * A template deployment that is currently running cannot be deleted. Deleting a template deployment\n * removes the associated deployment operations. Deleting a template deployment does not affect the\n * state of the resource group. This is an asynchronous operation that returns a status of 202 until\n * the template deployment is successfully deleted. The Location response header contains the URI that\n * is used to obtain the status of the process. While the process is running, a call to the URI in the\n * Location header returns a status of 202. When the process finishes, the URI in the Location header\n * returns a status of 204 on success. If the asynchronous request failed, the URI in the Location\n * header returns an error-level status code.\n * @param resourceGroupName The name of the resource group with the deployment to delete. The name is\n * case insensitive.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n async beginDeleteAndWait(\n resourceGroupName: string,\n deploymentName: string,\n options?: DeploymentsDeleteOptionalParams\n ): Promise<void> {\n const poller = await this.beginDelete(\n resourceGroupName,\n deploymentName,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Checks whether the deployment exists.\n * @param resourceGroupName The name of the resource group with the deployment to check. The name is\n * case insensitive.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n checkExistence(\n resourceGroupName: string,\n deploymentName: string,\n options?: DeploymentsCheckExistenceOptionalParams\n ): Promise<DeploymentsCheckExistenceResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, deploymentName, options },\n checkExistenceOperationSpec\n );\n }\n\n /**\n * You can provide the template and parameters directly in the request or link to JSON files.\n * @param resourceGroupName The name of the resource group to deploy the resources to. The name is case\n * insensitive. The resource group must already exist.\n * @param deploymentName The name of the deployment.\n * @param parameters Additional parameters supplied to the operation.\n * @param options The options parameters.\n */\n async beginCreateOrUpdate(\n resourceGroupName: string,\n deploymentName: string,\n parameters: Deployment,\n options?: DeploymentsCreateOrUpdateOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<DeploymentsCreateOrUpdateResponse>,\n DeploymentsCreateOrUpdateResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<DeploymentsCreateOrUpdateResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { resourceGroupName, deploymentName, parameters, options },\n createOrUpdateOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * You can provide the template and parameters directly in the request or link to JSON files.\n * @param resourceGroupName The name of the resource group to deploy the resources to. The name is case\n * insensitive. The resource group must already exist.\n * @param deploymentName The name of the deployment.\n * @param parameters Additional parameters supplied to the operation.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateAndWait(\n resourceGroupName: string,\n deploymentName: string,\n parameters: Deployment,\n options?: DeploymentsCreateOrUpdateOptionalParams\n ): Promise<DeploymentsCreateOrUpdateResponse> {\n const poller = await this.beginCreateOrUpdate(\n resourceGroupName,\n deploymentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Gets a deployment.\n * @param resourceGroupName The name of the resource group. The name is case insensitive.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n get(\n resourceGroupName: string,\n deploymentName: string,\n options?: DeploymentsGetOptionalParams\n ): Promise<DeploymentsGetResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, deploymentName, options },\n getOperationSpec\n );\n }\n\n /**\n * You can cancel a deployment only if the provisioningState is Accepted or Running. After the\n * deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment\n * stops the currently running template deployment and leaves the resource group partially deployed.\n * @param resourceGroupName The name of the resource group. The name is case insensitive.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n cancel(\n resourceGroupName: string,\n deploymentName: string,\n options?: DeploymentsCancelOptionalParams\n ): Promise<void> {\n return this.client.sendOperationRequest(\n { resourceGroupName, deploymentName, options },\n cancelOperationSpec\n );\n }\n\n /**\n * Validates whether the specified template is syntactically correct and will be accepted by Azure\n * Resource Manager..\n * @param resourceGroupName The name of the resource group the template will be deployed to. The name\n * is case insensitive.\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginValidate(\n resourceGroupName: string,\n deploymentName: string,\n parameters: Deployment,\n options?: DeploymentsValidateOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<DeploymentsValidateResponse>,\n DeploymentsValidateResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<DeploymentsValidateResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { resourceGroupName, deploymentName, parameters, options },\n validateOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Validates whether the specified template is syntactically correct and will be accepted by Azure\n * Resource Manager..\n * @param resourceGroupName The name of the resource group the template will be deployed to. The name\n * is case insensitive.\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginValidateAndWait(\n resourceGroupName: string,\n deploymentName: string,\n parameters: Deployment,\n options?: DeploymentsValidateOptionalParams\n ): Promise<DeploymentsValidateResponse> {\n const poller = await this.beginValidate(\n resourceGroupName,\n deploymentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Returns changes that will be made by the deployment if executed at the scope of the resource group.\n * @param resourceGroupName The name of the resource group the template will be deployed to. The name\n * is case insensitive.\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginWhatIf(\n resourceGroupName: string,\n deploymentName: string,\n parameters: DeploymentWhatIf,\n options?: DeploymentsWhatIfOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<DeploymentsWhatIfResponse>,\n DeploymentsWhatIfResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<DeploymentsWhatIfResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { resourceGroupName, deploymentName, parameters, options },\n whatIfOperationSpec,\n \"location\"\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Returns changes that will be made by the deployment if executed at the scope of the resource group.\n * @param resourceGroupName The name of the resource group the template will be deployed to. The name\n * is case insensitive.\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginWhatIfAndWait(\n resourceGroupName: string,\n deploymentName: string,\n parameters: DeploymentWhatIf,\n options?: DeploymentsWhatIfOptionalParams\n ): Promise<DeploymentsWhatIfResponse> {\n const poller = await this.beginWhatIf(\n resourceGroupName,\n deploymentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Exports the template used for specified deployment.\n * @param resourceGroupName The name of the resource group. The name is case insensitive.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n exportTemplate(\n resourceGroupName: string,\n deploymentName: string,\n options?: DeploymentsExportTemplateOptionalParams\n ): Promise<DeploymentsExportTemplateResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, deploymentName, options },\n exportTemplateOperationSpec\n );\n }\n\n /**\n * Get all the deployments for a resource group.\n * @param resourceGroupName The name of the resource group with the deployments to get. The name is\n * case insensitive.\n * @param options The options parameters.\n */\n private _listByResourceGroup(\n resourceGroupName: string,\n options?: DeploymentsListByResourceGroupOptionalParams\n ): Promise<DeploymentsListByResourceGroupResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, options },\n listByResourceGroupOperationSpec\n );\n }\n\n /**\n * Calculate the hash of the given template.\n * @param template The template provided to calculate hash.\n * @param options The options parameters.\n */\n calculateTemplateHash(\n template: Record<string, unknown>,\n options?: DeploymentsCalculateTemplateHashOptionalParams\n ): Promise<DeploymentsCalculateTemplateHashResponse> {\n return this.client.sendOperationRequest(\n { template, options },\n calculateTemplateHashOperationSpec\n );\n }\n\n /**\n * ListAtScopeNext\n * @param scope The resource scope.\n * @param nextLink The nextLink from the previous successful call to the ListAtScope method.\n * @param options The options parameters.\n */\n private _listAtScopeNext(\n scope: string,\n nextLink: string,\n options?: DeploymentsListAtScopeNextOptionalParams\n ): Promise<DeploymentsListAtScopeNextResponse> {\n return this.client.sendOperationRequest(\n { scope, nextLink, options },\n listAtScopeNextOperationSpec\n );\n }\n\n /**\n * ListAtTenantScopeNext\n * @param nextLink The nextLink from the previous successful call to the ListAtTenantScope method.\n * @param options The options parameters.\n */\n private _listAtTenantScopeNext(\n nextLink: string,\n options?: DeploymentsListAtTenantScopeNextOptionalParams\n ): Promise<DeploymentsListAtTenantScopeNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listAtTenantScopeNextOperationSpec\n );\n }\n\n /**\n * ListAtManagementGroupScopeNext\n * @param groupId The management group ID.\n * @param nextLink The nextLink from the previous successful call to the ListAtManagementGroupScope\n * method.\n * @param options The options parameters.\n */\n private _listAtManagementGroupScopeNext(\n groupId: string,\n nextLink: string,\n options?: DeploymentsListAtManagementGroupScopeNextOptionalParams\n ): Promise<DeploymentsListAtManagementGroupScopeNextResponse> {\n return this.client.sendOperationRequest(\n { groupId, nextLink, options },\n listAtManagementGroupScopeNextOperationSpec\n );\n }\n\n /**\n * ListAtSubscriptionScopeNext\n * @param nextLink The nextLink from the previous successful call to the ListAtSubscriptionScope\n * method.\n * @param options The options parameters.\n */\n private _listAtSubscriptionScopeNext(\n nextLink: string,\n options?: DeploymentsListAtSubscriptionScopeNextOptionalParams\n ): Promise<DeploymentsListAtSubscriptionScopeNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listAtSubscriptionScopeNextOperationSpec\n );\n }\n\n /**\n * ListByResourceGroupNext\n * @param resourceGroupName The name of the resource group with the deployments to get. The name is\n * case insensitive.\n * @param nextLink The nextLink from the previous successful call to the ListByResourceGroup method.\n * @param options The options parameters.\n */\n private _listByResourceGroupNext(\n resourceGroupName: string,\n nextLink: string,\n options?: DeploymentsListByResourceGroupNextOptionalParams\n ): Promise<DeploymentsListByResourceGroupNextResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, nextLink, options },\n listByResourceGroupNextOperationSpec\n );\n }\n\n /**\n * ListAtScopeNextNext\n * @param scope The resource scope.\n * @param nextLink The nextLink from the previous successful call to the ListAtScopeNext method.\n * @param options The options parameters.\n */\n private _listAtScopeNextNext(\n scope: string,\n nextLink: string,\n options?: DeploymentsListAtScopeNextNextOptionalParams\n ): Promise<DeploymentsListAtScopeNextNextResponse> {\n return this.client.sendOperationRequest(\n { scope, nextLink, options },\n listAtScopeNextNextOperationSpec\n );\n }\n\n /**\n * ListAtTenantScopeNextNext\n * @param nextLink The nextLink from the previous successful call to the ListAtTenantScopeNext method.\n * @param options The options parameters.\n */\n private _listAtTenantScopeNextNext(\n nextLink: string,\n options?: DeploymentsListAtTenantScopeNextNextOptionalParams\n ): Promise<DeploymentsListAtTenantScopeNextNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listAtTenantScopeNextNextOperationSpec\n );\n }\n\n /**\n * ListAtManagementGroupScopeNextNext\n * @param groupId The management group ID.\n * @param nextLink The nextLink from the previous successful call to the ListAtManagementGroupScopeNext\n * method.\n * @param options The options parameters.\n */\n private _listAtManagementGroupScopeNextNext(\n groupId: string,\n nextLink: string,\n options?: DeploymentsListAtManagementGroupScopeNextNextOptionalParams\n ): Promise<DeploymentsListAtManagementGroupScopeNextNextResponse> {\n return this.client.sendOperationRequest(\n { groupId, nextLink, options },\n listAtManagementGroupScopeNextNextOperationSpec\n );\n }\n\n /**\n * ListAtSubscriptionScopeNextNext\n * @param nextLink The nextLink from the previous successful call to the ListAtSubscriptionScopeNext\n * method.\n * @param options The options parameters.\n */\n private _listAtSubscriptionScopeNextNext(\n nextLink: string,\n options?: DeploymentsListAtSubscriptionScopeNextNextOptionalParams\n ): Promise<DeploymentsListAtSubscriptionScopeNextNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listAtSubscriptionScopeNextNextOperationSpec\n );\n }\n\n /**\n * ListByResourceGroupNextNext\n * @param resourceGroupName The name of the resource group with the deployments to get. The name is\n * case insensitive.\n * @param nextLink The nextLink from the previous successful call to the ListByResourceGroupNext\n * method.\n * @param options The options parameters.\n */\n private _listByResourceGroupNextNext(\n resourceGroupName: string,\n nextLink: string,\n options?: DeploymentsListByResourceGroupNextNextOptionalParams\n ): Promise<DeploymentsListByResourceGroupNextNextResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, nextLink, options },\n listByResourceGroupNextNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst deleteAtScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.scope,\n Parameters.deploymentName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst checkExistenceAtScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"HEAD\",\n responses: {\n 204: {},\n 404: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.scope,\n Parameters.deploymentName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateAtScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentExtended\n },\n 201: {\n bodyMapper: Mappers.DeploymentExtended\n },\n 202: {\n bodyMapper: Mappers.DeploymentExtended\n },\n 204: {\n bodyMapper: Mappers.DeploymentExtended\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.scope,\n Parameters.deploymentName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst getAtScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentExtended\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.scope,\n Parameters.deploymentName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst cancelAtScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel\",\n httpMethod: \"POST\",\n responses: {\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.scope,\n Parameters.deploymentName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst validateAtScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n 201: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n 202: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n 204: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.scope,\n Parameters.deploymentName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst exportTemplateAtScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentExportResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.scope,\n Parameters.deploymentName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/{scope}/providers/Microsoft.Resources/deployments/\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [Parameters.$host, Parameters.scope],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst deleteAtTenantScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.deploymentName],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst checkExistenceAtTenantScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"HEAD\",\n responses: {\n 204: {},\n 404: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.deploymentName],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateAtTenantScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentExtended\n },\n 201: {\n bodyMapper: Mappers.DeploymentExtended\n },\n 202: {\n bodyMapper: Mappers.DeploymentExtended\n },\n 204: {\n bodyMapper: Mappers.DeploymentExtended\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters1,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.deploymentName],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst getAtTenantScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentExtended\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.deploymentName],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst cancelAtTenantScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Resources/deployments/{deploymentName}/cancel\",\n httpMethod: \"POST\",\n responses: {\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.deploymentName],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst validateAtTenantScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Resources/deployments/{deploymentName}/validate\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n 201: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n 202: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n 204: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters1,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.deploymentName],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst whatIfAtTenantScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n 201: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n 202: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n 204: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters2,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.deploymentName],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst exportTemplateAtTenantScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentExportResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.deploymentName],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtTenantScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Resources/deployments/\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [Parameters.$host],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst deleteAtManagementGroupScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.groupId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst checkExistenceAtManagementGroupScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"HEAD\",\n responses: {\n 204: {},\n 404: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.groupId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateAtManagementGroupScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentExtended\n },\n 201: {\n bodyMapper: Mappers.DeploymentExtended\n },\n 202: {\n bodyMapper: Mappers.DeploymentExtended\n },\n 204: {\n bodyMapper: Mappers.DeploymentExtended\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters1,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.groupId\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst getAtManagementGroupScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentExtended\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.groupId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst cancelAtManagementGroupScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel\",\n httpMethod: \"POST\",\n responses: {\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.groupId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst validateAtManagementGroupScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n 201: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n 202: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n 204: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters1,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.groupId\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst whatIfAtManagementGroupScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n 201: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n 202: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n 204: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters2,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.groupId\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst exportTemplateAtManagementGroupScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentExportResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.groupId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtManagementGroupScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [Parameters.$host, Parameters.groupId],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst deleteAtSubscriptionScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst checkExistenceAtSubscriptionScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"HEAD\",\n responses: {\n 204: {},\n 404: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateAtSubscriptionScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentExtended\n },\n 201: {\n bodyMapper: Mappers.DeploymentExtended\n },\n 202: {\n bodyMapper: Mappers.DeploymentExtended\n },\n 204: {\n bodyMapper: Mappers.DeploymentExtended\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst getAtSubscriptionScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentExtended\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst cancelAtSubscriptionScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel\",\n httpMethod: \"POST\",\n responses: {\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst validateAtSubscriptionScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n 201: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n 202: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n 204: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst whatIfAtSubscriptionScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n 201: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n 202: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n 204: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters3,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst exportTemplateAtSubscriptionScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentExportResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtSubscriptionScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [Parameters.$host, Parameters.subscriptionId],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst deleteOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst checkExistenceOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"HEAD\",\n responses: {\n 204: {},\n 404: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentExtended\n },\n 201: {\n bodyMapper: Mappers.DeploymentExtended\n },\n 202: {\n bodyMapper: Mappers.DeploymentExtended\n },\n 204: {\n bodyMapper: Mappers.DeploymentExtended\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst getOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentExtended\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst cancelOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel\",\n httpMethod: \"POST\",\n responses: {\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst validateOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n 201: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n 202: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n 204: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst whatIfOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n 201: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n 202: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n 204: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters3,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst exportTemplateOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentExportResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listByResourceGroupOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst calculateTemplateHashOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Resources/calculateTemplateHash\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.TemplateHashResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.template,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst listAtScopeNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [Parameters.$host, Parameters.nextLink, Parameters.scope],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtTenantScopeNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [Parameters.$host, Parameters.nextLink],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtManagementGroupScopeNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [Parameters.$host, Parameters.nextLink, Parameters.groupId],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtSubscriptionScopeNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listByResourceGroupNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtScopeNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [Parameters.$host, Parameters.nextLink, Parameters.scope],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtTenantScopeNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [Parameters.$host, Parameters.nextLink],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtManagementGroupScopeNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [Parameters.$host, Parameters.nextLink, Parameters.groupId],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtSubscriptionScopeNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listByResourceGroupNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport \"@azure/core-paging\";\nimport { PagedAsyncIterableIterator } from \"@azure/core-paging\";\nimport { Providers } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { ResourceManagementClientContext } from \"../resourceManagementClientContext\";\nimport {\n Provider,\n ProvidersListNextOptionalParams,\n ProvidersListOptionalParams,\n ProvidersListAtTenantScopeNextOptionalParams,\n ProvidersListAtTenantScopeOptionalParams,\n ProvidersListNextNextOptionalParams,\n ProvidersListAtTenantScopeNextNextOptionalParams,\n ProvidersUnregisterOptionalParams,\n ProvidersUnregisterResponse,\n ProvidersRegisterAtManagementGroupScopeOptionalParams,\n ProvidersProviderPermissionsOptionalParams,\n ProvidersProviderPermissionsResponse,\n ProvidersRegisterOptionalParams,\n ProvidersRegisterResponse,\n ProvidersListResponse,\n ProvidersListAtTenantScopeResponse,\n ProvidersGetOptionalParams,\n ProvidersGetResponse,\n ProvidersGetAtTenantScopeOptionalParams,\n ProvidersGetAtTenantScopeResponse,\n ProvidersListNextResponse,\n ProvidersListAtTenantScopeNextResponse,\n ProvidersListNextNextResponse,\n ProvidersListAtTenantScopeNextNextResponse\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class representing a Providers. */\nexport class ProvidersImpl implements Providers {\n private readonly client: ResourceManagementClientContext;\n\n /**\n * Initialize a new instance of the class Providers class.\n * @param client Reference to the service client\n */\n constructor(client: ResourceManagementClientContext) {\n this.client = client;\n }\n\n /**\n * Gets all resource providers for a subscription.\n * @param options The options parameters.\n */\n public list(\n options?: ProvidersListOptionalParams\n ): PagedAsyncIterableIterator<Provider> {\n const iter = this.listPagingAll(options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listPagingPage(options);\n }\n };\n }\n\n private async *listPagingPage(\n options?: ProvidersListOptionalParams\n ): AsyncIterableIterator<Provider[]> {\n let result = await this._list(options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listNext(continuationToken, options);\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listPagingAll(\n options?: ProvidersListOptionalParams\n ): AsyncIterableIterator<Provider> {\n for await (const page of this.listPagingPage(options)) {\n yield* page;\n }\n }\n\n /**\n * Gets all resource providers for the tenant.\n * @param options The options parameters.\n */\n public listAtTenantScope(\n options?: ProvidersListAtTenantScopeOptionalParams\n ): PagedAsyncIterableIterator<Provider> {\n const iter = this.listAtTenantScopePagingAll(options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtTenantScopePagingPage(options);\n }\n };\n }\n\n private async *listAtTenantScopePagingPage(\n options?: ProvidersListAtTenantScopeOptionalParams\n ): AsyncIterableIterator<Provider[]> {\n let result = await this._listAtTenantScope(options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtTenantScopeNext(continuationToken, options);\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtTenantScopePagingAll(\n options?: ProvidersListAtTenantScopeOptionalParams\n ): AsyncIterableIterator<Provider> {\n for await (const page of this.listAtTenantScopePagingPage(options)) {\n yield* page;\n }\n }\n\n /**\n * ListNext\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n public listNext(\n nextLink: string,\n options?: ProvidersListNextOptionalParams\n ): PagedAsyncIterableIterator<Provider> {\n const iter = this.listNextPagingAll(nextLink, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listNextPagingPage(nextLink, options);\n }\n };\n }\n\n private async *listNextPagingPage(\n nextLink: string,\n options?: ProvidersListNextOptionalParams\n ): AsyncIterableIterator<Provider[]> {\n let result = await this._listNext(nextLink, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listNextNext(continuationToken, options);\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listNextPagingAll(\n nextLink: string,\n options?: ProvidersListNextOptionalParams\n ): AsyncIterableIterator<Provider> {\n for await (const page of this.listNextPagingPage(nextLink, options)) {\n yield* page;\n }\n }\n\n /**\n * ListAtTenantScopeNext\n * @param nextLink The nextLink from the previous successful call to the ListAtTenantScope method.\n * @param options The options parameters.\n */\n public listAtTenantScopeNext(\n nextLink: string,\n options?: ProvidersListAtTenantScopeNextOptionalParams\n ): PagedAsyncIterableIterator<Provider> {\n const iter = this.listAtTenantScopeNextPagingAll(nextLink, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtTenantScopeNextPagingPage(nextLink, options);\n }\n };\n }\n\n private async *listAtTenantScopeNextPagingPage(\n nextLink: string,\n options?: ProvidersListAtTenantScopeNextOptionalParams\n ): AsyncIterableIterator<Provider[]> {\n let result = await this._listAtTenantScopeNext(nextLink, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtTenantScopeNextNext(\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtTenantScopeNextPagingAll(\n nextLink: string,\n options?: ProvidersListAtTenantScopeNextOptionalParams\n ): AsyncIterableIterator<Provider> {\n for await (const page of this.listAtTenantScopeNextPagingPage(\n nextLink,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * Unregisters a subscription from a resource provider.\n * @param resourceProviderNamespace The namespace of the resource provider to unregister.\n * @param options The options parameters.\n */\n unregister(\n resourceProviderNamespace: string,\n options?: ProvidersUnregisterOptionalParams\n ): Promise<ProvidersUnregisterResponse> {\n return this.client.sendOperationRequest(\n { resourceProviderNamespace, options },\n unregisterOperationSpec\n );\n }\n\n /**\n * Registers a management group with a resource provider.\n * @param resourceProviderNamespace The namespace of the resource provider to register.\n * @param groupId The management group ID.\n * @param options The options parameters.\n */\n registerAtManagementGroupScope(\n resourceProviderNamespace: string,\n groupId: string,\n options?: ProvidersRegisterAtManagementGroupScopeOptionalParams\n ): Promise<void> {\n return this.client.sendOperationRequest(\n { resourceProviderNamespace, groupId, options },\n registerAtManagementGroupScopeOperationSpec\n );\n }\n\n /**\n * Get the provider permissions.\n * @param resourceProviderNamespace The namespace of the resource provider.\n * @param options The options parameters.\n */\n providerPermissions(\n resourceProviderNamespace: string,\n options?: ProvidersProviderPermissionsOptionalParams\n ): Promise<ProvidersProviderPermissionsResponse> {\n return this.client.sendOperationRequest(\n { resourceProviderNamespace, options },\n providerPermissionsOperationSpec\n );\n }\n\n /**\n * Registers a subscription with a resource provider.\n * @param resourceProviderNamespace The namespace of the resource provider to register.\n * @param options The options parameters.\n */\n register(\n resourceProviderNamespace: string,\n options?: ProvidersRegisterOptionalParams\n ): Promise<ProvidersRegisterResponse> {\n return this.client.sendOperationRequest(\n { resourceProviderNamespace, options },\n registerOperationSpec\n );\n }\n\n /**\n * Gets all resource providers for a subscription.\n * @param options The options parameters.\n */\n private _list(\n options?: ProvidersListOptionalParams\n ): Promise<ProvidersListResponse> {\n return this.client.sendOperationRequest({ options }, listOperationSpec);\n }\n\n /**\n * Gets all resource providers for the tenant.\n * @param options The options parameters.\n */\n private _listAtTenantScope(\n options?: ProvidersListAtTenantScopeOptionalParams\n ): Promise<ProvidersListAtTenantScopeResponse> {\n return this.client.sendOperationRequest(\n { options },\n listAtTenantScopeOperationSpec\n );\n }\n\n /**\n * Gets the specified resource provider.\n * @param resourceProviderNamespace The namespace of the resource provider.\n * @param options The options parameters.\n */\n get(\n resourceProviderNamespace: string,\n options?: ProvidersGetOptionalParams\n ): Promise<ProvidersGetResponse> {\n return this.client.sendOperationRequest(\n { resourceProviderNamespace, options },\n getOperationSpec\n );\n }\n\n /**\n * Gets the specified resource provider at the tenant level.\n * @param resourceProviderNamespace The namespace of the resource provider.\n * @param options The options parameters.\n */\n getAtTenantScope(\n resourceProviderNamespace: string,\n options?: ProvidersGetAtTenantScopeOptionalParams\n ): Promise<ProvidersGetAtTenantScopeResponse> {\n return this.client.sendOperationRequest(\n { resourceProviderNamespace, options },\n getAtTenantScopeOperationSpec\n );\n }\n\n /**\n * ListNext\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n private _listNext(\n nextLink: string,\n options?: ProvidersListNextOptionalParams\n ): Promise<ProvidersListNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listNextOperationSpec\n );\n }\n\n /**\n * ListAtTenantScopeNext\n * @param nextLink The nextLink from the previous successful call to the ListAtTenantScope method.\n * @param options The options parameters.\n */\n private _listAtTenantScopeNext(\n nextLink: string,\n options?: ProvidersListAtTenantScopeNextOptionalParams\n ): Promise<ProvidersListAtTenantScopeNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listAtTenantScopeNextOperationSpec\n );\n }\n\n /**\n * ListNextNext\n * @param nextLink The nextLink from the previous successful call to the ListNext method.\n * @param options The options parameters.\n */\n private _listNextNext(\n nextLink: string,\n options?: ProvidersListNextNextOptionalParams\n ): Promise<ProvidersListNextNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listNextNextOperationSpec\n );\n }\n\n /**\n * ListAtTenantScopeNextNext\n * @param nextLink The nextLink from the previous successful call to the ListAtTenantScopeNext method.\n * @param options The options parameters.\n */\n private _listAtTenantScopeNextNext(\n nextLink: string,\n options?: ProvidersListAtTenantScopeNextNextOptionalParams\n ): Promise<ProvidersListAtTenantScopeNextNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listAtTenantScopeNextNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst unregisterOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.Provider\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceProviderNamespace\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst registerAtManagementGroupScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/providers/Microsoft.Management/managementGroups/{groupId}/providers/{resourceProviderNamespace}/register\",\n httpMethod: \"POST\",\n responses: {\n 200: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.groupId,\n Parameters.resourceProviderNamespace\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst providerPermissionsOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/providerPermissions\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ProviderPermissionListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceProviderNamespace\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst registerOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.Provider\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.properties,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceProviderNamespace\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst listOperationSpec: coreClient.OperationSpec = {\n path: \"/subscriptions/{subscriptionId}/providers\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ProviderListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top, Parameters.expand],\n urlParameters: [Parameters.$host, Parameters.subscriptionId],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtTenantScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/providers\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ProviderListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top, Parameters.expand],\n urlParameters: [Parameters.$host],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getOperationSpec: coreClient.OperationSpec = {\n path: \"/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.Provider\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.expand],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceProviderNamespace\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getAtTenantScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/{resourceProviderNamespace}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.Provider\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.expand],\n urlParameters: [Parameters.$host, Parameters.resourceProviderNamespace],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ProviderListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top, Parameters.expand],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtTenantScopeNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ProviderListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top, Parameters.expand],\n urlParameters: [Parameters.$host, Parameters.nextLink],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ProviderListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top, Parameters.expand],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtTenantScopeNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ProviderListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top, Parameters.expand],\n urlParameters: [Parameters.$host, Parameters.nextLink],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport { ProviderResourceTypes } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { ResourceManagementClientContext } from \"../resourceManagementClientContext\";\nimport {\n ProviderResourceTypesListOptionalParams,\n ProviderResourceTypesListResponse\n} from \"../models\";\n\n/** Class representing a ProviderResourceTypes. */\nexport class ProviderResourceTypesImpl implements ProviderResourceTypes {\n private readonly client: ResourceManagementClientContext;\n\n /**\n * Initialize a new instance of the class ProviderResourceTypes class.\n * @param client Reference to the service client\n */\n constructor(client: ResourceManagementClientContext) {\n this.client = client;\n }\n\n /**\n * List the resource types for a specified resource provider.\n * @param resourceProviderNamespace The namespace of the resource provider.\n * @param options The options parameters.\n */\n list(\n resourceProviderNamespace: string,\n options?: ProviderResourceTypesListOptionalParams\n ): Promise<ProviderResourceTypesListResponse> {\n return this.client.sendOperationRequest(\n { resourceProviderNamespace, options },\n listOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst listOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/resourceTypes\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ProviderResourceTypeListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.expand],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceProviderNamespace\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport \"@azure/core-paging\";\nimport { PagedAsyncIterableIterator } from \"@azure/core-paging\";\nimport { Resources } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { ResourceManagementClientContext } from \"../resourceManagementClientContext\";\nimport { PollerLike, PollOperationState } from \"@azure/core-lro\";\nimport { LroEngine } from \"../lro\";\nimport { CoreClientLro, shouldDeserializeLro } from \"../coreClientLro\";\nimport {\n GenericResourceExpanded,\n ResourcesListByResourceGroupNextOptionalParams,\n ResourcesListByResourceGroupOptionalParams,\n ResourcesListNextOptionalParams,\n ResourcesListOptionalParams,\n ResourcesListByResourceGroupNextNextOptionalParams,\n ResourcesListNextNextOptionalParams,\n ResourcesListByResourceGroupResponse,\n ResourcesMoveInfo,\n ResourcesMoveResourcesOptionalParams,\n ResourcesValidateMoveResourcesOptionalParams,\n ResourcesListResponse,\n ResourcesCheckExistenceOptionalParams,\n ResourcesCheckExistenceResponse,\n ResourcesDeleteOptionalParams,\n GenericResource,\n ResourcesCreateOrUpdateOptionalParams,\n ResourcesCreateOrUpdateResponse,\n ResourcesUpdateOptionalParams,\n ResourcesUpdateResponse,\n ResourcesGetOptionalParams,\n ResourcesGetResponse,\n ResourcesCheckExistenceByIdOptionalParams,\n ResourcesCheckExistenceByIdResponse,\n ResourcesDeleteByIdOptionalParams,\n ResourcesCreateOrUpdateByIdOptionalParams,\n ResourcesCreateOrUpdateByIdResponse,\n ResourcesUpdateByIdOptionalParams,\n ResourcesUpdateByIdResponse,\n ResourcesGetByIdOptionalParams,\n ResourcesGetByIdResponse,\n ResourcesListByResourceGroupNextResponse,\n ResourcesListNextResponse,\n ResourcesListByResourceGroupNextNextResponse,\n ResourcesListNextNextResponse\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class representing a Resources. */\nexport class ResourcesImpl implements Resources {\n private readonly client: ResourceManagementClientContext;\n\n /**\n * Initialize a new instance of the class Resources class.\n * @param client Reference to the service client\n */\n constructor(client: ResourceManagementClientContext) {\n this.client = client;\n }\n\n /**\n * Get all the resources for a resource group.\n * @param resourceGroupName The resource group with the resources to get.\n * @param options The options parameters.\n */\n public listByResourceGroup(\n resourceGroupName: string,\n options?: ResourcesListByResourceGroupOptionalParams\n ): PagedAsyncIterableIterator<GenericResourceExpanded> {\n const iter = this.listByResourceGroupPagingAll(resourceGroupName, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listByResourceGroupPagingPage(resourceGroupName, options);\n }\n };\n }\n\n private async *listByResourceGroupPagingPage(\n resourceGroupName: string,\n options?: ResourcesListByResourceGroupOptionalParams\n ): AsyncIterableIterator<GenericResourceExpanded[]> {\n let result = await this._listByResourceGroup(resourceGroupName, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listByResourceGroupNext(\n resourceGroupName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listByResourceGroupPagingAll(\n resourceGroupName: string,\n options?: ResourcesListByResourceGroupOptionalParams\n ): AsyncIterableIterator<GenericResourceExpanded> {\n for await (const page of this.listByResourceGroupPagingPage(\n resourceGroupName,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * Get all the resources in a subscription.\n * @param options The options parameters.\n */\n public list(\n options?: ResourcesListOptionalParams\n ): PagedAsyncIterableIterator<GenericResourceExpanded> {\n const iter = this.listPagingAll(options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listPagingPage(options);\n }\n };\n }\n\n private async *listPagingPage(\n options?: ResourcesListOptionalParams\n ): AsyncIterableIterator<GenericResourceExpanded[]> {\n let result = await this._list(options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listNext(continuationToken, options);\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listPagingAll(\n options?: ResourcesListOptionalParams\n ): AsyncIterableIterator<GenericResourceExpanded> {\n for await (const page of this.listPagingPage(options)) {\n yield* page;\n }\n }\n\n /**\n * ListByResourceGroupNext\n * @param resourceGroupName The resource group with the resources to get.\n * @param nextLink The nextLink from the previous successful call to the ListByResourceGroup method.\n * @param options The options parameters.\n */\n public listByResourceGroupNext(\n resourceGroupName: string,\n nextLink: string,\n options?: ResourcesListByResourceGroupNextOptionalParams\n ): PagedAsyncIterableIterator<GenericResourceExpanded> {\n const iter = this.listByResourceGroupNextPagingAll(\n resourceGroupName,\n nextLink,\n options\n );\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listByResourceGroupNextPagingPage(\n resourceGroupName,\n nextLink,\n options\n );\n }\n };\n }\n\n private async *listByResourceGroupNextPagingPage(\n resourceGroupName: string,\n nextLink: string,\n options?: ResourcesListByResourceGroupNextOptionalParams\n ): AsyncIterableIterator<GenericResourceExpanded[]> {\n let result = await this._listByResourceGroupNext(\n resourceGroupName,\n nextLink,\n options\n );\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listByResourceGroupNextNext(\n resourceGroupName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listByResourceGroupNextPagingAll(\n resourceGroupName: string,\n nextLink: string,\n options?: ResourcesListByResourceGroupNextOptionalParams\n ): AsyncIterableIterator<GenericResourceExpanded> {\n for await (const page of this.listByResourceGroupNextPagingPage(\n resourceGroupName,\n nextLink,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * ListNext\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n public listNext(\n nextLink: string,\n options?: ResourcesListNextOptionalParams\n ): PagedAsyncIterableIterator<GenericResourceExpanded> {\n const iter = this.listNextPagingAll(nextLink, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listNextPagingPage(nextLink, options);\n }\n };\n }\n\n private async *listNextPagingPage(\n nextLink: string,\n options?: ResourcesListNextOptionalParams\n ): AsyncIterableIterator<GenericResourceExpanded[]> {\n let result = await this._listNext(nextLink, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listNextNext(continuationToken, options);\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listNextPagingAll(\n nextLink: string,\n options?: ResourcesListNextOptionalParams\n ): AsyncIterableIterator<GenericResourceExpanded> {\n for await (const page of this.listNextPagingPage(nextLink, options)) {\n yield* page;\n }\n }\n\n /**\n * Get all the resources for a resource group.\n * @param resourceGroupName The resource group with the resources to get.\n * @param options The options parameters.\n */\n private _listByResourceGroup(\n resourceGroupName: string,\n options?: ResourcesListByResourceGroupOptionalParams\n ): Promise<ResourcesListByResourceGroupResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, options },\n listByResourceGroupOperationSpec\n );\n }\n\n /**\n * The resources to be moved must be in the same source resource group in the source subscription being\n * used. The target resource group may be in a different subscription. When moving resources, both the\n * source group and the target group are locked for the duration of the operation. Write and delete\n * operations are blocked on the groups until the move completes.\n * @param sourceResourceGroupName The name of the resource group from the source subscription\n * containing the resources to be moved.\n * @param parameters Parameters for moving resources.\n * @param options The options parameters.\n */\n async beginMoveResources(\n sourceResourceGroupName: string,\n parameters: ResourcesMoveInfo,\n options?: ResourcesMoveResourcesOptionalParams\n ): Promise<PollerLike<PollOperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { sourceResourceGroupName, parameters, options },\n moveResourcesOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * The resources to be moved must be in the same source resource group in the source subscription being\n * used. The target resource group may be in a different subscription. When moving resources, both the\n * source group and the target group are locked for the duration of the operation. Write and delete\n * operations are blocked on the groups until the move completes.\n * @param sourceResourceGroupName The name of the resource group from the source subscription\n * containing the resources to be moved.\n * @param parameters Parameters for moving resources.\n * @param options The options parameters.\n */\n async beginMoveResourcesAndWait(\n sourceResourceGroupName: string,\n parameters: ResourcesMoveInfo,\n options?: ResourcesMoveResourcesOptionalParams\n ): Promise<void> {\n const poller = await this.beginMoveResources(\n sourceResourceGroupName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * This operation checks whether the specified resources can be moved to the target. The resources to\n * be moved must be in the same source resource group in the source subscription being used. The target\n * resource group may be in a different subscription. If validation succeeds, it returns HTTP response\n * code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an\n * error message. Retrieve the URL in the Location header value to check the result of the long-running\n * operation.\n * @param sourceResourceGroupName The name of the resource group from the source subscription\n * containing the resources to be validated for move.\n * @param parameters Parameters for moving resources.\n * @param options The options parameters.\n */\n async beginValidateMoveResources(\n sourceResourceGroupName: string,\n parameters: ResourcesMoveInfo,\n options?: ResourcesValidateMoveResourcesOptionalParams\n ): Promise<PollerLike<PollOperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { sourceResourceGroupName, parameters, options },\n validateMoveResourcesOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * This operation checks whether the specified resources can be moved to the target. The resources to\n * be moved must be in the same source resource group in the source subscription being used. The target\n * resource group may be in a different subscription. If validation succeeds, it returns HTTP response\n * code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an\n * error message. Retrieve the URL in the Location header value to check the result of the long-running\n * operation.\n * @param sourceResourceGroupName The name of the resource group from the source subscription\n * containing the resources to be validated for move.\n * @param parameters Parameters for moving resources.\n * @param options The options parameters.\n */\n async beginValidateMoveResourcesAndWait(\n sourceResourceGroupName: string,\n parameters: ResourcesMoveInfo,\n options?: ResourcesValidateMoveResourcesOptionalParams\n ): Promise<void> {\n const poller = await this.beginValidateMoveResources(\n sourceResourceGroupName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Get all the resources in a subscription.\n * @param options The options parameters.\n */\n private _list(\n options?: ResourcesListOptionalParams\n ): Promise<ResourcesListResponse> {\n return this.client.sendOperationRequest({ options }, listOperationSpec);\n }\n\n /**\n * Checks whether a resource exists.\n * @param resourceGroupName The name of the resource group containing the resource to check. The name\n * is case insensitive.\n * @param resourceProviderNamespace The resource provider of the resource to check.\n * @param parentResourcePath The parent resource identity.\n * @param resourceType The resource type.\n * @param resourceName The name of the resource to check whether it exists.\n * @param apiVersion The API version to use for the operation.\n * @param options The options parameters.\n */\n checkExistence(\n resourceGroupName: string,\n resourceProviderNamespace: string,\n parentResourcePath: string,\n resourceType: string,\n resourceName: string,\n apiVersion: string,\n options?: ResourcesCheckExistenceOptionalParams\n ): Promise<ResourcesCheckExistenceResponse> {\n return this.client.sendOperationRequest(\n {\n resourceGroupName,\n resourceProviderNamespace,\n parentResourcePath,\n resourceType,\n resourceName,\n apiVersion,\n options\n },\n checkExistenceOperationSpec\n );\n }\n\n /**\n * Deletes a resource.\n * @param resourceGroupName The name of the resource group that contains the resource to delete. The\n * name is case insensitive.\n * @param resourceProviderNamespace The namespace of the resource provider.\n * @param parentResourcePath The parent resource identity.\n * @param resourceType The resource type.\n * @param resourceName The name of the resource to delete.\n * @param apiVersion The API version to use for the operation.\n * @param options The options parameters.\n */\n async beginDelete(\n resourceGroupName: string,\n resourceProviderNamespace: string,\n parentResourcePath: string,\n resourceType: string,\n resourceName: string,\n apiVersion: string,\n options?: ResourcesDeleteOptionalParams\n ): Promise<PollerLike<PollOperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n {\n resourceGroupName,\n resourceProviderNamespace,\n parentResourcePath,\n resourceType,\n resourceName,\n apiVersion,\n options\n },\n deleteOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Deletes a resource.\n * @param resourceGroupName The name of the resource group that contains the resource to delete. The\n * name is case insensitive.\n * @param resourceProviderNamespace The namespace of the resource provider.\n * @param parentResourcePath The parent resource identity.\n * @param resourceType The resource type.\n * @param resourceName The name of the resource to delete.\n * @param apiVersion The API version to use for the operation.\n * @param options The options parameters.\n */\n async beginDeleteAndWait(\n resourceGroupName: string,\n resourceProviderNamespace: string,\n parentResourcePath: string,\n resourceType: string,\n resourceName: string,\n apiVersion: string,\n options?: ResourcesDeleteOptionalParams\n ): Promise<void> {\n const poller = await this.beginDelete(\n resourceGroupName,\n resourceProviderNamespace,\n parentResourcePath,\n resourceType,\n resourceName,\n apiVersion,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Creates a resource.\n * @param resourceGroupName The name of the resource group for the resource. The name is case\n * insensitive.\n * @param resourceProviderNamespace The namespace of the resource provider.\n * @param parentResourcePath The parent resource identity.\n * @param resourceType The resource type of the resource to create.\n * @param resourceName The name of the resource to create.\n * @param apiVersion The API version to use for the operation.\n * @param parameters Parameters for creating or updating the resource.\n * @param options The options parameters.\n */\n async beginCreateOrUpdate(\n resourceGroupName: string,\n resourceProviderNamespace: string,\n parentResourcePath: string,\n resourceType: string,\n resourceName: string,\n apiVersion: string,\n parameters: GenericResource,\n options?: ResourcesCreateOrUpdateOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<ResourcesCreateOrUpdateResponse>,\n ResourcesCreateOrUpdateResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<ResourcesCreateOrUpdateResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n {\n resourceGroupName,\n resourceProviderNamespace,\n parentResourcePath,\n resourceType,\n resourceName,\n apiVersion,\n parameters,\n options\n },\n createOrUpdateOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Creates a resource.\n * @param resourceGroupName The name of the resource group for the resource. The name is case\n * insensitive.\n * @param resourceProviderNamespace The namespace of the resource provider.\n * @param parentResourcePath The parent resource identity.\n * @param resourceType The resource type of the resource to create.\n * @param resourceName The name of the resource to create.\n * @param apiVersion The API version to use for the operation.\n * @param parameters Parameters for creating or updating the resource.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateAndWait(\n resourceGroupName: string,\n resourceProviderNamespace: string,\n parentResourcePath: string,\n resourceType: string,\n resourceName: string,\n apiVersion: string,\n parameters: GenericResource,\n options?: ResourcesCreateOrUpdateOptionalParams\n ): Promise<ResourcesCreateOrUpdateResponse> {\n const poller = await this.beginCreateOrUpdate(\n resourceGroupName,\n resourceProviderNamespace,\n parentResourcePath,\n resourceType,\n resourceName,\n apiVersion,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Updates a resource.\n * @param resourceGroupName The name of the resource group for the resource. The name is case\n * insensitive.\n * @param resourceProviderNamespace The namespace of the resource provider.\n * @param parentResourcePath The parent resource identity.\n * @param resourceType The resource type of the resource to update.\n * @param resourceName The name of the resource to update.\n * @param apiVersion The API version to use for the operation.\n * @param parameters Parameters for updating the resource.\n * @param options The options parameters.\n */\n async beginUpdate(\n resourceGroupName: string,\n resourceProviderNamespace: string,\n parentResourcePath: string,\n resourceType: string,\n resourceName: string,\n apiVersion: string,\n parameters: GenericResource,\n options?: ResourcesUpdateOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<ResourcesUpdateResponse>,\n ResourcesUpdateResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<ResourcesUpdateResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n {\n resourceGroupName,\n resourceProviderNamespace,\n parentResourcePath,\n resourceType,\n resourceName,\n apiVersion,\n parameters,\n options\n },\n updateOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Updates a resource.\n * @param resourceGroupName The name of the resource group for the resource. The name is case\n * insensitive.\n * @param resourceProviderNamespace The namespace of the resource provider.\n * @param parentResourcePath The parent resource identity.\n * @param resourceType The resource type of the resource to update.\n * @param resourceName The name of the resource to update.\n * @param apiVersion The API version to use for the operation.\n * @param parameters Parameters for updating the resource.\n * @param options The options parameters.\n */\n async beginUpdateAndWait(\n resourceGroupName: string,\n resourceProviderNamespace: string,\n parentResourcePath: string,\n resourceType: string,\n resourceName: string,\n apiVersion: string,\n parameters: GenericResource,\n options?: ResourcesUpdateOptionalParams\n ): Promise<ResourcesUpdateResponse> {\n const poller = await this.beginUpdate(\n resourceGroupName,\n resourceProviderNamespace,\n parentResourcePath,\n resourceType,\n resourceName,\n apiVersion,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Gets a resource.\n * @param resourceGroupName The name of the resource group containing the resource to get. The name is\n * case insensitive.\n * @param resourceProviderNamespace The namespace of the resource provider.\n * @param parentResourcePath The parent resource identity.\n * @param resourceType The resource type of the resource.\n * @param resourceName The name of the resource to get.\n * @param apiVersion The API version to use for the operation.\n * @param options The options parameters.\n */\n get(\n resourceGroupName: string,\n resourceProviderNamespace: string,\n parentResourcePath: string,\n resourceType: string,\n resourceName: string,\n apiVersion: string,\n options?: ResourcesGetOptionalParams\n ): Promise<ResourcesGetResponse> {\n return this.client.sendOperationRequest(\n {\n resourceGroupName,\n resourceProviderNamespace,\n parentResourcePath,\n resourceType,\n resourceName,\n apiVersion,\n options\n },\n getOperationSpec\n );\n }\n\n /**\n * Checks by ID whether a resource exists.\n * @param resourceId The fully qualified ID of the resource, including the resource name and resource\n * type. Use the format,\n * /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}\n * @param apiVersion The API version to use for the operation.\n * @param options The options parameters.\n */\n checkExistenceById(\n resourceId: string,\n apiVersion: string,\n options?: ResourcesCheckExistenceByIdOptionalParams\n ): Promise<ResourcesCheckExistenceByIdResponse> {\n return this.client.sendOperationRequest(\n { resourceId, apiVersion, options },\n checkExistenceByIdOperationSpec\n );\n }\n\n /**\n * Deletes a resource by ID.\n * @param resourceId The fully qualified ID of the resource, including the resource name and resource\n * type. Use the format,\n * /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}\n * @param apiVersion The API version to use for the operation.\n * @param options The options parameters.\n */\n async beginDeleteById(\n resourceId: string,\n apiVersion: string,\n options?: ResourcesDeleteByIdOptionalParams\n ): Promise<PollerLike<PollOperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { resourceId, apiVersion, options },\n deleteByIdOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Deletes a resource by ID.\n * @param resourceId The fully qualified ID of the resource, including the resource name and resource\n * type. Use the format,\n * /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}\n * @param apiVersion The API version to use for the operation.\n * @param options The options parameters.\n */\n async beginDeleteByIdAndWait(\n resourceId: string,\n apiVersion: string,\n options?: ResourcesDeleteByIdOptionalParams\n ): Promise<void> {\n const poller = await this.beginDeleteById(resourceId, apiVersion, options);\n return poller.pollUntilDone();\n }\n\n /**\n * Create a resource by ID.\n * @param resourceId The fully qualified ID of the resource, including the resource name and resource\n * type. Use the format,\n * /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}\n * @param apiVersion The API version to use for the operation.\n * @param parameters Create or update resource parameters.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateById(\n resourceId: string,\n apiVersion: string,\n parameters: GenericResource,\n options?: ResourcesCreateOrUpdateByIdOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<ResourcesCreateOrUpdateByIdResponse>,\n ResourcesCreateOrUpdateByIdResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<ResourcesCreateOrUpdateByIdResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { resourceId, apiVersion, parameters, options },\n createOrUpdateByIdOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Create a resource by ID.\n * @param resourceId The fully qualified ID of the resource, including the resource name and resource\n * type. Use the format,\n * /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}\n * @param apiVersion The API version to use for the operation.\n * @param parameters Create or update resource parameters.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateByIdAndWait(\n resourceId: string,\n apiVersion: string,\n parameters: GenericResource,\n options?: ResourcesCreateOrUpdateByIdOptionalParams\n ): Promise<ResourcesCreateOrUpdateByIdResponse> {\n const poller = await this.beginCreateOrUpdateById(\n resourceId,\n apiVersion,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Updates a resource by ID.\n * @param resourceId The fully qualified ID of the resource, including the resource name and resource\n * type. Use the format,\n * /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}\n * @param apiVersion The API version to use for the operation.\n * @param parameters Update resource parameters.\n * @param options The options parameters.\n */\n async beginUpdateById(\n resourceId: string,\n apiVersion: string,\n parameters: GenericResource,\n options?: ResourcesUpdateByIdOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<ResourcesUpdateByIdResponse>,\n ResourcesUpdateByIdResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<ResourcesUpdateByIdResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { resourceId, apiVersion, parameters, options },\n updateByIdOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Updates a resource by ID.\n * @param resourceId The fully qualified ID of the resource, including the resource name and resource\n * type. Use the format,\n * /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}\n * @param apiVersion The API version to use for the operation.\n * @param parameters Update resource parameters.\n * @param options The options parameters.\n */\n async beginUpdateByIdAndWait(\n resourceId: string,\n apiVersion: string,\n parameters: GenericResource,\n options?: ResourcesUpdateByIdOptionalParams\n ): Promise<ResourcesUpdateByIdResponse> {\n const poller = await this.beginUpdateById(\n resourceId,\n apiVersion,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Gets a resource by ID.\n * @param resourceId The fully qualified ID of the resource, including the resource name and resource\n * type. Use the format,\n * /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}\n * @param apiVersion The API version to use for the operation.\n * @param options The options parameters.\n */\n getById(\n resourceId: string,\n apiVersion: string,\n options?: ResourcesGetByIdOptionalParams\n ): Promise<ResourcesGetByIdResponse> {\n return this.client.sendOperationRequest(\n { resourceId, apiVersion, options },\n getByIdOperationSpec\n );\n }\n\n /**\n * ListByResourceGroupNext\n * @param resourceGroupName The resource group with the resources to get.\n * @param nextLink The nextLink from the previous successful call to the ListByResourceGroup method.\n * @param options The options parameters.\n */\n private _listByResourceGroupNext(\n resourceGroupName: string,\n nextLink: string,\n options?: ResourcesListByResourceGroupNextOptionalParams\n ): Promise<ResourcesListByResourceGroupNextResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, nextLink, options },\n listByResourceGroupNextOperationSpec\n );\n }\n\n /**\n * ListNext\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n private _listNext(\n nextLink: string,\n options?: ResourcesListNextOptionalParams\n ): Promise<ResourcesListNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listNextOperationSpec\n );\n }\n\n /**\n * ListByResourceGroupNextNext\n * @param resourceGroupName The resource group with the resources to get.\n * @param nextLink The nextLink from the previous successful call to the ListByResourceGroupNext\n * method.\n * @param options The options parameters.\n */\n private _listByResourceGroupNextNext(\n resourceGroupName: string,\n nextLink: string,\n options?: ResourcesListByResourceGroupNextNextOptionalParams\n ): Promise<ResourcesListByResourceGroupNextNextResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, nextLink, options },\n listByResourceGroupNextNextOperationSpec\n );\n }\n\n /**\n * ListNextNext\n * @param nextLink The nextLink from the previous successful call to the ListNext method.\n * @param options The options parameters.\n */\n private _listNextNext(\n nextLink: string,\n options?: ResourcesListNextNextOptionalParams\n ): Promise<ResourcesListNextNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listNextNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst listByResourceGroupOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ResourceListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.filter,\n Parameters.top,\n Parameters.expand\n ],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst moveResourcesOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources\",\n httpMethod: \"POST\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters4,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.sourceResourceGroupName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst validateMoveResourcesOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources\",\n httpMethod: \"POST\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters4,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.sourceResourceGroupName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst listOperationSpec: coreClient.OperationSpec = {\n path: \"/subscriptions/{subscriptionId}/resources\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ResourceListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.filter,\n Parameters.top,\n Parameters.expand\n ],\n urlParameters: [Parameters.$host, Parameters.subscriptionId],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst checkExistenceOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}\",\n httpMethod: \"HEAD\",\n responses: {\n 204: {},\n 404: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceGroupName,\n Parameters.resourceProviderNamespace,\n Parameters.parentResourcePath,\n Parameters.resourceType,\n Parameters.resourceName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst deleteOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceGroupName,\n Parameters.resourceProviderNamespace,\n Parameters.parentResourcePath,\n Parameters.resourceType,\n Parameters.resourceName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.GenericResource\n },\n 201: {\n bodyMapper: Mappers.GenericResource\n },\n 202: {\n bodyMapper: Mappers.GenericResource\n },\n 204: {\n bodyMapper: Mappers.GenericResource\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters5,\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceGroupName,\n Parameters.resourceProviderNamespace,\n Parameters.parentResourcePath,\n Parameters.resourceType,\n Parameters.resourceName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst updateOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}\",\n httpMethod: \"PATCH\",\n responses: {\n 200: {\n bodyMapper: Mappers.GenericResource\n },\n 201: {\n bodyMapper: Mappers.GenericResource\n },\n 202: {\n bodyMapper: Mappers.GenericResource\n },\n 204: {\n bodyMapper: Mappers.GenericResource\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters5,\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceGroupName,\n Parameters.resourceProviderNamespace,\n Parameters.parentResourcePath,\n Parameters.resourceType,\n Parameters.resourceName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst getOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.GenericResource\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceGroupName,\n Parameters.resourceProviderNamespace,\n Parameters.parentResourcePath,\n Parameters.resourceType,\n Parameters.resourceName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst checkExistenceByIdOperationSpec: coreClient.OperationSpec = {\n path: \"/{resourceId}\",\n httpMethod: \"HEAD\",\n responses: {\n 204: {},\n 404: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [Parameters.$host, Parameters.resourceId],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst deleteByIdOperationSpec: coreClient.OperationSpec = {\n path: \"/{resourceId}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [Parameters.$host, Parameters.resourceId],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateByIdOperationSpec: coreClient.OperationSpec = {\n path: \"/{resourceId}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.GenericResource\n },\n 201: {\n bodyMapper: Mappers.GenericResource\n },\n 202: {\n bodyMapper: Mappers.GenericResource\n },\n 204: {\n bodyMapper: Mappers.GenericResource\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters5,\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [Parameters.$host, Parameters.resourceId],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst updateByIdOperationSpec: coreClient.OperationSpec = {\n path: \"/{resourceId}\",\n httpMethod: \"PATCH\",\n responses: {\n 200: {\n bodyMapper: Mappers.GenericResource\n },\n 201: {\n bodyMapper: Mappers.GenericResource\n },\n 202: {\n bodyMapper: Mappers.GenericResource\n },\n 204: {\n bodyMapper: Mappers.GenericResource\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters5,\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [Parameters.$host, Parameters.resourceId],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst getByIdOperationSpec: coreClient.OperationSpec = {\n path: \"/{resourceId}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.GenericResource\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [Parameters.$host, Parameters.resourceId],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listByResourceGroupNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ResourceListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.filter,\n Parameters.top,\n Parameters.expand\n ],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ResourceListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.filter,\n Parameters.top,\n Parameters.expand\n ],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listByResourceGroupNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ResourceListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.filter,\n Parameters.top,\n Parameters.expand\n ],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ResourceListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.filter,\n Parameters.top,\n Parameters.expand\n ],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport \"@azure/core-paging\";\nimport { PagedAsyncIterableIterator } from \"@azure/core-paging\";\nimport { ResourceGroups } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { ResourceManagementClientContext } from \"../resourceManagementClientContext\";\nimport { PollerLike, PollOperationState } from \"@azure/core-lro\";\nimport { LroEngine } from \"../lro\";\nimport { CoreClientLro, shouldDeserializeLro } from \"../coreClientLro\";\nimport {\n ResourceGroup,\n ResourceGroupsListNextOptionalParams,\n ResourceGroupsListOptionalParams,\n ResourceGroupsListNextNextOptionalParams,\n ResourceGroupsCheckExistenceOptionalParams,\n ResourceGroupsCheckExistenceResponse,\n ResourceGroupsCreateOrUpdateOptionalParams,\n ResourceGroupsCreateOrUpdateResponse,\n ResourceGroupsDeleteOptionalParams,\n ResourceGroupsGetOptionalParams,\n ResourceGroupsGetResponse,\n ResourceGroupPatchable,\n ResourceGroupsUpdateOptionalParams,\n ResourceGroupsUpdateResponse,\n ExportTemplateRequest,\n ResourceGroupsExportTemplateOptionalParams,\n ResourceGroupsExportTemplateResponse,\n ResourceGroupsListResponse,\n ResourceGroupsListNextResponse,\n ResourceGroupsListNextNextResponse\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class representing a ResourceGroups. */\nexport class ResourceGroupsImpl implements ResourceGroups {\n private readonly client: ResourceManagementClientContext;\n\n /**\n * Initialize a new instance of the class ResourceGroups class.\n * @param client Reference to the service client\n */\n constructor(client: ResourceManagementClientContext) {\n this.client = client;\n }\n\n /**\n * Gets all the resource groups for a subscription.\n * @param options The options parameters.\n */\n public list(\n options?: ResourceGroupsListOptionalParams\n ): PagedAsyncIterableIterator<ResourceGroup> {\n const iter = this.listPagingAll(options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listPagingPage(options);\n }\n };\n }\n\n private async *listPagingPage(\n options?: ResourceGroupsListOptionalParams\n ): AsyncIterableIterator<ResourceGroup[]> {\n let result = await this._list(options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listNext(continuationToken, options);\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listPagingAll(\n options?: ResourceGroupsListOptionalParams\n ): AsyncIterableIterator<ResourceGroup> {\n for await (const page of this.listPagingPage(options)) {\n yield* page;\n }\n }\n\n /**\n * ListNext\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n public listNext(\n nextLink: string,\n options?: ResourceGroupsListNextOptionalParams\n ): PagedAsyncIterableIterator<ResourceGroup> {\n const iter = this.listNextPagingAll(nextLink, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listNextPagingPage(nextLink, options);\n }\n };\n }\n\n private async *listNextPagingPage(\n nextLink: string,\n options?: ResourceGroupsListNextOptionalParams\n ): AsyncIterableIterator<ResourceGroup[]> {\n let result = await this._listNext(nextLink, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listNextNext(continuationToken, options);\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listNextPagingAll(\n nextLink: string,\n options?: ResourceGroupsListNextOptionalParams\n ): AsyncIterableIterator<ResourceGroup> {\n for await (const page of this.listNextPagingPage(nextLink, options)) {\n yield* page;\n }\n }\n\n /**\n * Checks whether a resource group exists.\n * @param resourceGroupName The name of the resource group to check. The name is case insensitive.\n * @param options The options parameters.\n */\n checkExistence(\n resourceGroupName: string,\n options?: ResourceGroupsCheckExistenceOptionalParams\n ): Promise<ResourceGroupsCheckExistenceResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, options },\n checkExistenceOperationSpec\n );\n }\n\n /**\n * Creates or updates a resource group.\n * @param resourceGroupName The name of the resource group to create or update. Can include\n * alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that\n * match the allowed characters.\n * @param parameters Parameters supplied to the create or update a resource group.\n * @param options The options parameters.\n */\n createOrUpdate(\n resourceGroupName: string,\n parameters: ResourceGroup,\n options?: ResourceGroupsCreateOrUpdateOptionalParams\n ): Promise<ResourceGroupsCreateOrUpdateResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, parameters, options },\n createOrUpdateOperationSpec\n );\n }\n\n /**\n * When you delete a resource group, all of its resources are also deleted. Deleting a resource group\n * deletes all of its template deployments and currently stored operations.\n * @param resourceGroupName The name of the resource group to delete. The name is case insensitive.\n * @param options The options parameters.\n */\n async beginDelete(\n resourceGroupName: string,\n options?: ResourceGroupsDeleteOptionalParams\n ): Promise<PollerLike<PollOperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { resourceGroupName, options },\n deleteOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * When you delete a resource group, all of its resources are also deleted. Deleting a resource group\n * deletes all of its template deployments and currently stored operations.\n * @param resourceGroupName The name of the resource group to delete. The name is case insensitive.\n * @param options The options parameters.\n */\n async beginDeleteAndWait(\n resourceGroupName: string,\n options?: ResourceGroupsDeleteOptionalParams\n ): Promise<void> {\n const poller = await this.beginDelete(resourceGroupName, options);\n return poller.pollUntilDone();\n }\n\n /**\n * Gets a resource group.\n * @param resourceGroupName The name of the resource group to get. The name is case insensitive.\n * @param options The options parameters.\n */\n get(\n resourceGroupName: string,\n options?: ResourceGroupsGetOptionalParams\n ): Promise<ResourceGroupsGetResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, options },\n getOperationSpec\n );\n }\n\n /**\n * Resource groups can be updated through a simple PATCH operation to a group address. The format of\n * the request is the same as that for creating a resource group. If a field is unspecified, the\n * current value is retained.\n * @param resourceGroupName The name of the resource group to update. The name is case insensitive.\n * @param parameters Parameters supplied to update a resource group.\n * @param options The options parameters.\n */\n update(\n resourceGroupName: string,\n parameters: ResourceGroupPatchable,\n options?: ResourceGroupsUpdateOptionalParams\n ): Promise<ResourceGroupsUpdateResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, parameters, options },\n updateOperationSpec\n );\n }\n\n /**\n * Captures the specified resource group as a template.\n * @param resourceGroupName The name of the resource group. The name is case insensitive.\n * @param parameters Parameters for exporting the template.\n * @param options The options parameters.\n */\n async beginExportTemplate(\n resourceGroupName: string,\n parameters: ExportTemplateRequest,\n options?: ResourceGroupsExportTemplateOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<ResourceGroupsExportTemplateResponse>,\n ResourceGroupsExportTemplateResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<ResourceGroupsExportTemplateResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { resourceGroupName, parameters, options },\n exportTemplateOperationSpec,\n \"location\"\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Captures the specified resource group as a template.\n * @param resourceGroupName The name of the resource group. The name is case insensitive.\n * @param parameters Parameters for exporting the template.\n * @param options The options parameters.\n */\n async beginExportTemplateAndWait(\n resourceGroupName: string,\n parameters: ExportTemplateRequest,\n options?: ResourceGroupsExportTemplateOptionalParams\n ): Promise<ResourceGroupsExportTemplateResponse> {\n const poller = await this.beginExportTemplate(\n resourceGroupName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Gets all the resource groups for a subscription.\n * @param options The options parameters.\n */\n private _list(\n options?: ResourceGroupsListOptionalParams\n ): Promise<ResourceGroupsListResponse> {\n return this.client.sendOperationRequest({ options }, listOperationSpec);\n }\n\n /**\n * ListNext\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n private _listNext(\n nextLink: string,\n options?: ResourceGroupsListNextOptionalParams\n ): Promise<ResourceGroupsListNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listNextOperationSpec\n );\n }\n\n /**\n * ListNextNext\n * @param nextLink The nextLink from the previous successful call to the ListNext method.\n * @param options The options parameters.\n */\n private _listNextNext(\n nextLink: string,\n options?: ResourceGroupsListNextNextOptionalParams\n ): Promise<ResourceGroupsListNextNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listNextNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst checkExistenceOperationSpec: coreClient.OperationSpec = {\n path: \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}\",\n httpMethod: \"HEAD\",\n responses: {\n 204: {},\n 404: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateOperationSpec: coreClient.OperationSpec = {\n path: \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.ResourceGroup\n },\n 201: {\n bodyMapper: Mappers.ResourceGroup\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters6,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst deleteOperationSpec: coreClient.OperationSpec = {\n path: \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.forceDeletionTypes],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getOperationSpec: coreClient.OperationSpec = {\n path: \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ResourceGroup\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst updateOperationSpec: coreClient.OperationSpec = {\n path: \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}\",\n httpMethod: \"PATCH\",\n responses: {\n 200: {\n bodyMapper: Mappers.ResourceGroup\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters7,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst exportTemplateOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.ResourceGroupExportResult\n },\n 201: {\n bodyMapper: Mappers.ResourceGroupExportResult\n },\n 202: {\n bodyMapper: Mappers.ResourceGroupExportResult\n },\n 204: {\n bodyMapper: Mappers.ResourceGroupExportResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters8,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceGroupName1\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst listOperationSpec: coreClient.OperationSpec = {\n path: \"/subscriptions/{subscriptionId}/resourcegroups\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ResourceGroupListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [Parameters.$host, Parameters.subscriptionId],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ResourceGroupListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ResourceGroupListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport \"@azure/core-paging\";\nimport { PagedAsyncIterableIterator } from \"@azure/core-paging\";\nimport { TagsOperations } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { ResourceManagementClientContext } from \"../resourceManagementClientContext\";\nimport {\n TagDetails,\n TagsOperationsListNextOptionalParams,\n TagsOperationsListOptionalParams,\n TagsOperationsListNextNextOptionalParams,\n TagsOperationsDeleteValueOptionalParams,\n TagsOperationsCreateOrUpdateValueOptionalParams,\n TagsOperationsCreateOrUpdateValueResponse,\n TagsOperationsCreateOrUpdateOptionalParams,\n TagsOperationsCreateOrUpdateResponse,\n TagsOperationsDeleteOptionalParams,\n TagsOperationsListResponse,\n TagsResource,\n TagsOperationsCreateOrUpdateAtScopeOptionalParams,\n TagsOperationsCreateOrUpdateAtScopeResponse,\n TagsPatchResource,\n TagsOperationsUpdateAtScopeOptionalParams,\n TagsOperationsUpdateAtScopeResponse,\n TagsOperationsGetAtScopeOptionalParams,\n TagsOperationsGetAtScopeResponse,\n TagsOperationsDeleteAtScopeOptionalParams,\n TagsOperationsListNextResponse,\n TagsOperationsListNextNextResponse\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class representing a TagsOperations. */\nexport class TagsOperationsImpl implements TagsOperations {\n private readonly client: ResourceManagementClientContext;\n\n /**\n * Initialize a new instance of the class TagsOperations class.\n * @param client Reference to the service client\n */\n constructor(client: ResourceManagementClientContext) {\n this.client = client;\n }\n\n /**\n * This operation performs a union of predefined tags, resource tags, resource group tags and\n * subscription tags, and returns a summary of usage for each tag name and value under the given\n * subscription. In case of a large number of tags, this operation may return a previously cached\n * result.\n * @param options The options parameters.\n */\n public list(\n options?: TagsOperationsListOptionalParams\n ): PagedAsyncIterableIterator<TagDetails> {\n const iter = this.listPagingAll(options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listPagingPage(options);\n }\n };\n }\n\n private async *listPagingPage(\n options?: TagsOperationsListOptionalParams\n ): AsyncIterableIterator<TagDetails[]> {\n let result = await this._list(options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listNext(continuationToken, options);\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listPagingAll(\n options?: TagsOperationsListOptionalParams\n ): AsyncIterableIterator<TagDetails> {\n for await (const page of this.listPagingPage(options)) {\n yield* page;\n }\n }\n\n /**\n * ListNext\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n public listNext(\n nextLink: string,\n options?: TagsOperationsListNextOptionalParams\n ): PagedAsyncIterableIterator<TagDetails> {\n const iter = this.listNextPagingAll(nextLink, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listNextPagingPage(nextLink, options);\n }\n };\n }\n\n private async *listNextPagingPage(\n nextLink: string,\n options?: TagsOperationsListNextOptionalParams\n ): AsyncIterableIterator<TagDetails[]> {\n let result = await this._listNext(nextLink, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listNextNext(continuationToken, options);\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listNextPagingAll(\n nextLink: string,\n options?: TagsOperationsListNextOptionalParams\n ): AsyncIterableIterator<TagDetails> {\n for await (const page of this.listNextPagingPage(nextLink, options)) {\n yield* page;\n }\n }\n\n /**\n * This operation allows deleting a value from the list of predefined values for an existing predefined\n * tag name. The value being deleted must not be in use as a tag value for the given tag name for any\n * resource.\n * @param tagName The name of the tag.\n * @param tagValue The value of the tag to delete.\n * @param options The options parameters.\n */\n deleteValue(\n tagName: string,\n tagValue: string,\n options?: TagsOperationsDeleteValueOptionalParams\n ): Promise<void> {\n return this.client.sendOperationRequest(\n { tagName, tagValue, options },\n deleteValueOperationSpec\n );\n }\n\n /**\n * This operation allows adding a value to the list of predefined values for an existing predefined tag\n * name. A tag value can have a maximum of 256 characters.\n * @param tagName The name of the tag.\n * @param tagValue The value of the tag to create.\n * @param options The options parameters.\n */\n createOrUpdateValue(\n tagName: string,\n tagValue: string,\n options?: TagsOperationsCreateOrUpdateValueOptionalParams\n ): Promise<TagsOperationsCreateOrUpdateValueResponse> {\n return this.client.sendOperationRequest(\n { tagName, tagValue, options },\n createOrUpdateValueOperationSpec\n );\n }\n\n /**\n * This operation allows adding a name to the list of predefined tag names for the given subscription.\n * A tag name can have a maximum of 512 characters and is case-insensitive. Tag names cannot have the\n * following prefixes which are reserved for Azure use: 'microsoft', 'azure', 'windows'.\n * @param tagName The name of the tag to create.\n * @param options The options parameters.\n */\n createOrUpdate(\n tagName: string,\n options?: TagsOperationsCreateOrUpdateOptionalParams\n ): Promise<TagsOperationsCreateOrUpdateResponse> {\n return this.client.sendOperationRequest(\n { tagName, options },\n createOrUpdateOperationSpec\n );\n }\n\n /**\n * This operation allows deleting a name from the list of predefined tag names for the given\n * subscription. The name being deleted must not be in use as a tag name for any resource. All\n * predefined values for the given name must have already been deleted.\n * @param tagName The name of the tag.\n * @param options The options parameters.\n */\n delete(\n tagName: string,\n options?: TagsOperationsDeleteOptionalParams\n ): Promise<void> {\n return this.client.sendOperationRequest(\n { tagName, options },\n deleteOperationSpec\n );\n }\n\n /**\n * This operation performs a union of predefined tags, resource tags, resource group tags and\n * subscription tags, and returns a summary of usage for each tag name and value under the given\n * subscription. In case of a large number of tags, this operation may return a previously cached\n * result.\n * @param options The options parameters.\n */\n private _list(\n options?: TagsOperationsListOptionalParams\n ): Promise<TagsOperationsListResponse> {\n return this.client.sendOperationRequest({ options }, listOperationSpec);\n }\n\n /**\n * This operation allows adding or replacing the entire set of tags on the specified resource or\n * subscription. The specified entity can have a maximum of 50 tags.\n * @param scope The resource scope.\n * @param parameters Wrapper resource for tags API requests and responses.\n * @param options The options parameters.\n */\n createOrUpdateAtScope(\n scope: string,\n parameters: TagsResource,\n options?: TagsOperationsCreateOrUpdateAtScopeOptionalParams\n ): Promise<TagsOperationsCreateOrUpdateAtScopeResponse> {\n return this.client.sendOperationRequest(\n { scope, parameters, options },\n createOrUpdateAtScopeOperationSpec\n );\n }\n\n /**\n * This operation allows replacing, merging or selectively deleting tags on the specified resource or\n * subscription. The specified entity can have a maximum of 50 tags at the end of the operation. The\n * 'replace' option replaces the entire set of existing tags with a new set. The 'merge' option allows\n * adding tags with new names and updating the values of tags with existing names. The 'delete' option\n * allows selectively deleting tags based on given names or name/value pairs.\n * @param scope The resource scope.\n * @param parameters Wrapper resource for tags patch API request only.\n * @param options The options parameters.\n */\n updateAtScope(\n scope: string,\n parameters: TagsPatchResource,\n options?: TagsOperationsUpdateAtScopeOptionalParams\n ): Promise<TagsOperationsUpdateAtScopeResponse> {\n return this.client.sendOperationRequest(\n { scope, parameters, options },\n updateAtScopeOperationSpec\n );\n }\n\n /**\n * Gets the entire set of tags on a resource or subscription.\n * @param scope The resource scope.\n * @param options The options parameters.\n */\n getAtScope(\n scope: string,\n options?: TagsOperationsGetAtScopeOptionalParams\n ): Promise<TagsOperationsGetAtScopeResponse> {\n return this.client.sendOperationRequest(\n { scope, options },\n getAtScopeOperationSpec\n );\n }\n\n /**\n * Deletes the entire set of tags on a resource or subscription.\n * @param scope The resource scope.\n * @param options The options parameters.\n */\n deleteAtScope(\n scope: string,\n options?: TagsOperationsDeleteAtScopeOptionalParams\n ): Promise<void> {\n return this.client.sendOperationRequest(\n { scope, options },\n deleteAtScopeOperationSpec\n );\n }\n\n /**\n * ListNext\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n private _listNext(\n nextLink: string,\n options?: TagsOperationsListNextOptionalParams\n ): Promise<TagsOperationsListNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listNextOperationSpec\n );\n }\n\n /**\n * ListNextNext\n * @param nextLink The nextLink from the previous successful call to the ListNext method.\n * @param options The options parameters.\n */\n private _listNextNext(\n nextLink: string,\n options?: TagsOperationsListNextNextOptionalParams\n ): Promise<TagsOperationsListNextNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listNextNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst deleteValueOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.tagName,\n Parameters.tagValue\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateValueOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.TagValue\n },\n 201: {\n bodyMapper: Mappers.TagValue\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.tagName,\n Parameters.tagValue\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateOperationSpec: coreClient.OperationSpec = {\n path: \"/subscriptions/{subscriptionId}/tagNames/{tagName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.TagDetails\n },\n 201: {\n bodyMapper: Mappers.TagDetails\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.tagName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst deleteOperationSpec: coreClient.OperationSpec = {\n path: \"/subscriptions/{subscriptionId}/tagNames/{tagName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.tagName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listOperationSpec: coreClient.OperationSpec = {\n path: \"/subscriptions/{subscriptionId}/tagNames\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.TagsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.subscriptionId],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateAtScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/{scope}/providers/Microsoft.Resources/tags/default\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.TagsResource\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters9,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.scope],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst updateAtScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/{scope}/providers/Microsoft.Resources/tags/default\",\n httpMethod: \"PATCH\",\n responses: {\n 200: {\n bodyMapper: Mappers.TagsResource\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters10,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.scope],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst getAtScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/{scope}/providers/Microsoft.Resources/tags/default\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.TagsResource\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.scope],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst deleteAtScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/{scope}/providers/Microsoft.Resources/tags/default\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.scope],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.TagsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.TagsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport \"@azure/core-paging\";\nimport { PagedAsyncIterableIterator } from \"@azure/core-paging\";\nimport { DeploymentOperations } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { ResourceManagementClientContext } from \"../resourceManagementClientContext\";\nimport {\n DeploymentOperation,\n DeploymentOperationsListAtScopeNextOptionalParams,\n DeploymentOperationsListAtScopeOptionalParams,\n DeploymentOperationsListAtTenantScopeNextOptionalParams,\n DeploymentOperationsListAtTenantScopeOptionalParams,\n DeploymentOperationsListAtManagementGroupScopeNextOptionalParams,\n DeploymentOperationsListAtManagementGroupScopeOptionalParams,\n DeploymentOperationsListAtSubscriptionScopeNextOptionalParams,\n DeploymentOperationsListAtSubscriptionScopeOptionalParams,\n DeploymentOperationsListNextOptionalParams,\n DeploymentOperationsListOptionalParams,\n DeploymentOperationsListAtScopeNextNextOptionalParams,\n DeploymentOperationsListAtTenantScopeNextNextOptionalParams,\n DeploymentOperationsListAtManagementGroupScopeNextNextOptionalParams,\n DeploymentOperationsListAtSubscriptionScopeNextNextOptionalParams,\n DeploymentOperationsListNextNextOptionalParams,\n DeploymentOperationsGetAtScopeOptionalParams,\n DeploymentOperationsGetAtScopeResponse,\n DeploymentOperationsListAtScopeResponse,\n DeploymentOperationsGetAtTenantScopeOptionalParams,\n DeploymentOperationsGetAtTenantScopeResponse,\n DeploymentOperationsListAtTenantScopeResponse,\n DeploymentOperationsGetAtManagementGroupScopeOptionalParams,\n DeploymentOperationsGetAtManagementGroupScopeResponse,\n DeploymentOperationsListAtManagementGroupScopeResponse,\n DeploymentOperationsGetAtSubscriptionScopeOptionalParams,\n DeploymentOperationsGetAtSubscriptionScopeResponse,\n DeploymentOperationsListAtSubscriptionScopeResponse,\n DeploymentOperationsGetOptionalParams,\n DeploymentOperationsGetResponse,\n DeploymentOperationsListResponse,\n DeploymentOperationsListAtScopeNextResponse,\n DeploymentOperationsListAtTenantScopeNextResponse,\n DeploymentOperationsListAtManagementGroupScopeNextResponse,\n DeploymentOperationsListAtSubscriptionScopeNextResponse,\n DeploymentOperationsListNextResponse,\n DeploymentOperationsListAtScopeNextNextResponse,\n DeploymentOperationsListAtTenantScopeNextNextResponse,\n DeploymentOperationsListAtManagementGroupScopeNextNextResponse,\n DeploymentOperationsListAtSubscriptionScopeNextNextResponse,\n DeploymentOperationsListNextNextResponse\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class representing a DeploymentOperations. */\nexport class DeploymentOperationsImpl implements DeploymentOperations {\n private readonly client: ResourceManagementClientContext;\n\n /**\n * Initialize a new instance of the class DeploymentOperations class.\n * @param client Reference to the service client\n */\n constructor(client: ResourceManagementClientContext) {\n this.client = client;\n }\n\n /**\n * Gets all deployments operations for a deployment.\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n public listAtScope(\n scope: string,\n deploymentName: string,\n options?: DeploymentOperationsListAtScopeOptionalParams\n ): PagedAsyncIterableIterator<DeploymentOperation> {\n const iter = this.listAtScopePagingAll(scope, deploymentName, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtScopePagingPage(scope, deploymentName, options);\n }\n };\n }\n\n private async *listAtScopePagingPage(\n scope: string,\n deploymentName: string,\n options?: DeploymentOperationsListAtScopeOptionalParams\n ): AsyncIterableIterator<DeploymentOperation[]> {\n let result = await this._listAtScope(scope, deploymentName, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtScopeNext(\n scope,\n deploymentName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtScopePagingAll(\n scope: string,\n deploymentName: string,\n options?: DeploymentOperationsListAtScopeOptionalParams\n ): AsyncIterableIterator<DeploymentOperation> {\n for await (const page of this.listAtScopePagingPage(\n scope,\n deploymentName,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * Gets all deployments operations for a deployment.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n public listAtTenantScope(\n deploymentName: string,\n options?: DeploymentOperationsListAtTenantScopeOptionalParams\n ): PagedAsyncIterableIterator<DeploymentOperation> {\n const iter = this.listAtTenantScopePagingAll(deploymentName, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtTenantScopePagingPage(deploymentName, options);\n }\n };\n }\n\n private async *listAtTenantScopePagingPage(\n deploymentName: string,\n options?: DeploymentOperationsListAtTenantScopeOptionalParams\n ): AsyncIterableIterator<DeploymentOperation[]> {\n let result = await this._listAtTenantScope(deploymentName, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtTenantScopeNext(\n deploymentName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtTenantScopePagingAll(\n deploymentName: string,\n options?: DeploymentOperationsListAtTenantScopeOptionalParams\n ): AsyncIterableIterator<DeploymentOperation> {\n for await (const page of this.listAtTenantScopePagingPage(\n deploymentName,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * Gets all deployments operations for a deployment.\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n public listAtManagementGroupScope(\n groupId: string,\n deploymentName: string,\n options?: DeploymentOperationsListAtManagementGroupScopeOptionalParams\n ): PagedAsyncIterableIterator<DeploymentOperation> {\n const iter = this.listAtManagementGroupScopePagingAll(\n groupId,\n deploymentName,\n options\n );\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtManagementGroupScopePagingPage(\n groupId,\n deploymentName,\n options\n );\n }\n };\n }\n\n private async *listAtManagementGroupScopePagingPage(\n groupId: string,\n deploymentName: string,\n options?: DeploymentOperationsListAtManagementGroupScopeOptionalParams\n ): AsyncIterableIterator<DeploymentOperation[]> {\n let result = await this._listAtManagementGroupScope(\n groupId,\n deploymentName,\n options\n );\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtManagementGroupScopeNext(\n groupId,\n deploymentName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtManagementGroupScopePagingAll(\n groupId: string,\n deploymentName: string,\n options?: DeploymentOperationsListAtManagementGroupScopeOptionalParams\n ): AsyncIterableIterator<DeploymentOperation> {\n for await (const page of this.listAtManagementGroupScopePagingPage(\n groupId,\n deploymentName,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * Gets all deployments operations for a deployment.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n public listAtSubscriptionScope(\n deploymentName: string,\n options?: DeploymentOperationsListAtSubscriptionScopeOptionalParams\n ): PagedAsyncIterableIterator<DeploymentOperation> {\n const iter = this.listAtSubscriptionScopePagingAll(deploymentName, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtSubscriptionScopePagingPage(deploymentName, options);\n }\n };\n }\n\n private async *listAtSubscriptionScopePagingPage(\n deploymentName: string,\n options?: DeploymentOperationsListAtSubscriptionScopeOptionalParams\n ): AsyncIterableIterator<DeploymentOperation[]> {\n let result = await this._listAtSubscriptionScope(deploymentName, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtSubscriptionScopeNext(\n deploymentName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtSubscriptionScopePagingAll(\n deploymentName: string,\n options?: DeploymentOperationsListAtSubscriptionScopeOptionalParams\n ): AsyncIterableIterator<DeploymentOperation> {\n for await (const page of this.listAtSubscriptionScopePagingPage(\n deploymentName,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * Gets all deployments operations for a deployment.\n * @param resourceGroupName The name of the resource group. The name is case insensitive.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n public list(\n resourceGroupName: string,\n deploymentName: string,\n options?: DeploymentOperationsListOptionalParams\n ): PagedAsyncIterableIterator<DeploymentOperation> {\n const iter = this.listPagingAll(resourceGroupName, deploymentName, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listPagingPage(resourceGroupName, deploymentName, options);\n }\n };\n }\n\n private async *listPagingPage(\n resourceGroupName: string,\n deploymentName: string,\n options?: DeploymentOperationsListOptionalParams\n ): AsyncIterableIterator<DeploymentOperation[]> {\n let result = await this._list(resourceGroupName, deploymentName, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listNext(\n resourceGroupName,\n deploymentName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listPagingAll(\n resourceGroupName: string,\n deploymentName: string,\n options?: DeploymentOperationsListOptionalParams\n ): AsyncIterableIterator<DeploymentOperation> {\n for await (const page of this.listPagingPage(\n resourceGroupName,\n deploymentName,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * ListAtScopeNext\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param nextLink The nextLink from the previous successful call to the ListAtScope method.\n * @param options The options parameters.\n */\n public listAtScopeNext(\n scope: string,\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtScopeNextOptionalParams\n ): PagedAsyncIterableIterator<DeploymentOperation> {\n const iter = this.listAtScopeNextPagingAll(\n scope,\n deploymentName,\n nextLink,\n options\n );\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtScopeNextPagingPage(\n scope,\n deploymentName,\n nextLink,\n options\n );\n }\n };\n }\n\n private async *listAtScopeNextPagingPage(\n scope: string,\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentOperation[]> {\n let result = await this._listAtScopeNext(\n scope,\n deploymentName,\n nextLink,\n options\n );\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtScopeNextNext(\n scope,\n deploymentName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtScopeNextPagingAll(\n scope: string,\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentOperation> {\n for await (const page of this.listAtScopeNextPagingPage(\n scope,\n deploymentName,\n nextLink,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * ListAtTenantScopeNext\n * @param deploymentName The name of the deployment.\n * @param nextLink The nextLink from the previous successful call to the ListAtTenantScope method.\n * @param options The options parameters.\n */\n public listAtTenantScopeNext(\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtTenantScopeNextOptionalParams\n ): PagedAsyncIterableIterator<DeploymentOperation> {\n const iter = this.listAtTenantScopeNextPagingAll(\n deploymentName,\n nextLink,\n options\n );\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtTenantScopeNextPagingPage(\n deploymentName,\n nextLink,\n options\n );\n }\n };\n }\n\n private async *listAtTenantScopeNextPagingPage(\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtTenantScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentOperation[]> {\n let result = await this._listAtTenantScopeNext(\n deploymentName,\n nextLink,\n options\n );\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtTenantScopeNextNext(\n deploymentName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtTenantScopeNextPagingAll(\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtTenantScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentOperation> {\n for await (const page of this.listAtTenantScopeNextPagingPage(\n deploymentName,\n nextLink,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * ListAtManagementGroupScopeNext\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param nextLink The nextLink from the previous successful call to the ListAtManagementGroupScope\n * method.\n * @param options The options parameters.\n */\n public listAtManagementGroupScopeNext(\n groupId: string,\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtManagementGroupScopeNextOptionalParams\n ): PagedAsyncIterableIterator<DeploymentOperation> {\n const iter = this.listAtManagementGroupScopeNextPagingAll(\n groupId,\n deploymentName,\n nextLink,\n options\n );\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtManagementGroupScopeNextPagingPage(\n groupId,\n deploymentName,\n nextLink,\n options\n );\n }\n };\n }\n\n private async *listAtManagementGroupScopeNextPagingPage(\n groupId: string,\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtManagementGroupScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentOperation[]> {\n let result = await this._listAtManagementGroupScopeNext(\n groupId,\n deploymentName,\n nextLink,\n options\n );\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtManagementGroupScopeNextNext(\n groupId,\n deploymentName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtManagementGroupScopeNextPagingAll(\n groupId: string,\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtManagementGroupScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentOperation> {\n for await (const page of this.listAtManagementGroupScopeNextPagingPage(\n groupId,\n deploymentName,\n nextLink,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * ListAtSubscriptionScopeNext\n * @param deploymentName The name of the deployment.\n * @param nextLink The nextLink from the previous successful call to the ListAtSubscriptionScope\n * method.\n * @param options The options parameters.\n */\n public listAtSubscriptionScopeNext(\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtSubscriptionScopeNextOptionalParams\n ): PagedAsyncIterableIterator<DeploymentOperation> {\n const iter = this.listAtSubscriptionScopeNextPagingAll(\n deploymentName,\n nextLink,\n options\n );\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtSubscriptionScopeNextPagingPage(\n deploymentName,\n nextLink,\n options\n );\n }\n };\n }\n\n private async *listAtSubscriptionScopeNextPagingPage(\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtSubscriptionScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentOperation[]> {\n let result = await this._listAtSubscriptionScopeNext(\n deploymentName,\n nextLink,\n options\n );\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtSubscriptionScopeNextNext(\n deploymentName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtSubscriptionScopeNextPagingAll(\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtSubscriptionScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentOperation> {\n for await (const page of this.listAtSubscriptionScopeNextPagingPage(\n deploymentName,\n nextLink,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * ListNext\n * @param resourceGroupName The name of the resource group. The name is case insensitive.\n * @param deploymentName The name of the deployment.\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n public listNext(\n resourceGroupName: string,\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListNextOptionalParams\n ): PagedAsyncIterableIterator<DeploymentOperation> {\n const iter = this.listNextPagingAll(\n resourceGroupName,\n deploymentName,\n nextLink,\n options\n );\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listNextPagingPage(\n resourceGroupName,\n deploymentName,\n nextLink,\n options\n );\n }\n };\n }\n\n private async *listNextPagingPage(\n resourceGroupName: string,\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListNextOptionalParams\n ): AsyncIterableIterator<DeploymentOperation[]> {\n let result = await this._listNext(\n resourceGroupName,\n deploymentName,\n nextLink,\n options\n );\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listNextNext(\n resourceGroupName,\n deploymentName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listNextPagingAll(\n resourceGroupName: string,\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListNextOptionalParams\n ): AsyncIterableIterator<DeploymentOperation> {\n for await (const page of this.listNextPagingPage(\n resourceGroupName,\n deploymentName,\n nextLink,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * Gets a deployments operation.\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param operationId The ID of the operation to get.\n * @param options The options parameters.\n */\n getAtScope(\n scope: string,\n deploymentName: string,\n operationId: string,\n options?: DeploymentOperationsGetAtScopeOptionalParams\n ): Promise<DeploymentOperationsGetAtScopeResponse> {\n return this.client.sendOperationRequest(\n { scope, deploymentName, operationId, options },\n getAtScopeOperationSpec\n );\n }\n\n /**\n * Gets all deployments operations for a deployment.\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n private _listAtScope(\n scope: string,\n deploymentName: string,\n options?: DeploymentOperationsListAtScopeOptionalParams\n ): Promise<DeploymentOperationsListAtScopeResponse> {\n return this.client.sendOperationRequest(\n { scope, deploymentName, options },\n listAtScopeOperationSpec\n );\n }\n\n /**\n * Gets a deployments operation.\n * @param deploymentName The name of the deployment.\n * @param operationId The ID of the operation to get.\n * @param options The options parameters.\n */\n getAtTenantScope(\n deploymentName: string,\n operationId: string,\n options?: DeploymentOperationsGetAtTenantScopeOptionalParams\n ): Promise<DeploymentOperationsGetAtTenantScopeResponse> {\n return this.client.sendOperationRequest(\n { deploymentName, operationId, options },\n getAtTenantScopeOperationSpec\n );\n }\n\n /**\n * Gets all deployments operations for a deployment.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n private _listAtTenantScope(\n deploymentName: string,\n options?: DeploymentOperationsListAtTenantScopeOptionalParams\n ): Promise<DeploymentOperationsListAtTenantScopeResponse> {\n return this.client.sendOperationRequest(\n { deploymentName, options },\n listAtTenantScopeOperationSpec\n );\n }\n\n /**\n * Gets a deployments operation.\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param operationId The ID of the operation to get.\n * @param options The options parameters.\n */\n getAtManagementGroupScope(\n groupId: string,\n deploymentName: string,\n operationId: string,\n options?: DeploymentOperationsGetAtManagementGroupScopeOptionalParams\n ): Promise<DeploymentOperationsGetAtManagementGroupScopeResponse> {\n return this.client.sendOperationRequest(\n { groupId, deploymentName, operationId, options },\n getAtManagementGroupScopeOperationSpec\n );\n }\n\n /**\n * Gets all deployments operations for a deployment.\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n private _listAtManagementGroupScope(\n groupId: string,\n deploymentName: string,\n options?: DeploymentOperationsListAtManagementGroupScopeOptionalParams\n ): Promise<DeploymentOperationsListAtManagementGroupScopeResponse> {\n return this.client.sendOperationRequest(\n { groupId, deploymentName, options },\n listAtManagementGroupScopeOperationSpec\n );\n }\n\n /**\n * Gets a deployments operation.\n * @param deploymentName The name of the deployment.\n * @param operationId The ID of the operation to get.\n * @param options The options parameters.\n */\n getAtSubscriptionScope(\n deploymentName: string,\n operationId: string,\n options?: DeploymentOperationsGetAtSubscriptionScopeOptionalParams\n ): Promise<DeploymentOperationsGetAtSubscriptionScopeResponse> {\n return this.client.sendOperationRequest(\n { deploymentName, operationId, options },\n getAtSubscriptionScopeOperationSpec\n );\n }\n\n /**\n * Gets all deployments operations for a deployment.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n private _listAtSubscriptionScope(\n deploymentName: string,\n options?: DeploymentOperationsListAtSubscriptionScopeOptionalParams\n ): Promise<DeploymentOperationsListAtSubscriptionScopeResponse> {\n return this.client.sendOperationRequest(\n { deploymentName, options },\n listAtSubscriptionScopeOperationSpec\n );\n }\n\n /**\n * Gets a deployments operation.\n * @param resourceGroupName The name of the resource group. The name is case insensitive.\n * @param deploymentName The name of the deployment.\n * @param operationId The ID of the operation to get.\n * @param options The options parameters.\n */\n get(\n resourceGroupName: string,\n deploymentName: string,\n operationId: string,\n options?: DeploymentOperationsGetOptionalParams\n ): Promise<DeploymentOperationsGetResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, deploymentName, operationId, options },\n getOperationSpec\n );\n }\n\n /**\n * Gets all deployments operations for a deployment.\n * @param resourceGroupName The name of the resource group. The name is case insensitive.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n private _list(\n resourceGroupName: string,\n deploymentName: string,\n options?: DeploymentOperationsListOptionalParams\n ): Promise<DeploymentOperationsListResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, deploymentName, options },\n listOperationSpec\n );\n }\n\n /**\n * ListAtScopeNext\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param nextLink The nextLink from the previous successful call to the ListAtScope method.\n * @param options The options parameters.\n */\n private _listAtScopeNext(\n scope: string,\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtScopeNextOptionalParams\n ): Promise<DeploymentOperationsListAtScopeNextResponse> {\n return this.client.sendOperationRequest(\n { scope, deploymentName, nextLink, options },\n listAtScopeNextOperationSpec\n );\n }\n\n /**\n * ListAtTenantScopeNext\n * @param deploymentName The name of the deployment.\n * @param nextLink The nextLink from the previous successful call to the ListAtTenantScope method.\n * @param options The options parameters.\n */\n private _listAtTenantScopeNext(\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtTenantScopeNextOptionalParams\n ): Promise<DeploymentOperationsListAtTenantScopeNextResponse> {\n return this.client.sendOperationRequest(\n { deploymentName, nextLink, options },\n listAtTenantScopeNextOperationSpec\n );\n }\n\n /**\n * ListAtManagementGroupScopeNext\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param nextLink The nextLink from the previous successful call to the ListAtManagementGroupScope\n * method.\n * @param options The options parameters.\n */\n private _listAtManagementGroupScopeNext(\n groupId: string,\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtManagementGroupScopeNextOptionalParams\n ): Promise<DeploymentOperationsListAtManagementGroupScopeNextResponse> {\n return this.client.sendOperationRequest(\n { groupId, deploymentName, nextLink, options },\n listAtManagementGroupScopeNextOperationSpec\n );\n }\n\n /**\n * ListAtSubscriptionScopeNext\n * @param deploymentName The name of the deployment.\n * @param nextLink The nextLink from the previous successful call to the ListAtSubscriptionScope\n * method.\n * @param options The options parameters.\n */\n private _listAtSubscriptionScopeNext(\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtSubscriptionScopeNextOptionalParams\n ): Promise<DeploymentOperationsListAtSubscriptionScopeNextResponse> {\n return this.client.sendOperationRequest(\n { deploymentName, nextLink, options },\n listAtSubscriptionScopeNextOperationSpec\n );\n }\n\n /**\n * ListNext\n * @param resourceGroupName The name of the resource group. The name is case insensitive.\n * @param deploymentName The name of the deployment.\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n private _listNext(\n resourceGroupName: string,\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListNextOptionalParams\n ): Promise<DeploymentOperationsListNextResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, deploymentName, nextLink, options },\n listNextOperationSpec\n );\n }\n\n /**\n * ListAtScopeNextNext\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param nextLink The nextLink from the previous successful call to the ListAtScopeNext method.\n * @param options The options parameters.\n */\n private _listAtScopeNextNext(\n scope: string,\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtScopeNextNextOptionalParams\n ): Promise<DeploymentOperationsListAtScopeNextNextResponse> {\n return this.client.sendOperationRequest(\n { scope, deploymentName, nextLink, options },\n listAtScopeNextNextOperationSpec\n );\n }\n\n /**\n * ListAtTenantScopeNextNext\n * @param deploymentName The name of the deployment.\n * @param nextLink The nextLink from the previous successful call to the ListAtTenantScopeNext method.\n * @param options The options parameters.\n */\n private _listAtTenantScopeNextNext(\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtTenantScopeNextNextOptionalParams\n ): Promise<DeploymentOperationsListAtTenantScopeNextNextResponse> {\n return this.client.sendOperationRequest(\n { deploymentName, nextLink, options },\n listAtTenantScopeNextNextOperationSpec\n );\n }\n\n /**\n * ListAtManagementGroupScopeNextNext\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param nextLink The nextLink from the previous successful call to the ListAtManagementGroupScopeNext\n * method.\n * @param options The options parameters.\n */\n private _listAtManagementGroupScopeNextNext(\n groupId: string,\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtManagementGroupScopeNextNextOptionalParams\n ): Promise<DeploymentOperationsListAtManagementGroupScopeNextNextResponse> {\n return this.client.sendOperationRequest(\n { groupId, deploymentName, nextLink, options },\n listAtManagementGroupScopeNextNextOperationSpec\n );\n }\n\n /**\n * ListAtSubscriptionScopeNextNext\n * @param deploymentName The name of the deployment.\n * @param nextLink The nextLink from the previous successful call to the ListAtSubscriptionScopeNext\n * method.\n * @param options The options parameters.\n */\n private _listAtSubscriptionScopeNextNext(\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtSubscriptionScopeNextNextOptionalParams\n ): Promise<DeploymentOperationsListAtSubscriptionScopeNextNextResponse> {\n return this.client.sendOperationRequest(\n { deploymentName, nextLink, options },\n listAtSubscriptionScopeNextNextOperationSpec\n );\n }\n\n /**\n * ListNextNext\n * @param resourceGroupName The name of the resource group. The name is case insensitive.\n * @param deploymentName The name of the deployment.\n * @param nextLink The nextLink from the previous successful call to the ListNext method.\n * @param options The options parameters.\n */\n private _listNextNext(\n resourceGroupName: string,\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListNextNextOptionalParams\n ): Promise<DeploymentOperationsListNextNextResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, deploymentName, nextLink, options },\n listNextNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst getAtScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperation\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.scope,\n Parameters.deploymentName,\n Parameters.operationId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperationsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.scope,\n Parameters.deploymentName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getAtTenantScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperation\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.operationId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtTenantScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/providers/Microsoft.Resources/deployments/{deploymentName}/operations\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperationsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top],\n urlParameters: [Parameters.$host, Parameters.deploymentName],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getAtManagementGroupScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperation\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.groupId,\n Parameters.operationId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtManagementGroupScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperationsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.groupId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getAtSubscriptionScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperation\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId,\n Parameters.operationId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtSubscriptionScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperationsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperation\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId,\n Parameters.resourceGroupName,\n Parameters.operationId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperationsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtScopeNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperationsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.scope,\n Parameters.deploymentName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtTenantScopeNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperationsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.deploymentName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtManagementGroupScopeNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperationsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.deploymentName,\n Parameters.groupId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtSubscriptionScopeNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperationsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.deploymentName,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperationsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.deploymentName,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtScopeNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperationsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.scope,\n Parameters.deploymentName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtTenantScopeNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperationsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.deploymentName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtManagementGroupScopeNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperationsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.deploymentName,\n Parameters.groupId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtSubscriptionScopeNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperationsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.deploymentName,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperationsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.deploymentName,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport * as coreClient from \"@azure/core-client\";\nimport * as coreAuth from \"@azure/core-auth\";\nimport { ResourceManagementClientOptionalParams } from \"./models\";\n\nexport class ResourceManagementClientContext extends coreClient.ServiceClient {\n $host: string;\n apiVersion: string;\n subscriptionId: string;\n\n /**\n * Initializes a new instance of the ResourceManagementClientContext class.\n * @param credentials Subscription credentials which uniquely identify client subscription.\n * @param subscriptionId The Microsoft Azure subscription ID.\n * @param options The parameter options\n */\n constructor(\n credentials: coreAuth.TokenCredential,\n subscriptionId: string,\n options?: ResourceManagementClientOptionalParams\n ) {\n if (credentials === undefined) {\n throw new Error(\"'credentials' cannot be null\");\n }\n if (subscriptionId === undefined) {\n throw new Error(\"'subscriptionId' cannot be null\");\n }\n\n // Initializing default values for options\n if (!options) {\n options = {};\n }\n const defaults: ResourceManagementClientOptionalParams = {\n requestContentType: \"application/json; charset=utf-8\",\n credential: credentials\n };\n\n const packageDetails = `azsdk-js-arm-resources/30.0.0-beta.1`;\n const userAgentPrefix =\n options.userAgentOptions && options.userAgentOptions.userAgentPrefix\n ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}`\n : `${packageDetails}`;\n\n if (!options.credentialScopes) {\n options.credentialScopes = [\"https://management.azure.com/.default\"];\n }\n const optionsWithDefaults = {\n ...defaults,\n ...options,\n userAgentOptions: {\n userAgentPrefix\n },\n baseUri: options.endpoint || \"https://management.azure.com\"\n };\n super(optionsWithDefaults);\n // Parameter assignments\n this.subscriptionId = subscriptionId;\n\n // Assigning values to Constant parameters\n this.$host = options.$host || \"https://management.azure.com\";\n this.apiVersion = options.apiVersion || \"2021-04-01\";\n }\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport * as coreAuth from \"@azure/core-auth\";\nimport {\n OperationsImpl,\n DeploymentsImpl,\n ProvidersImpl,\n ProviderResourceTypesImpl,\n ResourcesImpl,\n ResourceGroupsImpl,\n TagsOperationsImpl,\n DeploymentOperationsImpl\n} from \"./operations\";\nimport {\n Operations,\n Deployments,\n Providers,\n ProviderResourceTypes,\n Resources,\n ResourceGroups,\n TagsOperations,\n DeploymentOperations\n} from \"./operationsInterfaces\";\nimport { ResourceManagementClientContext } from \"./resourceManagementClientContext\";\nimport { ResourceManagementClientOptionalParams } from \"./models\";\n\nexport class ResourceManagementClient extends ResourceManagementClientContext {\n /**\n * Initializes a new instance of the ResourceManagementClient class.\n * @param credentials Subscription credentials which uniquely identify client subscription.\n * @param subscriptionId The Microsoft Azure subscription ID.\n * @param options The parameter options\n */\n constructor(\n credentials: coreAuth.TokenCredential,\n subscriptionId: string,\n options?: ResourceManagementClientOptionalParams\n ) {\n super(credentials, subscriptionId, options);\n this.operations = new OperationsImpl(this);\n this.deployments = new DeploymentsImpl(this);\n this.providers = new ProvidersImpl(this);\n this.providerResourceTypes = new ProviderResourceTypesImpl(this);\n this.resources = new ResourcesImpl(this);\n this.resourceGroups = new ResourceGroupsImpl(this);\n this.tagsOperations = new TagsOperationsImpl(this);\n this.deploymentOperations = new DeploymentOperationsImpl(this);\n }\n\n operations: Operations;\n deployments: Deployments;\n providers: Providers;\n providerResourceTypes: ProviderResourceTypes;\n resources: Resources;\n resourceGroups: ResourceGroups;\n tagsOperations: TagsOperations;\n deploymentOperations: DeploymentOperations;\n}\n"],"names":["KnownExpressionEvaluationOptionsScopeType","KnownProvisioningState","KnownAliasPathTokenType","KnownAliasPathAttributes","KnownProviderAuthorizationConsentState","KnownExtendedLocationType","KnownTagsPatchOperation","DeploymentMapper","ScopedDeploymentMapper","ScopedDeploymentWhatIfMapper","DeploymentWhatIfMapper","ProviderRegistrationRequestMapper","ResourcesMoveInfoMapper","GenericResourceMapper","ResourceGroupMapper","ResourceGroupPatchableMapper","ExportTemplateRequestMapper","TagsResourceMapper","TagsPatchResourceMapper","__asyncValues","__asyncDelegator","coreClient.createSerializer","Mappers.OperationListResult","Mappers.CloudError","Parameters.apiVersion","Parameters.$host","Parameters.accept","Parameters.nextLink","Poller","serializer","Parameters.scope","Parameters.deploymentName","Mappers.DeploymentExtended","Parameters.parameters","Parameters.contentType","Mappers.DeploymentValidateResult","Mappers.DeploymentExportResult","Mappers.DeploymentListResult","Parameters.filter","Parameters.top","Parameters.parameters1","Mappers.WhatIfOperationResult","Parameters.parameters2","Parameters.groupId","Parameters.subscriptionId","Parameters.parameters3","Parameters.resourceGroupName","Mappers.TemplateHashResult","Parameters.template","listOperationSpec","listAtTenantScopeOperationSpec","getOperationSpec","getAtTenantScopeOperationSpec","listNextOperationSpec","listAtTenantScopeNextOperationSpec","listNextNextOperationSpec","listAtTenantScopeNextNextOperationSpec","Mappers.Provider","Parameters.resourceProviderNamespace","Mappers.ProviderPermissionListResult","Parameters.properties","Mappers.ProviderListResult","Parameters.expand","Mappers.ProviderResourceTypeListResult","listByResourceGroupOperationSpec","checkExistenceOperationSpec","deleteOperationSpec","createOrUpdateOperationSpec","listByResourceGroupNextOperationSpec","listByResourceGroupNextNextOperationSpec","Mappers.ResourceListResult","Parameters.parameters4","Parameters.sourceResourceGroupName","Parameters.apiVersion1","Parameters.parentResourcePath","Parameters.resourceType","Parameters.resourceName","Mappers.GenericResource","Parameters.parameters5","Parameters.resourceId","updateOperationSpec","exportTemplateOperationSpec","Mappers.ResourceGroup","Parameters.parameters6","Parameters.forceDeletionTypes","Parameters.parameters7","Mappers.ResourceGroupExportResult","Parameters.parameters8","Parameters.resourceGroupName1","Mappers.ResourceGroupListResult","createOrUpdateAtScopeOperationSpec","getAtScopeOperationSpec","deleteAtScopeOperationSpec","Parameters.tagName","Parameters.tagValue","Mappers.TagValue","Mappers.TagDetails","Mappers.TagsListResult","Mappers.TagsResource","Parameters.parameters9","Parameters.parameters10","listAtScopeOperationSpec","getAtManagementGroupScopeOperationSpec","listAtManagementGroupScopeOperationSpec","getAtSubscriptionScopeOperationSpec","listAtSubscriptionScopeOperationSpec","listAtScopeNextOperationSpec","listAtManagementGroupScopeNextOperationSpec","listAtSubscriptionScopeNextOperationSpec","listAtScopeNextNextOperationSpec","listAtManagementGroupScopeNextNextOperationSpec","listAtSubscriptionScopeNextNextOperationSpec","Mappers.DeploymentOperation","Parameters.operationId","Mappers.DeploymentOperationsListResult","coreClient.ServiceClient"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/models/index.ts","../src/models/mappers.ts","../src/models/parameters.ts","../src/operations/operations.ts","../src/lro/requestUtils.ts","../src/lro/models.ts","../src/lro/azureAsyncPolling.ts","../src/lro/bodyPolling.ts","../src/lro/locationPolling.ts","../src/lro/passthrough.ts","../src/lro/stateMachine.ts","../src/lro/operation.ts","../src/lro/lroEngine.ts","../src/coreClientLro.ts","../src/operations/deployments.ts","../src/operations/providers.ts","../src/operations/providerResourceTypes.ts","../src/operations/resources.ts","../src/operations/resourceGroups.ts","../src/operations/tagsOperations.ts","../src/operations/deploymentOperations.ts","../src/resourceManagementClientContext.ts","../src/resourceManagementClient.ts"],"sourcesContent":["/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport * as coreClient from \"@azure/core-client\";\n\n/** Result of the request to list Microsoft.Resources operations. It contains a list of operations and a URL link to get the next set of results. */\nexport interface OperationListResult {\n /** List of Microsoft.Resources operations. */\n value?: Operation[];\n /** URL to get the next set of operation list results if there are any. */\n nextLink?: string;\n}\n\n/** Microsoft.Resources operation */\nexport interface Operation {\n /** Operation name: {provider}/{resource}/{operation} */\n name?: string;\n /** The object that represents the operation. */\n display?: OperationDisplay;\n}\n\n/** The object that represents the operation. */\nexport interface OperationDisplay {\n /** Service provider: Microsoft.Resources */\n provider?: string;\n /** Resource on which the operation is performed: Profile, endpoint, etc. */\n resource?: string;\n /** Operation type: Read, write, delete, etc. */\n operation?: string;\n /** Description of the operation. */\n description?: string;\n}\n\n/** An error response for a resource management request. */\nexport interface CloudError {\n /** Common error response for all Azure Resource Manager APIs to return error details for failed operations. (This also follows the OData error response format.) */\n error?: ErrorResponse;\n}\n\n/** Common error response for all Azure Resource Manager APIs to return error details for failed operations. (This also follows the OData error response format.) */\nexport interface ErrorResponse {\n /**\n * The error code.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly code?: string;\n /**\n * The error message.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly message?: string;\n /**\n * The error target.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly target?: string;\n /**\n * The error details.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly details?: ErrorResponse[];\n /**\n * The error additional info.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly additionalInfo?: ErrorAdditionalInfo[];\n}\n\n/** The resource management error additional info. */\nexport interface ErrorAdditionalInfo {\n /**\n * The additional info type.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly type?: string;\n /**\n * The additional info.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly info?: Record<string, unknown>;\n}\n\n/** Deployment operation parameters. */\nexport interface Deployment {\n /** The location to store the deployment data. */\n location?: string;\n /** The deployment properties. */\n properties: DeploymentProperties;\n /** Deployment tags */\n tags?: { [propertyName: string]: string };\n}\n\n/** Deployment properties. */\nexport interface DeploymentProperties {\n /** The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both. */\n template?: Record<string, unknown>;\n /** The URI of the template. Use either the templateLink property or the template property, but not both. */\n templateLink?: TemplateLink;\n /** Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string. */\n parameters?: Record<string, unknown>;\n /** The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both. */\n parametersLink?: ParametersLink;\n /** The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources. */\n mode: DeploymentMode;\n /** The debug setting of the deployment. */\n debugSetting?: DebugSetting;\n /** The deployment on error behavior. */\n onErrorDeployment?: OnErrorDeployment;\n /** Specifies whether template expressions are evaluated within the scope of the parent template or nested template. Only applicable to nested templates. If not specified, default value is outer. */\n expressionEvaluationOptions?: ExpressionEvaluationOptions;\n}\n\n/** Entity representing the reference to the template. */\nexport interface TemplateLink {\n /** The URI of the template to deploy. Use either the uri or id property, but not both. */\n uri?: string;\n /** The resource id of a Template Spec. Use either the id or uri property, but not both. */\n id?: string;\n /** The relativePath property can be used to deploy a linked template at a location relative to the parent. If the parent template was linked with a TemplateSpec, this will reference an artifact in the TemplateSpec. If the parent was linked with a URI, the child deployment will be a combination of the parent and relativePath URIs */\n relativePath?: string;\n /** If included, must match the ContentVersion in the template. */\n contentVersion?: string;\n /** The query string (for example, a SAS token) to be used with the templateLink URI. */\n queryString?: string;\n}\n\n/** Entity representing the reference to the deployment parameters. */\nexport interface ParametersLink {\n /** The URI of the parameters file. */\n uri: string;\n /** If included, must match the ContentVersion in the template. */\n contentVersion?: string;\n}\n\n/** The debug setting. */\nexport interface DebugSetting {\n /** Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations. */\n detailLevel?: string;\n}\n\n/** Deployment on error behavior. */\nexport interface OnErrorDeployment {\n /** The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment. */\n type?: OnErrorDeploymentType;\n /** The deployment to be used on error case. */\n deploymentName?: string;\n}\n\n/** Specifies whether template expressions are evaluated within the scope of the parent template or nested template. */\nexport interface ExpressionEvaluationOptions {\n /** The scope to be used for evaluation of parameters, variables and functions in a nested template. */\n scope?: ExpressionEvaluationOptionsScopeType;\n}\n\n/** Deployment information. */\nexport interface DeploymentExtended {\n /**\n * The ID of the deployment.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly id?: string;\n /**\n * The name of the deployment.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly name?: string;\n /**\n * The type of the deployment.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly type?: string;\n /** the location of the deployment. */\n location?: string;\n /** Deployment properties. */\n properties?: DeploymentPropertiesExtended;\n /** Deployment tags */\n tags?: { [propertyName: string]: string };\n}\n\n/** Deployment properties with additional details. */\nexport interface DeploymentPropertiesExtended {\n /**\n * Denotes the state of provisioning.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly provisioningState?: ProvisioningState;\n /**\n * The correlation ID of the deployment.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly correlationId?: string;\n /**\n * The timestamp of the template deployment.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly timestamp?: Date;\n /**\n * The duration of the template deployment.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly duration?: string;\n /**\n * Key/value pairs that represent deployment output.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly outputs?: Record<string, unknown>;\n /**\n * The list of resource providers needed for the deployment.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly providers?: Provider[];\n /**\n * The list of deployment dependencies.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly dependencies?: Dependency[];\n /**\n * The URI referencing the template.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly templateLink?: TemplateLink;\n /**\n * Deployment parameters.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly parameters?: Record<string, unknown>;\n /**\n * The URI referencing the parameters.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly parametersLink?: ParametersLink;\n /**\n * The deployment mode. Possible values are Incremental and Complete.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly mode?: DeploymentMode;\n /**\n * The debug setting of the deployment.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly debugSetting?: DebugSetting;\n /**\n * The deployment on error behavior.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly onErrorDeployment?: OnErrorDeploymentExtended;\n /**\n * The hash produced for the template.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly templateHash?: string;\n /**\n * Array of provisioned resources.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly outputResources?: ResourceReference[];\n /**\n * Array of validated resources.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly validatedResources?: ResourceReference[];\n /**\n * The deployment error.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly error?: ErrorResponse;\n}\n\n/** Resource provider information. */\nexport interface Provider {\n /**\n * The provider ID.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly id?: string;\n /** The namespace of the resource provider. */\n namespace?: string;\n /**\n * The registration state of the resource provider.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly registrationState?: string;\n /**\n * The registration policy of the resource provider.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly registrationPolicy?: string;\n /**\n * The collection of provider resource types.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceTypes?: ProviderResourceType[];\n /** The provider authorization consent state. */\n providerAuthorizationConsentState?: ProviderAuthorizationConsentState;\n}\n\n/** Resource type managed by the resource provider. */\nexport interface ProviderResourceType {\n /** The resource type. */\n resourceType?: string;\n /** The collection of locations where this resource type can be created. */\n locations?: string[];\n /** The location mappings that are supported by this resource type. */\n locationMappings?: ProviderExtendedLocation[];\n /** The aliases that are supported by this resource type. */\n aliases?: Alias[];\n /** The API version. */\n apiVersions?: string[];\n /**\n * The default API version.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly defaultApiVersion?: string;\n /**\n * The API profiles for the resource provider.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly apiProfiles?: ApiProfile[];\n /** The additional capabilities offered by this resource type. */\n capabilities?: string;\n /** The properties. */\n properties?: { [propertyName: string]: string };\n}\n\n/** The provider extended location. */\nexport interface ProviderExtendedLocation {\n /** The azure location. */\n location?: string;\n /** The extended location type. */\n type?: string;\n /** The extended locations for the azure location. */\n extendedLocations?: string[];\n}\n\n/** The alias type. */\nexport interface Alias {\n /** The alias name. */\n name?: string;\n /** The paths for an alias. */\n paths?: AliasPath[];\n /** The type of the alias. */\n type?: AliasType;\n /** The default path for an alias. */\n defaultPath?: string;\n /** The default pattern for an alias. */\n defaultPattern?: AliasPattern;\n /**\n * The default alias path metadata. Applies to the default path and to any alias path that doesn't have metadata\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly defaultMetadata?: AliasPathMetadata;\n}\n\n/** The type of the paths for alias. */\nexport interface AliasPath {\n /** The path of an alias. */\n path?: string;\n /** The API versions. */\n apiVersions?: string[];\n /** The pattern for an alias path. */\n pattern?: AliasPattern;\n /**\n * The metadata of the alias path. If missing, fall back to the default metadata of the alias.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly metadata?: AliasPathMetadata;\n}\n\n/** The type of the pattern for an alias path. */\nexport interface AliasPattern {\n /** The alias pattern phrase. */\n phrase?: string;\n /** The alias pattern variable. */\n variable?: string;\n /** The type of alias pattern */\n type?: AliasPatternType;\n}\n\nexport interface AliasPathMetadata {\n /**\n * The type of the token that the alias path is referring to.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly type?: AliasPathTokenType;\n /**\n * The attributes of the token that the alias path is referring to.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly attributes?: AliasPathAttributes;\n}\n\nexport interface ApiProfile {\n /**\n * The profile version.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly profileVersion?: string;\n /**\n * The API version.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly apiVersion?: string;\n}\n\n/** Deployment dependency information. */\nexport interface Dependency {\n /** The list of dependencies. */\n dependsOn?: BasicDependency[];\n /** The ID of the dependency. */\n id?: string;\n /** The dependency resource type. */\n resourceType?: string;\n /** The dependency resource name. */\n resourceName?: string;\n}\n\n/** Deployment dependency information. */\nexport interface BasicDependency {\n /** The ID of the dependency. */\n id?: string;\n /** The dependency resource type. */\n resourceType?: string;\n /** The dependency resource name. */\n resourceName?: string;\n}\n\n/** Deployment on error behavior with additional details. */\nexport interface OnErrorDeploymentExtended {\n /**\n * The state of the provisioning for the on error deployment.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly provisioningState?: string;\n /** The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment. */\n type?: OnErrorDeploymentType;\n /** The deployment to be used on error case. */\n deploymentName?: string;\n}\n\n/** The resource Id model. */\nexport interface ResourceReference {\n /**\n * The fully qualified resource Id.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly id?: string;\n}\n\n/** Information from validate template deployment response. */\nexport interface DeploymentValidateResult {\n /**\n * The deployment validation error.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly error?: ErrorResponse;\n /** The template deployment properties. */\n properties?: DeploymentPropertiesExtended;\n}\n\n/** The deployment export result. */\nexport interface DeploymentExportResult {\n /** The template content. */\n template?: Record<string, unknown>;\n}\n\n/** List of deployments. */\nexport interface DeploymentListResult {\n /** An array of deployments. */\n value?: DeploymentExtended[];\n /**\n * The URL to use for getting the next set of results.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly nextLink?: string;\n}\n\n/** Deployment operation parameters. */\nexport interface ScopedDeployment {\n /** The location to store the deployment data. */\n location: string;\n /** The deployment properties. */\n properties: DeploymentProperties;\n /** Deployment tags */\n tags?: { [propertyName: string]: string };\n}\n\n/** Deployment What-if operation parameters. */\nexport interface ScopedDeploymentWhatIf {\n /** The location to store the deployment data. */\n location: string;\n /** The deployment properties. */\n properties: DeploymentWhatIfProperties;\n}\n\n/** Deployment What-If operation settings. */\nexport interface DeploymentWhatIfSettings {\n /** The format of the What-If results */\n resultFormat?: WhatIfResultFormat;\n}\n\n/** Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results. */\nexport interface WhatIfOperationResult {\n /** Status of the What-If operation. */\n status?: string;\n /** Error when What-If operation fails. */\n error?: ErrorResponse;\n /** List of resource changes predicted by What-If operation. */\n changes?: WhatIfChange[];\n}\n\n/** Information about a single resource change predicted by What-If operation. */\nexport interface WhatIfChange {\n /** Resource ID */\n resourceId: string;\n /** Type of change that will be made to the resource when the deployment is executed. */\n changeType: ChangeType;\n /** The explanation about why the resource is unsupported by What-If. */\n unsupportedReason?: string;\n /** The snapshot of the resource before the deployment is executed. */\n before?: Record<string, unknown>;\n /** The predicted snapshot of the resource after the deployment is executed. */\n after?: Record<string, unknown>;\n /** The predicted changes to resource properties. */\n delta?: WhatIfPropertyChange[];\n}\n\n/** The predicted change to the resource property. */\nexport interface WhatIfPropertyChange {\n /** The path of the property. */\n path: string;\n /** The type of property change. */\n propertyChangeType: PropertyChangeType;\n /** The value of the property before the deployment is executed. */\n before?: Record<string, unknown>;\n /** The value of the property after the deployment is executed. */\n after?: Record<string, unknown>;\n /** Nested property changes. */\n children?: WhatIfPropertyChange[];\n}\n\n/** Deployment What-if operation parameters. */\nexport interface DeploymentWhatIf {\n /** The location to store the deployment data. */\n location?: string;\n /** The deployment properties. */\n properties: DeploymentWhatIfProperties;\n}\n\n/** List of provider permissions. */\nexport interface ProviderPermissionListResult {\n /** An array of provider permissions. */\n value?: ProviderPermission[];\n /**\n * The URL to use for getting the next set of results.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly nextLink?: string;\n}\n\n/** The provider permission */\nexport interface ProviderPermission {\n /** The application id. */\n applicationId?: string;\n /** Role definition properties. */\n roleDefinition?: RoleDefinition;\n /** Role definition properties. */\n managedByRoleDefinition?: RoleDefinition;\n /** The provider authorization consent state. */\n providerAuthorizationConsentState?: ProviderAuthorizationConsentState;\n}\n\n/** Role definition properties. */\nexport interface RoleDefinition {\n /** The role definition ID. */\n id?: string;\n /** The role definition name. */\n name?: string;\n /** If this is a service role. */\n isServiceRole?: boolean;\n /** Role definition permissions. */\n permissions?: Permission[];\n /** Role definition assignable scopes. */\n scopes?: string[];\n}\n\n/** Role definition permissions. */\nexport interface Permission {\n /** Allowed actions. */\n actions?: string[];\n /** Denied actions. */\n notActions?: string[];\n /** Allowed Data actions. */\n dataActions?: string[];\n /** Denied Data actions. */\n notDataActions?: string[];\n}\n\n/** The provider registration definition. */\nexport interface ProviderRegistrationRequest {\n /** The provider consent. */\n thirdPartyProviderConsent?: ProviderConsentDefinition;\n}\n\n/** The provider consent. */\nexport interface ProviderConsentDefinition {\n /** A value indicating whether authorization is consented or not. */\n consentToAuthorization?: boolean;\n}\n\n/** List of resource providers. */\nexport interface ProviderListResult {\n /** An array of resource providers. */\n value?: Provider[];\n /**\n * The URL to use for getting the next set of results.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly nextLink?: string;\n}\n\n/** List of resource types of a resource provider. */\nexport interface ProviderResourceTypeListResult {\n /** An array of resource types. */\n value?: ProviderResourceType[];\n /**\n * The URL to use for getting the next set of results.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly nextLink?: string;\n}\n\n/** List of resource groups. */\nexport interface ResourceListResult {\n /** An array of resources. */\n value?: GenericResourceExpanded[];\n /**\n * The URL to use for getting the next set of results.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly nextLink?: string;\n}\n\n/** Specified resource. */\nexport interface Resource {\n /**\n * Resource ID\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly id?: string;\n /**\n * Resource name\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly name?: string;\n /**\n * Resource type\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly type?: string;\n /** Resource location */\n location?: string;\n /** Resource extended location. */\n extendedLocation?: ExtendedLocation;\n /** Resource tags */\n tags?: { [propertyName: string]: string };\n}\n\n/** Resource extended location. */\nexport interface ExtendedLocation {\n /** The extended location type. */\n type?: ExtendedLocationType;\n /** The extended location name. */\n name?: string;\n}\n\n/** Plan for the resource. */\nexport interface Plan {\n /** The plan ID. */\n name?: string;\n /** The publisher ID. */\n publisher?: string;\n /** The offer ID. */\n product?: string;\n /** The promotion code. */\n promotionCode?: string;\n /** The plan's version. */\n version?: string;\n}\n\n/** SKU for the resource. */\nexport interface Sku {\n /** The SKU name. */\n name?: string;\n /** The SKU tier. */\n tier?: string;\n /** The SKU size. */\n size?: string;\n /** The SKU family. */\n family?: string;\n /** The SKU model. */\n model?: string;\n /** The SKU capacity. */\n capacity?: number;\n}\n\n/** Identity for the resource. */\nexport interface Identity {\n /**\n * The principal ID of resource identity.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly principalId?: string;\n /**\n * The tenant ID of resource.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly tenantId?: string;\n /** The identity type. */\n type?: ResourceIdentityType;\n /** The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. */\n userAssignedIdentities?: {\n [propertyName: string]: IdentityUserAssignedIdentitiesValue;\n };\n}\n\nexport interface IdentityUserAssignedIdentitiesValue {\n /**\n * The principal id of user assigned identity.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly principalId?: string;\n /**\n * The client id of user assigned identity.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly clientId?: string;\n}\n\n/** Resource group information. */\nexport interface ResourceGroup {\n /**\n * The ID of the resource group.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly id?: string;\n /**\n * The name of the resource group.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly name?: string;\n /**\n * The type of the resource group.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly type?: string;\n /** The resource group properties. */\n properties?: ResourceGroupProperties;\n /** The location of the resource group. It cannot be changed after the resource group has been created. It must be one of the supported Azure locations. */\n location: string;\n /** The ID of the resource that manages this resource group. */\n managedBy?: string;\n /** The tags attached to the resource group. */\n tags?: { [propertyName: string]: string };\n}\n\n/** The resource group properties. */\nexport interface ResourceGroupProperties {\n /**\n * The provisioning state.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly provisioningState?: string;\n}\n\n/** Resource group information. */\nexport interface ResourceGroupPatchable {\n /** The name of the resource group. */\n name?: string;\n /** The resource group properties. */\n properties?: ResourceGroupProperties;\n /** The ID of the resource that manages this resource group. */\n managedBy?: string;\n /** The tags attached to the resource group. */\n tags?: { [propertyName: string]: string };\n}\n\n/** Export resource group template request parameters. */\nexport interface ExportTemplateRequest {\n /** The IDs of the resources to filter the export by. To export all resources, supply an array with single entry '*'. */\n resources?: string[];\n /** The export template options. A CSV-formatted list containing zero or more of the following: 'IncludeParameterDefaultValue', 'IncludeComments', 'SkipResourceNameParameterization', 'SkipAllParameterization' */\n options?: string;\n}\n\n/** Resource group export result. */\nexport interface ResourceGroupExportResult {\n /** The template content. */\n template?: Record<string, unknown>;\n /** The template export error. */\n error?: ErrorResponse;\n}\n\n/** List of resource groups. */\nexport interface ResourceGroupListResult {\n /** An array of resource groups. */\n value?: ResourceGroup[];\n /**\n * The URL to use for getting the next set of results.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly nextLink?: string;\n}\n\n/** Parameters of move resources. */\nexport interface ResourcesMoveInfo {\n /** The IDs of the resources. */\n resources?: string[];\n /** The target resource group. */\n targetResourceGroup?: string;\n}\n\n/** Tag information. */\nexport interface TagValue {\n /**\n * The tag value ID.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly id?: string;\n /** The tag value. */\n tagValue?: string;\n /** The tag value count. */\n count?: TagCount;\n}\n\n/** Tag count. */\nexport interface TagCount {\n /** Type of count. */\n type?: string;\n /** Value of count. */\n value?: number;\n}\n\n/** Tag details. */\nexport interface TagDetails {\n /**\n * The tag name ID.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly id?: string;\n /** The tag name. */\n tagName?: string;\n /** The total number of resources that use the resource tag. When a tag is initially created and has no associated resources, the value is 0. */\n count?: TagCount;\n /** The list of tag values. */\n values?: TagValue[];\n}\n\n/** List of subscription tags. */\nexport interface TagsListResult {\n /** An array of tags. */\n value?: TagDetails[];\n /**\n * The URL to use for getting the next set of results.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly nextLink?: string;\n}\n\n/** Deployment operation information. */\nexport interface DeploymentOperation {\n /**\n * Full deployment operation ID.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly id?: string;\n /**\n * Deployment operation ID.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly operationId?: string;\n /** Deployment properties. */\n properties?: DeploymentOperationProperties;\n}\n\n/** Deployment operation properties. */\nexport interface DeploymentOperationProperties {\n /**\n * The name of the current provisioning operation.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly provisioningOperation?: ProvisioningOperation;\n /**\n * The state of the provisioning.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly provisioningState?: string;\n /**\n * The date and time of the operation.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly timestamp?: Date;\n /**\n * The duration of the operation.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly duration?: string;\n /**\n * Deployment operation service request id.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly serviceRequestId?: string;\n /**\n * Operation status code from the resource provider. This property may not be set if a response has not yet been received.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly statusCode?: string;\n /**\n * Operation status message from the resource provider. This property is optional. It will only be provided if an error was received from the resource provider.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly statusMessage?: StatusMessage;\n /**\n * The target resource.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly targetResource?: TargetResource;\n /**\n * The HTTP request message.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly request?: HttpMessage;\n /**\n * The HTTP response message.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly response?: HttpMessage;\n}\n\n/** Operation status message object. */\nexport interface StatusMessage {\n /** Status of the deployment operation. */\n status?: string;\n /** The error reported by the operation. */\n error?: ErrorResponse;\n}\n\n/** Target resource. */\nexport interface TargetResource {\n /** The ID of the resource. */\n id?: string;\n /** The name of the resource. */\n resourceName?: string;\n /** The type of the resource. */\n resourceType?: string;\n}\n\n/** HTTP message. */\nexport interface HttpMessage {\n /** HTTP message content. */\n content?: Record<string, unknown>;\n}\n\n/** List of deployment operations. */\nexport interface DeploymentOperationsListResult {\n /** An array of deployment operations. */\n value?: DeploymentOperation[];\n /**\n * The URL to use for getting the next set of results.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly nextLink?: string;\n}\n\n/** Result of the request to calculate template hash. It contains a string of minified template and its hash. */\nexport interface TemplateHashResult {\n /** The minified template string. */\n minifiedTemplate?: string;\n /** The template hash. */\n templateHash?: string;\n}\n\n/** Wrapper resource for tags API requests and responses. */\nexport interface TagsResource {\n /**\n * The ID of the tags wrapper resource.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly id?: string;\n /**\n * The name of the tags wrapper resource.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly name?: string;\n /**\n * The type of the tags wrapper resource.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly type?: string;\n /** The set of tags. */\n properties: Tags;\n}\n\n/** A dictionary of name and value pairs. */\nexport interface Tags {\n /** Dictionary of <string> */\n tags?: { [propertyName: string]: string };\n}\n\n/** Wrapper resource for tags patch API request only. */\nexport interface TagsPatchResource {\n /** The operation type for the patch API. */\n operation?: TagsPatchOperation;\n /** The set of tags. */\n properties?: Tags;\n}\n\n/** Deployment filter. */\nexport interface DeploymentExtendedFilter {\n /** The provisioning state. */\n provisioningState?: string;\n}\n\n/** Resource filter. */\nexport interface GenericResourceFilter {\n /** The resource type. */\n resourceType?: string;\n /** The tag name. */\n tagname?: string;\n /** The tag value. */\n tagvalue?: string;\n}\n\n/** Resource group filter. */\nexport interface ResourceGroupFilter {\n /** The tag name. */\n tagName?: string;\n /** The tag value. */\n tagValue?: string;\n}\n\n/** Resource provider operation's display properties. */\nexport interface ResourceProviderOperationDisplayProperties {\n /** Operation description. */\n publisher?: string;\n /** Operation provider. */\n provider?: string;\n /** Operation resource. */\n resource?: string;\n /** Resource provider operation. */\n operation?: string;\n /** Operation description. */\n description?: string;\n}\n\n/** Sub-resource. */\nexport interface SubResource {\n /** Resource ID */\n id?: string;\n}\n\n/** Deployment What-if properties. */\nexport type DeploymentWhatIfProperties = DeploymentProperties & {\n /** Optional What-If operation settings. */\n whatIfSettings?: DeploymentWhatIfSettings;\n};\n\n/** Resource information. */\nexport type GenericResource = Resource & {\n /** The plan of the resource. */\n plan?: Plan;\n /** The resource properties. */\n properties?: Record<string, unknown>;\n /** The kind of the resource. */\n kind?: string;\n /** ID of the resource that manages this resource. */\n managedBy?: string;\n /** The SKU of the resource. */\n sku?: Sku;\n /** The identity of the resource. */\n identity?: Identity;\n};\n\n/** Resource information. */\nexport type GenericResourceExpanded = GenericResource & {\n /**\n * The created time of the resource. This is only present if requested via the $expand query parameter.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly createdTime?: Date;\n /**\n * The changed time of the resource. This is only present if requested via the $expand query parameter.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly changedTime?: Date;\n /**\n * The provisioning state of the resource. This is only present if requested via the $expand query parameter.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly provisioningState?: string;\n};\n\n/** Defines headers for Deployments_whatIfAtTenantScope operation. */\nexport interface DeploymentsWhatIfAtTenantScopeHeaders {\n /** URL to get status of this long-running operation. */\n location?: string;\n /** Number of seconds to wait before polling for status. */\n retryAfter?: string;\n}\n\n/** Defines headers for Deployments_whatIfAtManagementGroupScope operation. */\nexport interface DeploymentsWhatIfAtManagementGroupScopeHeaders {\n /** URL to get status of this long-running operation. */\n location?: string;\n /** Number of seconds to wait before polling for status. */\n retryAfter?: string;\n}\n\n/** Defines headers for Deployments_whatIfAtSubscriptionScope operation. */\nexport interface DeploymentsWhatIfAtSubscriptionScopeHeaders {\n /** URL to get status of this long-running operation. */\n location?: string;\n /** Number of seconds to wait before polling for status. */\n retryAfter?: string;\n}\n\n/** Defines headers for Deployments_whatIf operation. */\nexport interface DeploymentsWhatIfHeaders {\n /** URL to get status of this long-running operation. */\n location?: string;\n /** Number of seconds to wait before polling for status. */\n retryAfter?: string;\n}\n\n/** Known values of {@link ExpressionEvaluationOptionsScopeType} that the service accepts. */\nexport enum KnownExpressionEvaluationOptionsScopeType {\n NotSpecified = \"NotSpecified\",\n Outer = \"Outer\",\n Inner = \"Inner\"\n}\n\n/**\n * Defines values for ExpressionEvaluationOptionsScopeType. \\\n * {@link KnownExpressionEvaluationOptionsScopeType} can be used interchangeably with ExpressionEvaluationOptionsScopeType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **NotSpecified** \\\n * **Outer** \\\n * **Inner**\n */\nexport type ExpressionEvaluationOptionsScopeType = string;\n\n/** Known values of {@link ProvisioningState} that the service accepts. */\nexport enum KnownProvisioningState {\n NotSpecified = \"NotSpecified\",\n Accepted = \"Accepted\",\n Running = \"Running\",\n Ready = \"Ready\",\n Creating = \"Creating\",\n Created = \"Created\",\n Deleting = \"Deleting\",\n Deleted = \"Deleted\",\n Canceled = \"Canceled\",\n Failed = \"Failed\",\n Succeeded = \"Succeeded\",\n Updating = \"Updating\"\n}\n\n/**\n * Defines values for ProvisioningState. \\\n * {@link KnownProvisioningState} can be used interchangeably with ProvisioningState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **NotSpecified** \\\n * **Accepted** \\\n * **Running** \\\n * **Ready** \\\n * **Creating** \\\n * **Created** \\\n * **Deleting** \\\n * **Deleted** \\\n * **Canceled** \\\n * **Failed** \\\n * **Succeeded** \\\n * **Updating**\n */\nexport type ProvisioningState = string;\n\n/** Known values of {@link AliasPathTokenType} that the service accepts. */\nexport enum KnownAliasPathTokenType {\n /** The token type is not specified. */\n NotSpecified = \"NotSpecified\",\n /** The token type can be anything. */\n Any = \"Any\",\n /** The token type is string. */\n String = \"String\",\n /** The token type is object. */\n Object = \"Object\",\n /** The token type is array. */\n Array = \"Array\",\n /** The token type is integer. */\n Integer = \"Integer\",\n /** The token type is number. */\n Number = \"Number\",\n /** The token type is boolean. */\n Boolean = \"Boolean\"\n}\n\n/**\n * Defines values for AliasPathTokenType. \\\n * {@link KnownAliasPathTokenType} can be used interchangeably with AliasPathTokenType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **NotSpecified**: The token type is not specified. \\\n * **Any**: The token type can be anything. \\\n * **String**: The token type is string. \\\n * **Object**: The token type is object. \\\n * **Array**: The token type is array. \\\n * **Integer**: The token type is integer. \\\n * **Number**: The token type is number. \\\n * **Boolean**: The token type is boolean.\n */\nexport type AliasPathTokenType = string;\n\n/** Known values of {@link AliasPathAttributes} that the service accepts. */\nexport enum KnownAliasPathAttributes {\n /** The token that the alias path is referring to has no attributes. */\n None = \"None\",\n /** The token that the alias path is referring to is modifiable by policies with 'modify' effect. */\n Modifiable = \"Modifiable\"\n}\n\n/**\n * Defines values for AliasPathAttributes. \\\n * {@link KnownAliasPathAttributes} can be used interchangeably with AliasPathAttributes,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **None**: The token that the alias path is referring to has no attributes. \\\n * **Modifiable**: The token that the alias path is referring to is modifiable by policies with 'modify' effect.\n */\nexport type AliasPathAttributes = string;\n\n/** Known values of {@link ProviderAuthorizationConsentState} that the service accepts. */\nexport enum KnownProviderAuthorizationConsentState {\n NotSpecified = \"NotSpecified\",\n Required = \"Required\",\n NotRequired = \"NotRequired\",\n Consented = \"Consented\"\n}\n\n/**\n * Defines values for ProviderAuthorizationConsentState. \\\n * {@link KnownProviderAuthorizationConsentState} can be used interchangeably with ProviderAuthorizationConsentState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **NotSpecified** \\\n * **Required** \\\n * **NotRequired** \\\n * **Consented**\n */\nexport type ProviderAuthorizationConsentState = string;\n\n/** Known values of {@link ExtendedLocationType} that the service accepts. */\nexport enum KnownExtendedLocationType {\n EdgeZone = \"EdgeZone\"\n}\n\n/**\n * Defines values for ExtendedLocationType. \\\n * {@link KnownExtendedLocationType} can be used interchangeably with ExtendedLocationType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **EdgeZone**\n */\nexport type ExtendedLocationType = string;\n\n/** Known values of {@link TagsPatchOperation} that the service accepts. */\nexport enum KnownTagsPatchOperation {\n /** The 'replace' option replaces the entire set of existing tags with a new set. */\n Replace = \"Replace\",\n /** The 'merge' option allows adding tags with new names and updating the values of tags with existing names. */\n Merge = \"Merge\",\n /** The 'delete' option allows selectively deleting tags based on given names or name/value pairs. */\n Delete = \"Delete\"\n}\n\n/**\n * Defines values for TagsPatchOperation. \\\n * {@link KnownTagsPatchOperation} can be used interchangeably with TagsPatchOperation,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Replace**: The 'replace' option replaces the entire set of existing tags with a new set. \\\n * **Merge**: The 'merge' option allows adding tags with new names and updating the values of tags with existing names. \\\n * **Delete**: The 'delete' option allows selectively deleting tags based on given names or name\\/value pairs.\n */\nexport type TagsPatchOperation = string;\n/** Defines values for DeploymentMode. */\nexport type DeploymentMode = \"Incremental\" | \"Complete\";\n/** Defines values for OnErrorDeploymentType. */\nexport type OnErrorDeploymentType = \"LastSuccessful\" | \"SpecificDeployment\";\n/** Defines values for AliasPatternType. */\nexport type AliasPatternType = \"NotSpecified\" | \"Extract\";\n/** Defines values for AliasType. */\nexport type AliasType = \"NotSpecified\" | \"PlainText\" | \"Mask\";\n/** Defines values for WhatIfResultFormat. */\nexport type WhatIfResultFormat = \"ResourceIdOnly\" | \"FullResourcePayloads\";\n/** Defines values for ChangeType. */\nexport type ChangeType =\n | \"Create\"\n | \"Delete\"\n | \"Ignore\"\n | \"Deploy\"\n | \"NoChange\"\n | \"Modify\"\n | \"Unsupported\";\n/** Defines values for PropertyChangeType. */\nexport type PropertyChangeType =\n | \"Create\"\n | \"Delete\"\n | \"Modify\"\n | \"Array\"\n | \"NoEffect\";\n/** Defines values for ResourceIdentityType. */\nexport type ResourceIdentityType =\n | \"SystemAssigned\"\n | \"UserAssigned\"\n | \"SystemAssigned, UserAssigned\"\n | \"None\";\n/** Defines values for ProvisioningOperation. */\nexport type ProvisioningOperation =\n | \"NotSpecified\"\n | \"Create\"\n | \"Delete\"\n | \"Waiting\"\n | \"AzureAsyncOperationWaiting\"\n | \"ResourceCacheWaiting\"\n | \"Action\"\n | \"Read\"\n | \"EvaluateDeploymentOutput\"\n | \"DeploymentCleanup\";\n\n/** Optional parameters. */\nexport interface OperationsListOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the list operation. */\nexport type OperationsListResponse = OperationListResult;\n\n/** Optional parameters. */\nexport interface OperationsListNextOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listNext operation. */\nexport type OperationsListNextResponse = OperationListResult;\n\n/** Optional parameters. */\nexport interface OperationsListNextNextOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listNextNext operation. */\nexport type OperationsListNextNextResponse = OperationListResult;\n\n/** Optional parameters. */\nexport interface DeploymentsDeleteAtScopeOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface DeploymentsCheckExistenceAtScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the checkExistenceAtScope operation. */\nexport type DeploymentsCheckExistenceAtScopeResponse = {\n body: boolean;\n};\n\n/** Optional parameters. */\nexport interface DeploymentsCreateOrUpdateAtScopeOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the createOrUpdateAtScope operation. */\nexport type DeploymentsCreateOrUpdateAtScopeResponse = DeploymentExtended;\n\n/** Optional parameters. */\nexport interface DeploymentsGetAtScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the getAtScope operation. */\nexport type DeploymentsGetAtScopeResponse = DeploymentExtended;\n\n/** Optional parameters. */\nexport interface DeploymentsCancelAtScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Optional parameters. */\nexport interface DeploymentsValidateAtScopeOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the validateAtScope operation. */\nexport type DeploymentsValidateAtScopeResponse = DeploymentValidateResult;\n\n/** Optional parameters. */\nexport interface DeploymentsExportTemplateAtScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the exportTemplateAtScope operation. */\nexport type DeploymentsExportTemplateAtScopeResponse = DeploymentExportResult;\n\n/** Optional parameters. */\nexport interface DeploymentsListAtScopeOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'. */\n filter?: string;\n /** The number of results to get. If null is passed, returns all deployments. */\n top?: number;\n}\n\n/** Contains response data for the listAtScope operation. */\nexport type DeploymentsListAtScopeResponse = DeploymentListResult;\n\n/** Optional parameters. */\nexport interface DeploymentsDeleteAtTenantScopeOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface DeploymentsCheckExistenceAtTenantScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the checkExistenceAtTenantScope operation. */\nexport type DeploymentsCheckExistenceAtTenantScopeResponse = {\n body: boolean;\n};\n\n/** Optional parameters. */\nexport interface DeploymentsCreateOrUpdateAtTenantScopeOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the createOrUpdateAtTenantScope operation. */\nexport type DeploymentsCreateOrUpdateAtTenantScopeResponse = DeploymentExtended;\n\n/** Optional parameters. */\nexport interface DeploymentsGetAtTenantScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the getAtTenantScope operation. */\nexport type DeploymentsGetAtTenantScopeResponse = DeploymentExtended;\n\n/** Optional parameters. */\nexport interface DeploymentsCancelAtTenantScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Optional parameters. */\nexport interface DeploymentsValidateAtTenantScopeOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the validateAtTenantScope operation. */\nexport type DeploymentsValidateAtTenantScopeResponse = DeploymentValidateResult;\n\n/** Optional parameters. */\nexport interface DeploymentsWhatIfAtTenantScopeOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the whatIfAtTenantScope operation. */\nexport type DeploymentsWhatIfAtTenantScopeResponse = WhatIfOperationResult;\n\n/** Optional parameters. */\nexport interface DeploymentsExportTemplateAtTenantScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the exportTemplateAtTenantScope operation. */\nexport type DeploymentsExportTemplateAtTenantScopeResponse = DeploymentExportResult;\n\n/** Optional parameters. */\nexport interface DeploymentsListAtTenantScopeOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'. */\n filter?: string;\n /** The number of results to get. If null is passed, returns all deployments. */\n top?: number;\n}\n\n/** Contains response data for the listAtTenantScope operation. */\nexport type DeploymentsListAtTenantScopeResponse = DeploymentListResult;\n\n/** Optional parameters. */\nexport interface DeploymentsDeleteAtManagementGroupScopeOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface DeploymentsCheckExistenceAtManagementGroupScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the checkExistenceAtManagementGroupScope operation. */\nexport type DeploymentsCheckExistenceAtManagementGroupScopeResponse = {\n body: boolean;\n};\n\n/** Optional parameters. */\nexport interface DeploymentsCreateOrUpdateAtManagementGroupScopeOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the createOrUpdateAtManagementGroupScope operation. */\nexport type DeploymentsCreateOrUpdateAtManagementGroupScopeResponse = DeploymentExtended;\n\n/** Optional parameters. */\nexport interface DeploymentsGetAtManagementGroupScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the getAtManagementGroupScope operation. */\nexport type DeploymentsGetAtManagementGroupScopeResponse = DeploymentExtended;\n\n/** Optional parameters. */\nexport interface DeploymentsCancelAtManagementGroupScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Optional parameters. */\nexport interface DeploymentsValidateAtManagementGroupScopeOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the validateAtManagementGroupScope operation. */\nexport type DeploymentsValidateAtManagementGroupScopeResponse = DeploymentValidateResult;\n\n/** Optional parameters. */\nexport interface DeploymentsWhatIfAtManagementGroupScopeOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the whatIfAtManagementGroupScope operation. */\nexport type DeploymentsWhatIfAtManagementGroupScopeResponse = WhatIfOperationResult;\n\n/** Optional parameters. */\nexport interface DeploymentsExportTemplateAtManagementGroupScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the exportTemplateAtManagementGroupScope operation. */\nexport type DeploymentsExportTemplateAtManagementGroupScopeResponse = DeploymentExportResult;\n\n/** Optional parameters. */\nexport interface DeploymentsListAtManagementGroupScopeOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'. */\n filter?: string;\n /** The number of results to get. If null is passed, returns all deployments. */\n top?: number;\n}\n\n/** Contains response data for the listAtManagementGroupScope operation. */\nexport type DeploymentsListAtManagementGroupScopeResponse = DeploymentListResult;\n\n/** Optional parameters. */\nexport interface DeploymentsDeleteAtSubscriptionScopeOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface DeploymentsCheckExistenceAtSubscriptionScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the checkExistenceAtSubscriptionScope operation. */\nexport type DeploymentsCheckExistenceAtSubscriptionScopeResponse = {\n body: boolean;\n};\n\n/** Optional parameters. */\nexport interface DeploymentsCreateOrUpdateAtSubscriptionScopeOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the createOrUpdateAtSubscriptionScope operation. */\nexport type DeploymentsCreateOrUpdateAtSubscriptionScopeResponse = DeploymentExtended;\n\n/** Optional parameters. */\nexport interface DeploymentsGetAtSubscriptionScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the getAtSubscriptionScope operation. */\nexport type DeploymentsGetAtSubscriptionScopeResponse = DeploymentExtended;\n\n/** Optional parameters. */\nexport interface DeploymentsCancelAtSubscriptionScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Optional parameters. */\nexport interface DeploymentsValidateAtSubscriptionScopeOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the validateAtSubscriptionScope operation. */\nexport type DeploymentsValidateAtSubscriptionScopeResponse = DeploymentValidateResult;\n\n/** Optional parameters. */\nexport interface DeploymentsWhatIfAtSubscriptionScopeOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the whatIfAtSubscriptionScope operation. */\nexport type DeploymentsWhatIfAtSubscriptionScopeResponse = WhatIfOperationResult;\n\n/** Optional parameters. */\nexport interface DeploymentsExportTemplateAtSubscriptionScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the exportTemplateAtSubscriptionScope operation. */\nexport type DeploymentsExportTemplateAtSubscriptionScopeResponse = DeploymentExportResult;\n\n/** Optional parameters. */\nexport interface DeploymentsListAtSubscriptionScopeOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'. */\n filter?: string;\n /** The number of results to get. If null is passed, returns all deployments. */\n top?: number;\n}\n\n/** Contains response data for the listAtSubscriptionScope operation. */\nexport type DeploymentsListAtSubscriptionScopeResponse = DeploymentListResult;\n\n/** Optional parameters. */\nexport interface DeploymentsDeleteOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface DeploymentsCheckExistenceOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the checkExistence operation. */\nexport type DeploymentsCheckExistenceResponse = {\n body: boolean;\n};\n\n/** Optional parameters. */\nexport interface DeploymentsCreateOrUpdateOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the createOrUpdate operation. */\nexport type DeploymentsCreateOrUpdateResponse = DeploymentExtended;\n\n/** Optional parameters. */\nexport interface DeploymentsGetOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the get operation. */\nexport type DeploymentsGetResponse = DeploymentExtended;\n\n/** Optional parameters. */\nexport interface DeploymentsCancelOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Optional parameters. */\nexport interface DeploymentsValidateOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the validate operation. */\nexport type DeploymentsValidateResponse = DeploymentValidateResult;\n\n/** Optional parameters. */\nexport interface DeploymentsWhatIfOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the whatIf operation. */\nexport type DeploymentsWhatIfResponse = WhatIfOperationResult;\n\n/** Optional parameters. */\nexport interface DeploymentsExportTemplateOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the exportTemplate operation. */\nexport type DeploymentsExportTemplateResponse = DeploymentExportResult;\n\n/** Optional parameters. */\nexport interface DeploymentsListByResourceGroupOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'. */\n filter?: string;\n /** The number of results to get. If null is passed, returns all deployments. */\n top?: number;\n}\n\n/** Contains response data for the listByResourceGroup operation. */\nexport type DeploymentsListByResourceGroupResponse = DeploymentListResult;\n\n/** Optional parameters. */\nexport interface DeploymentsCalculateTemplateHashOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the calculateTemplateHash operation. */\nexport type DeploymentsCalculateTemplateHashResponse = TemplateHashResult;\n\n/** Optional parameters. */\nexport interface DeploymentsListAtScopeNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'. */\n filter?: string;\n /** The number of results to get. If null is passed, returns all deployments. */\n top?: number;\n}\n\n/** Contains response data for the listAtScopeNext operation. */\nexport type DeploymentsListAtScopeNextResponse = DeploymentListResult;\n\n/** Optional parameters. */\nexport interface DeploymentsListAtTenantScopeNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'. */\n filter?: string;\n /** The number of results to get. If null is passed, returns all deployments. */\n top?: number;\n}\n\n/** Contains response data for the listAtTenantScopeNext operation. */\nexport type DeploymentsListAtTenantScopeNextResponse = DeploymentListResult;\n\n/** Optional parameters. */\nexport interface DeploymentsListAtManagementGroupScopeNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'. */\n filter?: string;\n /** The number of results to get. If null is passed, returns all deployments. */\n top?: number;\n}\n\n/** Contains response data for the listAtManagementGroupScopeNext operation. */\nexport type DeploymentsListAtManagementGroupScopeNextResponse = DeploymentListResult;\n\n/** Optional parameters. */\nexport interface DeploymentsListAtSubscriptionScopeNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'. */\n filter?: string;\n /** The number of results to get. If null is passed, returns all deployments. */\n top?: number;\n}\n\n/** Contains response data for the listAtSubscriptionScopeNext operation. */\nexport type DeploymentsListAtSubscriptionScopeNextResponse = DeploymentListResult;\n\n/** Optional parameters. */\nexport interface DeploymentsListByResourceGroupNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'. */\n filter?: string;\n /** The number of results to get. If null is passed, returns all deployments. */\n top?: number;\n}\n\n/** Contains response data for the listByResourceGroupNext operation. */\nexport type DeploymentsListByResourceGroupNextResponse = DeploymentListResult;\n\n/** Optional parameters. */\nexport interface DeploymentsListAtScopeNextNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'. */\n filter?: string;\n /** The number of results to get. If null is passed, returns all deployments. */\n top?: number;\n}\n\n/** Contains response data for the listAtScopeNextNext operation. */\nexport type DeploymentsListAtScopeNextNextResponse = DeploymentListResult;\n\n/** Optional parameters. */\nexport interface DeploymentsListAtTenantScopeNextNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'. */\n filter?: string;\n /** The number of results to get. If null is passed, returns all deployments. */\n top?: number;\n}\n\n/** Contains response data for the listAtTenantScopeNextNext operation. */\nexport type DeploymentsListAtTenantScopeNextNextResponse = DeploymentListResult;\n\n/** Optional parameters. */\nexport interface DeploymentsListAtManagementGroupScopeNextNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'. */\n filter?: string;\n /** The number of results to get. If null is passed, returns all deployments. */\n top?: number;\n}\n\n/** Contains response data for the listAtManagementGroupScopeNextNext operation. */\nexport type DeploymentsListAtManagementGroupScopeNextNextResponse = DeploymentListResult;\n\n/** Optional parameters. */\nexport interface DeploymentsListAtSubscriptionScopeNextNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'. */\n filter?: string;\n /** The number of results to get. If null is passed, returns all deployments. */\n top?: number;\n}\n\n/** Contains response data for the listAtSubscriptionScopeNextNext operation. */\nexport type DeploymentsListAtSubscriptionScopeNextNextResponse = DeploymentListResult;\n\n/** Optional parameters. */\nexport interface DeploymentsListByResourceGroupNextNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'. */\n filter?: string;\n /** The number of results to get. If null is passed, returns all deployments. */\n top?: number;\n}\n\n/** Contains response data for the listByResourceGroupNextNext operation. */\nexport type DeploymentsListByResourceGroupNextNextResponse = DeploymentListResult;\n\n/** Optional parameters. */\nexport interface ProvidersUnregisterOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the unregister operation. */\nexport type ProvidersUnregisterResponse = Provider;\n\n/** Optional parameters. */\nexport interface ProvidersRegisterAtManagementGroupScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Optional parameters. */\nexport interface ProvidersProviderPermissionsOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the providerPermissions operation. */\nexport type ProvidersProviderPermissionsResponse = ProviderPermissionListResult;\n\n/** Optional parameters. */\nexport interface ProvidersRegisterOptionalParams\n extends coreClient.OperationOptions {\n /** The third party consent for S2S. */\n properties?: ProviderRegistrationRequest;\n}\n\n/** Contains response data for the register operation. */\nexport type ProvidersRegisterResponse = Provider;\n\n/** Optional parameters. */\nexport interface ProvidersListOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. If null is passed returns all deployments. */\n top?: number;\n /** The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases. */\n expand?: string;\n}\n\n/** Contains response data for the list operation. */\nexport type ProvidersListResponse = ProviderListResult;\n\n/** Optional parameters. */\nexport interface ProvidersListAtTenantScopeOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. If null is passed returns all providers. */\n top?: number;\n /** The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases. */\n expand?: string;\n}\n\n/** Contains response data for the listAtTenantScope operation. */\nexport type ProvidersListAtTenantScopeResponse = ProviderListResult;\n\n/** Optional parameters. */\nexport interface ProvidersGetOptionalParams\n extends coreClient.OperationOptions {\n /** The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases. */\n expand?: string;\n}\n\n/** Contains response data for the get operation. */\nexport type ProvidersGetResponse = Provider;\n\n/** Optional parameters. */\nexport interface ProvidersGetAtTenantScopeOptionalParams\n extends coreClient.OperationOptions {\n /** The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases. */\n expand?: string;\n}\n\n/** Contains response data for the getAtTenantScope operation. */\nexport type ProvidersGetAtTenantScopeResponse = Provider;\n\n/** Optional parameters. */\nexport interface ProvidersListNextOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. If null is passed returns all deployments. */\n top?: number;\n /** The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases. */\n expand?: string;\n}\n\n/** Contains response data for the listNext operation. */\nexport type ProvidersListNextResponse = ProviderListResult;\n\n/** Optional parameters. */\nexport interface ProvidersListAtTenantScopeNextOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. If null is passed returns all providers. */\n top?: number;\n /** The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases. */\n expand?: string;\n}\n\n/** Contains response data for the listAtTenantScopeNext operation. */\nexport type ProvidersListAtTenantScopeNextResponse = ProviderListResult;\n\n/** Optional parameters. */\nexport interface ProvidersListNextNextOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. If null is passed returns all deployments. */\n top?: number;\n /** The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases. */\n expand?: string;\n}\n\n/** Contains response data for the listNextNext operation. */\nexport type ProvidersListNextNextResponse = ProviderListResult;\n\n/** Optional parameters. */\nexport interface ProvidersListAtTenantScopeNextNextOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. If null is passed returns all providers. */\n top?: number;\n /** The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases. */\n expand?: string;\n}\n\n/** Contains response data for the listAtTenantScopeNextNext operation. */\nexport type ProvidersListAtTenantScopeNextNextResponse = ProviderListResult;\n\n/** Optional parameters. */\nexport interface ProviderResourceTypesListOptionalParams\n extends coreClient.OperationOptions {\n /** The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases. */\n expand?: string;\n}\n\n/** Contains response data for the list operation. */\nexport type ProviderResourceTypesListResponse = ProviderResourceTypeListResult;\n\n/** Optional parameters. */\nexport interface ResourcesListByResourceGroupOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation.<br><br>The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.<br><br>For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'<br><br>You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.<br><br>For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)<br><br>You can link more than one substringof together by adding and/or operators.<br><br>You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.<br><br>You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId. */\n filter?: string;\n /** The number of results to return. If null is passed, returns all resources. */\n top?: number;\n /** Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`. */\n expand?: string;\n}\n\n/** Contains response data for the listByResourceGroup operation. */\nexport type ResourcesListByResourceGroupResponse = ResourceListResult;\n\n/** Optional parameters. */\nexport interface ResourcesMoveResourcesOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface ResourcesValidateMoveResourcesOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface ResourcesListOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation.<br><br>The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.<br><br>For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'<br><br>You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.<br><br>For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)<br><br>You can link more than one substringof together by adding and/or operators.<br><br>You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.<br><br>You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId. */\n filter?: string;\n /** The number of results to return. If null is passed, returns all resource groups. */\n top?: number;\n /** Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`. */\n expand?: string;\n}\n\n/** Contains response data for the list operation. */\nexport type ResourcesListResponse = ResourceListResult;\n\n/** Optional parameters. */\nexport interface ResourcesCheckExistenceOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the checkExistence operation. */\nexport type ResourcesCheckExistenceResponse = {\n body: boolean;\n};\n\n/** Optional parameters. */\nexport interface ResourcesDeleteOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface ResourcesCreateOrUpdateOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the createOrUpdate operation. */\nexport type ResourcesCreateOrUpdateResponse = GenericResource;\n\n/** Optional parameters. */\nexport interface ResourcesUpdateOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the update operation. */\nexport type ResourcesUpdateResponse = GenericResource;\n\n/** Optional parameters. */\nexport interface ResourcesGetOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the get operation. */\nexport type ResourcesGetResponse = GenericResource;\n\n/** Optional parameters. */\nexport interface ResourcesCheckExistenceByIdOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the checkExistenceById operation. */\nexport type ResourcesCheckExistenceByIdResponse = {\n body: boolean;\n};\n\n/** Optional parameters. */\nexport interface ResourcesDeleteByIdOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface ResourcesCreateOrUpdateByIdOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the createOrUpdateById operation. */\nexport type ResourcesCreateOrUpdateByIdResponse = GenericResource;\n\n/** Optional parameters. */\nexport interface ResourcesUpdateByIdOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the updateById operation. */\nexport type ResourcesUpdateByIdResponse = GenericResource;\n\n/** Optional parameters. */\nexport interface ResourcesGetByIdOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the getById operation. */\nexport type ResourcesGetByIdResponse = GenericResource;\n\n/** Optional parameters. */\nexport interface ResourcesListByResourceGroupNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation.<br><br>The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.<br><br>For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'<br><br>You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.<br><br>For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)<br><br>You can link more than one substringof together by adding and/or operators.<br><br>You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.<br><br>You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId. */\n filter?: string;\n /** The number of results to return. If null is passed, returns all resources. */\n top?: number;\n /** Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`. */\n expand?: string;\n}\n\n/** Contains response data for the listByResourceGroupNext operation. */\nexport type ResourcesListByResourceGroupNextResponse = ResourceListResult;\n\n/** Optional parameters. */\nexport interface ResourcesListNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation.<br><br>The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.<br><br>For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'<br><br>You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.<br><br>For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)<br><br>You can link more than one substringof together by adding and/or operators.<br><br>You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.<br><br>You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId. */\n filter?: string;\n /** The number of results to return. If null is passed, returns all resource groups. */\n top?: number;\n /** Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`. */\n expand?: string;\n}\n\n/** Contains response data for the listNext operation. */\nexport type ResourcesListNextResponse = ResourceListResult;\n\n/** Optional parameters. */\nexport interface ResourcesListByResourceGroupNextNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation.<br><br>The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.<br><br>For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'<br><br>You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.<br><br>For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)<br><br>You can link more than one substringof together by adding and/or operators.<br><br>You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.<br><br>You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId. */\n filter?: string;\n /** The number of results to return. If null is passed, returns all resources. */\n top?: number;\n /** Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`. */\n expand?: string;\n}\n\n/** Contains response data for the listByResourceGroupNextNext operation. */\nexport type ResourcesListByResourceGroupNextNextResponse = ResourceListResult;\n\n/** Optional parameters. */\nexport interface ResourcesListNextNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation.<br><br>The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.<br><br>For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'<br><br>You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.<br><br>For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)<br><br>You can link more than one substringof together by adding and/or operators.<br><br>You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.<br><br>You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId. */\n filter?: string;\n /** The number of results to return. If null is passed, returns all resource groups. */\n top?: number;\n /** Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`. */\n expand?: string;\n}\n\n/** Contains response data for the listNextNext operation. */\nexport type ResourcesListNextNextResponse = ResourceListResult;\n\n/** Optional parameters. */\nexport interface ResourceGroupsCheckExistenceOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the checkExistence operation. */\nexport type ResourceGroupsCheckExistenceResponse = {\n body: boolean;\n};\n\n/** Optional parameters. */\nexport interface ResourceGroupsCreateOrUpdateOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the createOrUpdate operation. */\nexport type ResourceGroupsCreateOrUpdateResponse = ResourceGroup;\n\n/** Optional parameters. */\nexport interface ResourceGroupsDeleteOptionalParams\n extends coreClient.OperationOptions {\n /** The resource types you want to force delete. Currently, only the following is supported: forceDeletionTypes=Microsoft.Compute/virtualMachines,Microsoft.Compute/virtualMachineScaleSets */\n forceDeletionTypes?: string;\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface ResourceGroupsGetOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the get operation. */\nexport type ResourceGroupsGetResponse = ResourceGroup;\n\n/** Optional parameters. */\nexport interface ResourceGroupsUpdateOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the update operation. */\nexport type ResourceGroupsUpdateResponse = ResourceGroup;\n\n/** Optional parameters. */\nexport interface ResourceGroupsExportTemplateOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the exportTemplate operation. */\nexport type ResourceGroupsExportTemplateResponse = ResourceGroupExportResult;\n\n/** Optional parameters. */\nexport interface ResourceGroupsListOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation.<br><br>You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1' */\n filter?: string;\n /** The number of results to return. If null is passed, returns all resource groups. */\n top?: number;\n}\n\n/** Contains response data for the list operation. */\nexport type ResourceGroupsListResponse = ResourceGroupListResult;\n\n/** Optional parameters. */\nexport interface ResourceGroupsListNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation.<br><br>You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1' */\n filter?: string;\n /** The number of results to return. If null is passed, returns all resource groups. */\n top?: number;\n}\n\n/** Contains response data for the listNext operation. */\nexport type ResourceGroupsListNextResponse = ResourceGroupListResult;\n\n/** Optional parameters. */\nexport interface ResourceGroupsListNextNextOptionalParams\n extends coreClient.OperationOptions {\n /** The filter to apply on the operation.<br><br>You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1' */\n filter?: string;\n /** The number of results to return. If null is passed, returns all resource groups. */\n top?: number;\n}\n\n/** Contains response data for the listNextNext operation. */\nexport type ResourceGroupsListNextNextResponse = ResourceGroupListResult;\n\n/** Optional parameters. */\nexport interface TagsOperationsDeleteValueOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Optional parameters. */\nexport interface TagsOperationsCreateOrUpdateValueOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the createOrUpdateValue operation. */\nexport type TagsOperationsCreateOrUpdateValueResponse = TagValue;\n\n/** Optional parameters. */\nexport interface TagsOperationsCreateOrUpdateOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the createOrUpdate operation. */\nexport type TagsOperationsCreateOrUpdateResponse = TagDetails;\n\n/** Optional parameters. */\nexport interface TagsOperationsDeleteOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Optional parameters. */\nexport interface TagsOperationsListOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the list operation. */\nexport type TagsOperationsListResponse = TagsListResult;\n\n/** Optional parameters. */\nexport interface TagsOperationsCreateOrUpdateAtScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the createOrUpdateAtScope operation. */\nexport type TagsOperationsCreateOrUpdateAtScopeResponse = TagsResource;\n\n/** Optional parameters. */\nexport interface TagsOperationsUpdateAtScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the updateAtScope operation. */\nexport type TagsOperationsUpdateAtScopeResponse = TagsResource;\n\n/** Optional parameters. */\nexport interface TagsOperationsGetAtScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the getAtScope operation. */\nexport type TagsOperationsGetAtScopeResponse = TagsResource;\n\n/** Optional parameters. */\nexport interface TagsOperationsDeleteAtScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Optional parameters. */\nexport interface TagsOperationsListNextOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listNext operation. */\nexport type TagsOperationsListNextResponse = TagsListResult;\n\n/** Optional parameters. */\nexport interface TagsOperationsListNextNextOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listNextNext operation. */\nexport type TagsOperationsListNextNextResponse = TagsListResult;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsGetAtScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the getAtScope operation. */\nexport type DeploymentOperationsGetAtScopeResponse = DeploymentOperation;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsListAtScopeOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. */\n top?: number;\n}\n\n/** Contains response data for the listAtScope operation. */\nexport type DeploymentOperationsListAtScopeResponse = DeploymentOperationsListResult;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsGetAtTenantScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the getAtTenantScope operation. */\nexport type DeploymentOperationsGetAtTenantScopeResponse = DeploymentOperation;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsListAtTenantScopeOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. */\n top?: number;\n}\n\n/** Contains response data for the listAtTenantScope operation. */\nexport type DeploymentOperationsListAtTenantScopeResponse = DeploymentOperationsListResult;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsGetAtManagementGroupScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the getAtManagementGroupScope operation. */\nexport type DeploymentOperationsGetAtManagementGroupScopeResponse = DeploymentOperation;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsListAtManagementGroupScopeOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. */\n top?: number;\n}\n\n/** Contains response data for the listAtManagementGroupScope operation. */\nexport type DeploymentOperationsListAtManagementGroupScopeResponse = DeploymentOperationsListResult;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsGetAtSubscriptionScopeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the getAtSubscriptionScope operation. */\nexport type DeploymentOperationsGetAtSubscriptionScopeResponse = DeploymentOperation;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsListAtSubscriptionScopeOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. */\n top?: number;\n}\n\n/** Contains response data for the listAtSubscriptionScope operation. */\nexport type DeploymentOperationsListAtSubscriptionScopeResponse = DeploymentOperationsListResult;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsGetOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the get operation. */\nexport type DeploymentOperationsGetResponse = DeploymentOperation;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsListOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. */\n top?: number;\n}\n\n/** Contains response data for the list operation. */\nexport type DeploymentOperationsListResponse = DeploymentOperationsListResult;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsListAtScopeNextOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. */\n top?: number;\n}\n\n/** Contains response data for the listAtScopeNext operation. */\nexport type DeploymentOperationsListAtScopeNextResponse = DeploymentOperationsListResult;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsListAtTenantScopeNextOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. */\n top?: number;\n}\n\n/** Contains response data for the listAtTenantScopeNext operation. */\nexport type DeploymentOperationsListAtTenantScopeNextResponse = DeploymentOperationsListResult;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsListAtManagementGroupScopeNextOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. */\n top?: number;\n}\n\n/** Contains response data for the listAtManagementGroupScopeNext operation. */\nexport type DeploymentOperationsListAtManagementGroupScopeNextResponse = DeploymentOperationsListResult;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsListAtSubscriptionScopeNextOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. */\n top?: number;\n}\n\n/** Contains response data for the listAtSubscriptionScopeNext operation. */\nexport type DeploymentOperationsListAtSubscriptionScopeNextResponse = DeploymentOperationsListResult;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsListNextOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. */\n top?: number;\n}\n\n/** Contains response data for the listNext operation. */\nexport type DeploymentOperationsListNextResponse = DeploymentOperationsListResult;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsListAtScopeNextNextOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. */\n top?: number;\n}\n\n/** Contains response data for the listAtScopeNextNext operation. */\nexport type DeploymentOperationsListAtScopeNextNextResponse = DeploymentOperationsListResult;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsListAtTenantScopeNextNextOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. */\n top?: number;\n}\n\n/** Contains response data for the listAtTenantScopeNextNext operation. */\nexport type DeploymentOperationsListAtTenantScopeNextNextResponse = DeploymentOperationsListResult;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsListAtManagementGroupScopeNextNextOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. */\n top?: number;\n}\n\n/** Contains response data for the listAtManagementGroupScopeNextNext operation. */\nexport type DeploymentOperationsListAtManagementGroupScopeNextNextResponse = DeploymentOperationsListResult;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsListAtSubscriptionScopeNextNextOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. */\n top?: number;\n}\n\n/** Contains response data for the listAtSubscriptionScopeNextNext operation. */\nexport type DeploymentOperationsListAtSubscriptionScopeNextNextResponse = DeploymentOperationsListResult;\n\n/** Optional parameters. */\nexport interface DeploymentOperationsListNextNextOptionalParams\n extends coreClient.OperationOptions {\n /** The number of results to return. */\n top?: number;\n}\n\n/** Contains response data for the listNextNext operation. */\nexport type DeploymentOperationsListNextNextResponse = DeploymentOperationsListResult;\n\n/** Optional parameters. */\nexport interface ResourceManagementClientOptionalParams\n extends coreClient.ServiceClientOptions {\n /** server parameter */\n $host?: string;\n /** Api Version */\n apiVersion?: string;\n /** Overrides client endpoint. */\n endpoint?: string;\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport * as coreClient from \"@azure/core-client\";\n\nexport const OperationListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"OperationListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"Operation\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const Operation: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Operation\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n type: {\n name: \"String\"\n }\n },\n display: {\n serializedName: \"display\",\n type: {\n name: \"Composite\",\n className: \"OperationDisplay\"\n }\n }\n }\n }\n};\n\nexport const OperationDisplay: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"OperationDisplay\",\n modelProperties: {\n provider: {\n serializedName: \"provider\",\n type: {\n name: \"String\"\n }\n },\n resource: {\n serializedName: \"resource\",\n type: {\n name: \"String\"\n }\n },\n operation: {\n serializedName: \"operation\",\n type: {\n name: \"String\"\n }\n },\n description: {\n serializedName: \"description\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const CloudError: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"CloudError\",\n modelProperties: {\n error: {\n serializedName: \"error\",\n type: {\n name: \"Composite\",\n className: \"ErrorResponse\"\n }\n }\n }\n }\n};\n\nexport const ErrorResponse: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ErrorResponse\",\n modelProperties: {\n code: {\n serializedName: \"code\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n message: {\n serializedName: \"message\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n target: {\n serializedName: \"target\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n details: {\n serializedName: \"details\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ErrorResponse\"\n }\n }\n }\n },\n additionalInfo: {\n serializedName: \"additionalInfo\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ErrorAdditionalInfo\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const ErrorAdditionalInfo: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ErrorAdditionalInfo\",\n modelProperties: {\n type: {\n serializedName: \"type\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n info: {\n serializedName: \"info\",\n readOnly: true,\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } }\n }\n }\n }\n }\n};\n\nexport const Deployment: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Deployment\",\n modelProperties: {\n location: {\n serializedName: \"location\",\n type: {\n name: \"String\"\n }\n },\n properties: {\n serializedName: \"properties\",\n type: {\n name: \"Composite\",\n className: \"DeploymentProperties\"\n }\n },\n tags: {\n serializedName: \"tags\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n }\n }\n }\n};\n\nexport const DeploymentProperties: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentProperties\",\n modelProperties: {\n template: {\n serializedName: \"template\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } }\n }\n },\n templateLink: {\n serializedName: \"templateLink\",\n type: {\n name: \"Composite\",\n className: \"TemplateLink\"\n }\n },\n parameters: {\n serializedName: \"parameters\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } }\n }\n },\n parametersLink: {\n serializedName: \"parametersLink\",\n type: {\n name: \"Composite\",\n className: \"ParametersLink\"\n }\n },\n mode: {\n serializedName: \"mode\",\n required: true,\n type: {\n name: \"Enum\",\n allowedValues: [\"Incremental\", \"Complete\"]\n }\n },\n debugSetting: {\n serializedName: \"debugSetting\",\n type: {\n name: \"Composite\",\n className: \"DebugSetting\"\n }\n },\n onErrorDeployment: {\n serializedName: \"onErrorDeployment\",\n type: {\n name: \"Composite\",\n className: \"OnErrorDeployment\"\n }\n },\n expressionEvaluationOptions: {\n serializedName: \"expressionEvaluationOptions\",\n type: {\n name: \"Composite\",\n className: \"ExpressionEvaluationOptions\"\n }\n }\n }\n }\n};\n\nexport const TemplateLink: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"TemplateLink\",\n modelProperties: {\n uri: {\n serializedName: \"uri\",\n type: {\n name: \"String\"\n }\n },\n id: {\n serializedName: \"id\",\n type: {\n name: \"String\"\n }\n },\n relativePath: {\n serializedName: \"relativePath\",\n type: {\n name: \"String\"\n }\n },\n contentVersion: {\n serializedName: \"contentVersion\",\n type: {\n name: \"String\"\n }\n },\n queryString: {\n serializedName: \"queryString\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ParametersLink: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ParametersLink\",\n modelProperties: {\n uri: {\n serializedName: \"uri\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n contentVersion: {\n serializedName: \"contentVersion\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const DebugSetting: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DebugSetting\",\n modelProperties: {\n detailLevel: {\n serializedName: \"detailLevel\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const OnErrorDeployment: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"OnErrorDeployment\",\n modelProperties: {\n type: {\n serializedName: \"type\",\n type: {\n name: \"Enum\",\n allowedValues: [\"LastSuccessful\", \"SpecificDeployment\"]\n }\n },\n deploymentName: {\n serializedName: \"deploymentName\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ExpressionEvaluationOptions: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ExpressionEvaluationOptions\",\n modelProperties: {\n scope: {\n serializedName: \"scope\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const DeploymentExtended: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentExtended\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n name: {\n serializedName: \"name\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n location: {\n serializedName: \"location\",\n type: {\n name: \"String\"\n }\n },\n properties: {\n serializedName: \"properties\",\n type: {\n name: \"Composite\",\n className: \"DeploymentPropertiesExtended\"\n }\n },\n tags: {\n serializedName: \"tags\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n }\n }\n }\n};\n\nexport const DeploymentPropertiesExtended: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentPropertiesExtended\",\n modelProperties: {\n provisioningState: {\n serializedName: \"provisioningState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n correlationId: {\n serializedName: \"correlationId\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n timestamp: {\n serializedName: \"timestamp\",\n readOnly: true,\n type: {\n name: \"DateTime\"\n }\n },\n duration: {\n serializedName: \"duration\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n outputs: {\n serializedName: \"outputs\",\n readOnly: true,\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } }\n }\n },\n providers: {\n serializedName: \"providers\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"Provider\"\n }\n }\n }\n },\n dependencies: {\n serializedName: \"dependencies\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"Dependency\"\n }\n }\n }\n },\n templateLink: {\n serializedName: \"templateLink\",\n type: {\n name: \"Composite\",\n className: \"TemplateLink\"\n }\n },\n parameters: {\n serializedName: \"parameters\",\n readOnly: true,\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } }\n }\n },\n parametersLink: {\n serializedName: \"parametersLink\",\n type: {\n name: \"Composite\",\n className: \"ParametersLink\"\n }\n },\n mode: {\n serializedName: \"mode\",\n readOnly: true,\n type: {\n name: \"Enum\",\n allowedValues: [\"Incremental\", \"Complete\"]\n }\n },\n debugSetting: {\n serializedName: \"debugSetting\",\n type: {\n name: \"Composite\",\n className: \"DebugSetting\"\n }\n },\n onErrorDeployment: {\n serializedName: \"onErrorDeployment\",\n type: {\n name: \"Composite\",\n className: \"OnErrorDeploymentExtended\"\n }\n },\n templateHash: {\n serializedName: \"templateHash\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n outputResources: {\n serializedName: \"outputResources\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ResourceReference\"\n }\n }\n }\n },\n validatedResources: {\n serializedName: \"validatedResources\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ResourceReference\"\n }\n }\n }\n },\n error: {\n serializedName: \"error\",\n type: {\n name: \"Composite\",\n className: \"ErrorResponse\"\n }\n }\n }\n }\n};\n\nexport const Provider: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Provider\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n namespace: {\n serializedName: \"namespace\",\n type: {\n name: \"String\"\n }\n },\n registrationState: {\n serializedName: \"registrationState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n registrationPolicy: {\n serializedName: \"registrationPolicy\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n resourceTypes: {\n serializedName: \"resourceTypes\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ProviderResourceType\"\n }\n }\n }\n },\n providerAuthorizationConsentState: {\n serializedName: \"providerAuthorizationConsentState\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ProviderResourceType: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ProviderResourceType\",\n modelProperties: {\n resourceType: {\n serializedName: \"resourceType\",\n type: {\n name: \"String\"\n }\n },\n locations: {\n serializedName: \"locations\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n },\n locationMappings: {\n serializedName: \"locationMappings\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ProviderExtendedLocation\"\n }\n }\n }\n },\n aliases: {\n serializedName: \"aliases\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"Alias\"\n }\n }\n }\n },\n apiVersions: {\n serializedName: \"apiVersions\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n },\n defaultApiVersion: {\n serializedName: \"defaultApiVersion\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n apiProfiles: {\n serializedName: \"apiProfiles\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ApiProfile\"\n }\n }\n }\n },\n capabilities: {\n serializedName: \"capabilities\",\n type: {\n name: \"String\"\n }\n },\n properties: {\n serializedName: \"properties\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n }\n }\n }\n};\n\nexport const ProviderExtendedLocation: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ProviderExtendedLocation\",\n modelProperties: {\n location: {\n serializedName: \"location\",\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n type: {\n name: \"String\"\n }\n },\n extendedLocations: {\n serializedName: \"extendedLocations\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const Alias: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Alias\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n type: {\n name: \"String\"\n }\n },\n paths: {\n serializedName: \"paths\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"AliasPath\"\n }\n }\n }\n },\n type: {\n serializedName: \"type\",\n type: {\n name: \"Enum\",\n allowedValues: [\"NotSpecified\", \"PlainText\", \"Mask\"]\n }\n },\n defaultPath: {\n serializedName: \"defaultPath\",\n type: {\n name: \"String\"\n }\n },\n defaultPattern: {\n serializedName: \"defaultPattern\",\n type: {\n name: \"Composite\",\n className: \"AliasPattern\"\n }\n },\n defaultMetadata: {\n serializedName: \"defaultMetadata\",\n type: {\n name: \"Composite\",\n className: \"AliasPathMetadata\"\n }\n }\n }\n }\n};\n\nexport const AliasPath: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"AliasPath\",\n modelProperties: {\n path: {\n serializedName: \"path\",\n type: {\n name: \"String\"\n }\n },\n apiVersions: {\n serializedName: \"apiVersions\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n },\n pattern: {\n serializedName: \"pattern\",\n type: {\n name: \"Composite\",\n className: \"AliasPattern\"\n }\n },\n metadata: {\n serializedName: \"metadata\",\n type: {\n name: \"Composite\",\n className: \"AliasPathMetadata\"\n }\n }\n }\n }\n};\n\nexport const AliasPattern: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"AliasPattern\",\n modelProperties: {\n phrase: {\n serializedName: \"phrase\",\n type: {\n name: \"String\"\n }\n },\n variable: {\n serializedName: \"variable\",\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n type: {\n name: \"Enum\",\n allowedValues: [\"NotSpecified\", \"Extract\"]\n }\n }\n }\n }\n};\n\nexport const AliasPathMetadata: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"AliasPathMetadata\",\n modelProperties: {\n type: {\n serializedName: \"type\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n attributes: {\n serializedName: \"attributes\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ApiProfile: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ApiProfile\",\n modelProperties: {\n profileVersion: {\n serializedName: \"profileVersion\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n apiVersion: {\n serializedName: \"apiVersion\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const Dependency: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Dependency\",\n modelProperties: {\n dependsOn: {\n serializedName: \"dependsOn\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"BasicDependency\"\n }\n }\n }\n },\n id: {\n serializedName: \"id\",\n type: {\n name: \"String\"\n }\n },\n resourceType: {\n serializedName: \"resourceType\",\n type: {\n name: \"String\"\n }\n },\n resourceName: {\n serializedName: \"resourceName\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const BasicDependency: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"BasicDependency\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n type: {\n name: \"String\"\n }\n },\n resourceType: {\n serializedName: \"resourceType\",\n type: {\n name: \"String\"\n }\n },\n resourceName: {\n serializedName: \"resourceName\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const OnErrorDeploymentExtended: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"OnErrorDeploymentExtended\",\n modelProperties: {\n provisioningState: {\n serializedName: \"provisioningState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n type: {\n name: \"Enum\",\n allowedValues: [\"LastSuccessful\", \"SpecificDeployment\"]\n }\n },\n deploymentName: {\n serializedName: \"deploymentName\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ResourceReference: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ResourceReference\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const DeploymentValidateResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentValidateResult\",\n modelProperties: {\n error: {\n serializedName: \"error\",\n type: {\n name: \"Composite\",\n className: \"ErrorResponse\"\n }\n },\n properties: {\n serializedName: \"properties\",\n type: {\n name: \"Composite\",\n className: \"DeploymentPropertiesExtended\"\n }\n }\n }\n }\n};\n\nexport const DeploymentExportResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentExportResult\",\n modelProperties: {\n template: {\n serializedName: \"template\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } }\n }\n }\n }\n }\n};\n\nexport const DeploymentListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"DeploymentExtended\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ScopedDeployment: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ScopedDeployment\",\n modelProperties: {\n location: {\n serializedName: \"location\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n properties: {\n serializedName: \"properties\",\n type: {\n name: \"Composite\",\n className: \"DeploymentProperties\"\n }\n },\n tags: {\n serializedName: \"tags\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n }\n }\n }\n};\n\nexport const ScopedDeploymentWhatIf: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ScopedDeploymentWhatIf\",\n modelProperties: {\n location: {\n serializedName: \"location\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n properties: {\n serializedName: \"properties\",\n type: {\n name: \"Composite\",\n className: \"DeploymentWhatIfProperties\"\n }\n }\n }\n }\n};\n\nexport const DeploymentWhatIfSettings: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentWhatIfSettings\",\n modelProperties: {\n resultFormat: {\n serializedName: \"resultFormat\",\n type: {\n name: \"Enum\",\n allowedValues: [\"ResourceIdOnly\", \"FullResourcePayloads\"]\n }\n }\n }\n }\n};\n\nexport const WhatIfOperationResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"WhatIfOperationResult\",\n modelProperties: {\n status: {\n serializedName: \"status\",\n type: {\n name: \"String\"\n }\n },\n error: {\n serializedName: \"error\",\n type: {\n name: \"Composite\",\n className: \"ErrorResponse\"\n }\n },\n changes: {\n serializedName: \"properties.changes\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"WhatIfChange\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const WhatIfChange: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"WhatIfChange\",\n modelProperties: {\n resourceId: {\n serializedName: \"resourceId\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n changeType: {\n serializedName: \"changeType\",\n required: true,\n type: {\n name: \"Enum\",\n allowedValues: [\n \"Create\",\n \"Delete\",\n \"Ignore\",\n \"Deploy\",\n \"NoChange\",\n \"Modify\",\n \"Unsupported\"\n ]\n }\n },\n unsupportedReason: {\n serializedName: \"unsupportedReason\",\n type: {\n name: \"String\"\n }\n },\n before: {\n serializedName: \"before\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } }\n }\n },\n after: {\n serializedName: \"after\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } }\n }\n },\n delta: {\n serializedName: \"delta\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"WhatIfPropertyChange\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const WhatIfPropertyChange: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"WhatIfPropertyChange\",\n modelProperties: {\n path: {\n serializedName: \"path\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n propertyChangeType: {\n serializedName: \"propertyChangeType\",\n required: true,\n type: {\n name: \"Enum\",\n allowedValues: [\"Create\", \"Delete\", \"Modify\", \"Array\", \"NoEffect\"]\n }\n },\n before: {\n serializedName: \"before\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } }\n }\n },\n after: {\n serializedName: \"after\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } }\n }\n },\n children: {\n serializedName: \"children\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"WhatIfPropertyChange\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const DeploymentWhatIf: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentWhatIf\",\n modelProperties: {\n location: {\n serializedName: \"location\",\n type: {\n name: \"String\"\n }\n },\n properties: {\n serializedName: \"properties\",\n type: {\n name: \"Composite\",\n className: \"DeploymentWhatIfProperties\"\n }\n }\n }\n }\n};\n\nexport const ProviderPermissionListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ProviderPermissionListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ProviderPermission\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ProviderPermission: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ProviderPermission\",\n modelProperties: {\n applicationId: {\n serializedName: \"applicationId\",\n type: {\n name: \"String\"\n }\n },\n roleDefinition: {\n serializedName: \"roleDefinition\",\n type: {\n name: \"Composite\",\n className: \"RoleDefinition\"\n }\n },\n managedByRoleDefinition: {\n serializedName: \"managedByRoleDefinition\",\n type: {\n name: \"Composite\",\n className: \"RoleDefinition\"\n }\n },\n providerAuthorizationConsentState: {\n serializedName: \"providerAuthorizationConsentState\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const RoleDefinition: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"RoleDefinition\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n type: {\n name: \"String\"\n }\n },\n name: {\n serializedName: \"name\",\n type: {\n name: \"String\"\n }\n },\n isServiceRole: {\n serializedName: \"isServiceRole\",\n type: {\n name: \"Boolean\"\n }\n },\n permissions: {\n serializedName: \"permissions\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"Permission\"\n }\n }\n }\n },\n scopes: {\n serializedName: \"scopes\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const Permission: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Permission\",\n modelProperties: {\n actions: {\n serializedName: \"actions\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n },\n notActions: {\n serializedName: \"notActions\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n },\n dataActions: {\n serializedName: \"dataActions\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n },\n notDataActions: {\n serializedName: \"notDataActions\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const ProviderRegistrationRequest: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ProviderRegistrationRequest\",\n modelProperties: {\n thirdPartyProviderConsent: {\n serializedName: \"thirdPartyProviderConsent\",\n type: {\n name: \"Composite\",\n className: \"ProviderConsentDefinition\"\n }\n }\n }\n }\n};\n\nexport const ProviderConsentDefinition: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ProviderConsentDefinition\",\n modelProperties: {\n consentToAuthorization: {\n serializedName: \"consentToAuthorization\",\n type: {\n name: \"Boolean\"\n }\n }\n }\n }\n};\n\nexport const ProviderListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ProviderListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"Provider\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ProviderResourceTypeListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ProviderResourceTypeListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ProviderResourceType\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ResourceListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ResourceListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"GenericResourceExpanded\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const Resource: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Resource\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n name: {\n serializedName: \"name\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n location: {\n serializedName: \"location\",\n type: {\n name: \"String\"\n }\n },\n extendedLocation: {\n serializedName: \"extendedLocation\",\n type: {\n name: \"Composite\",\n className: \"ExtendedLocation\"\n }\n },\n tags: {\n serializedName: \"tags\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n }\n }\n }\n};\n\nexport const ExtendedLocation: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ExtendedLocation\",\n modelProperties: {\n type: {\n serializedName: \"type\",\n type: {\n name: \"String\"\n }\n },\n name: {\n serializedName: \"name\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const Plan: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Plan\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n type: {\n name: \"String\"\n }\n },\n publisher: {\n serializedName: \"publisher\",\n type: {\n name: \"String\"\n }\n },\n product: {\n serializedName: \"product\",\n type: {\n name: \"String\"\n }\n },\n promotionCode: {\n serializedName: \"promotionCode\",\n type: {\n name: \"String\"\n }\n },\n version: {\n serializedName: \"version\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const Sku: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Sku\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n type: {\n name: \"String\"\n }\n },\n tier: {\n serializedName: \"tier\",\n type: {\n name: \"String\"\n }\n },\n size: {\n serializedName: \"size\",\n type: {\n name: \"String\"\n }\n },\n family: {\n serializedName: \"family\",\n type: {\n name: \"String\"\n }\n },\n model: {\n serializedName: \"model\",\n type: {\n name: \"String\"\n }\n },\n capacity: {\n serializedName: \"capacity\",\n type: {\n name: \"Number\"\n }\n }\n }\n }\n};\n\nexport const Identity: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Identity\",\n modelProperties: {\n principalId: {\n serializedName: \"principalId\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n tenantId: {\n serializedName: \"tenantId\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n type: {\n name: \"Enum\",\n allowedValues: [\n \"SystemAssigned\",\n \"UserAssigned\",\n \"SystemAssigned, UserAssigned\",\n \"None\"\n ]\n }\n },\n userAssignedIdentities: {\n serializedName: \"userAssignedIdentities\",\n type: {\n name: \"Dictionary\",\n value: {\n type: {\n name: \"Composite\",\n className: \"IdentityUserAssignedIdentitiesValue\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const IdentityUserAssignedIdentitiesValue: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"IdentityUserAssignedIdentitiesValue\",\n modelProperties: {\n principalId: {\n serializedName: \"principalId\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n clientId: {\n serializedName: \"clientId\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ResourceGroup: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ResourceGroup\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n name: {\n serializedName: \"name\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n properties: {\n serializedName: \"properties\",\n type: {\n name: \"Composite\",\n className: \"ResourceGroupProperties\"\n }\n },\n location: {\n serializedName: \"location\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n managedBy: {\n serializedName: \"managedBy\",\n type: {\n name: \"String\"\n }\n },\n tags: {\n serializedName: \"tags\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n }\n }\n }\n};\n\nexport const ResourceGroupProperties: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ResourceGroupProperties\",\n modelProperties: {\n provisioningState: {\n serializedName: \"provisioningState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ResourceGroupPatchable: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ResourceGroupPatchable\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n type: {\n name: \"String\"\n }\n },\n properties: {\n serializedName: \"properties\",\n type: {\n name: \"Composite\",\n className: \"ResourceGroupProperties\"\n }\n },\n managedBy: {\n serializedName: \"managedBy\",\n type: {\n name: \"String\"\n }\n },\n tags: {\n serializedName: \"tags\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n }\n }\n }\n};\n\nexport const ExportTemplateRequest: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ExportTemplateRequest\",\n modelProperties: {\n resources: {\n serializedName: \"resources\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n },\n options: {\n serializedName: \"options\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ResourceGroupExportResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ResourceGroupExportResult\",\n modelProperties: {\n template: {\n serializedName: \"template\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } }\n }\n },\n error: {\n serializedName: \"error\",\n type: {\n name: \"Composite\",\n className: \"ErrorResponse\"\n }\n }\n }\n }\n};\n\nexport const ResourceGroupListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ResourceGroupListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ResourceGroup\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ResourcesMoveInfo: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ResourcesMoveInfo\",\n modelProperties: {\n resources: {\n serializedName: \"resources\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n },\n targetResourceGroup: {\n serializedName: \"targetResourceGroup\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const TagValue: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"TagValue\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n tagValue: {\n serializedName: \"tagValue\",\n type: {\n name: \"String\"\n }\n },\n count: {\n serializedName: \"count\",\n type: {\n name: \"Composite\",\n className: \"TagCount\"\n }\n }\n }\n }\n};\n\nexport const TagCount: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"TagCount\",\n modelProperties: {\n type: {\n serializedName: \"type\",\n type: {\n name: \"String\"\n }\n },\n value: {\n serializedName: \"value\",\n type: {\n name: \"Number\"\n }\n }\n }\n }\n};\n\nexport const TagDetails: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"TagDetails\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n tagName: {\n serializedName: \"tagName\",\n type: {\n name: \"String\"\n }\n },\n count: {\n serializedName: \"count\",\n type: {\n name: \"Composite\",\n className: \"TagCount\"\n }\n },\n values: {\n serializedName: \"values\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"TagValue\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const TagsListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"TagsListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"TagDetails\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const DeploymentOperation: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentOperation\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n operationId: {\n serializedName: \"operationId\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n properties: {\n serializedName: \"properties\",\n type: {\n name: \"Composite\",\n className: \"DeploymentOperationProperties\"\n }\n }\n }\n }\n};\n\nexport const DeploymentOperationProperties: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentOperationProperties\",\n modelProperties: {\n provisioningOperation: {\n serializedName: \"provisioningOperation\",\n readOnly: true,\n type: {\n name: \"Enum\",\n allowedValues: [\n \"NotSpecified\",\n \"Create\",\n \"Delete\",\n \"Waiting\",\n \"AzureAsyncOperationWaiting\",\n \"ResourceCacheWaiting\",\n \"Action\",\n \"Read\",\n \"EvaluateDeploymentOutput\",\n \"DeploymentCleanup\"\n ]\n }\n },\n provisioningState: {\n serializedName: \"provisioningState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n timestamp: {\n serializedName: \"timestamp\",\n readOnly: true,\n type: {\n name: \"DateTime\"\n }\n },\n duration: {\n serializedName: \"duration\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n serviceRequestId: {\n serializedName: \"serviceRequestId\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n statusCode: {\n serializedName: \"statusCode\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n statusMessage: {\n serializedName: \"statusMessage\",\n type: {\n name: \"Composite\",\n className: \"StatusMessage\"\n }\n },\n targetResource: {\n serializedName: \"targetResource\",\n type: {\n name: \"Composite\",\n className: \"TargetResource\"\n }\n },\n request: {\n serializedName: \"request\",\n type: {\n name: \"Composite\",\n className: \"HttpMessage\"\n }\n },\n response: {\n serializedName: \"response\",\n type: {\n name: \"Composite\",\n className: \"HttpMessage\"\n }\n }\n }\n }\n};\n\nexport const StatusMessage: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"StatusMessage\",\n modelProperties: {\n status: {\n serializedName: \"status\",\n type: {\n name: \"String\"\n }\n },\n error: {\n serializedName: \"error\",\n type: {\n name: \"Composite\",\n className: \"ErrorResponse\"\n }\n }\n }\n }\n};\n\nexport const TargetResource: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"TargetResource\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n type: {\n name: \"String\"\n }\n },\n resourceName: {\n serializedName: \"resourceName\",\n type: {\n name: \"String\"\n }\n },\n resourceType: {\n serializedName: \"resourceType\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const HttpMessage: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"HttpMessage\",\n modelProperties: {\n content: {\n serializedName: \"content\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } }\n }\n }\n }\n }\n};\n\nexport const DeploymentOperationsListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentOperationsListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"DeploymentOperation\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const TemplateHashResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"TemplateHashResult\",\n modelProperties: {\n minifiedTemplate: {\n serializedName: \"minifiedTemplate\",\n type: {\n name: \"String\"\n }\n },\n templateHash: {\n serializedName: \"templateHash\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const TagsResource: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"TagsResource\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n name: {\n serializedName: \"name\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n properties: {\n serializedName: \"properties\",\n type: {\n name: \"Composite\",\n className: \"Tags\"\n }\n }\n }\n }\n};\n\nexport const Tags: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Tags\",\n modelProperties: {\n tags: {\n serializedName: \"tags\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n }\n }\n }\n};\n\nexport const TagsPatchResource: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"TagsPatchResource\",\n modelProperties: {\n operation: {\n serializedName: \"operation\",\n type: {\n name: \"String\"\n }\n },\n properties: {\n serializedName: \"properties\",\n type: {\n name: \"Composite\",\n className: \"Tags\"\n }\n }\n }\n }\n};\n\nexport const DeploymentExtendedFilter: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentExtendedFilter\",\n modelProperties: {\n provisioningState: {\n serializedName: \"provisioningState\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const GenericResourceFilter: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"GenericResourceFilter\",\n modelProperties: {\n resourceType: {\n serializedName: \"resourceType\",\n type: {\n name: \"String\"\n }\n },\n tagname: {\n serializedName: \"tagname\",\n type: {\n name: \"String\"\n }\n },\n tagvalue: {\n serializedName: \"tagvalue\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ResourceGroupFilter: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ResourceGroupFilter\",\n modelProperties: {\n tagName: {\n serializedName: \"tagName\",\n type: {\n name: \"String\"\n }\n },\n tagValue: {\n serializedName: \"tagValue\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ResourceProviderOperationDisplayProperties: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ResourceProviderOperationDisplayProperties\",\n modelProperties: {\n publisher: {\n serializedName: \"publisher\",\n type: {\n name: \"String\"\n }\n },\n provider: {\n serializedName: \"provider\",\n type: {\n name: \"String\"\n }\n },\n resource: {\n serializedName: \"resource\",\n type: {\n name: \"String\"\n }\n },\n operation: {\n serializedName: \"operation\",\n type: {\n name: \"String\"\n }\n },\n description: {\n serializedName: \"description\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const SubResource: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SubResource\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const DeploymentWhatIfProperties: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentWhatIfProperties\",\n modelProperties: {\n ...DeploymentProperties.type.modelProperties,\n whatIfSettings: {\n serializedName: \"whatIfSettings\",\n type: {\n name: \"Composite\",\n className: \"DeploymentWhatIfSettings\"\n }\n }\n }\n }\n};\n\nexport const GenericResource: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"GenericResource\",\n modelProperties: {\n ...Resource.type.modelProperties,\n plan: {\n serializedName: \"plan\",\n type: {\n name: \"Composite\",\n className: \"Plan\"\n }\n },\n properties: {\n serializedName: \"properties\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } }\n }\n },\n kind: {\n constraints: {\n Pattern: new RegExp(\"^[-\\\\w\\\\._,\\\\(\\\\)]+$\")\n },\n serializedName: \"kind\",\n type: {\n name: \"String\"\n }\n },\n managedBy: {\n serializedName: \"managedBy\",\n type: {\n name: \"String\"\n }\n },\n sku: {\n serializedName: \"sku\",\n type: {\n name: \"Composite\",\n className: \"Sku\"\n }\n },\n identity: {\n serializedName: \"identity\",\n type: {\n name: \"Composite\",\n className: \"Identity\"\n }\n }\n }\n }\n};\n\nexport const GenericResourceExpanded: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"GenericResourceExpanded\",\n modelProperties: {\n ...GenericResource.type.modelProperties,\n createdTime: {\n serializedName: \"createdTime\",\n readOnly: true,\n type: {\n name: \"DateTime\"\n }\n },\n changedTime: {\n serializedName: \"changedTime\",\n readOnly: true,\n type: {\n name: \"DateTime\"\n }\n },\n provisioningState: {\n serializedName: \"provisioningState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const DeploymentsWhatIfAtTenantScopeHeaders: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentsWhatIfAtTenantScopeHeaders\",\n modelProperties: {\n location: {\n serializedName: \"location\",\n type: {\n name: \"String\"\n }\n },\n retryAfter: {\n serializedName: \"retry-after\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const DeploymentsWhatIfAtManagementGroupScopeHeaders: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentsWhatIfAtManagementGroupScopeHeaders\",\n modelProperties: {\n location: {\n serializedName: \"location\",\n type: {\n name: \"String\"\n }\n },\n retryAfter: {\n serializedName: \"retry-after\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const DeploymentsWhatIfAtSubscriptionScopeHeaders: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentsWhatIfAtSubscriptionScopeHeaders\",\n modelProperties: {\n location: {\n serializedName: \"location\",\n type: {\n name: \"String\"\n }\n },\n retryAfter: {\n serializedName: \"retry-after\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const DeploymentsWhatIfHeaders: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeploymentsWhatIfHeaders\",\n modelProperties: {\n location: {\n serializedName: \"location\",\n type: {\n name: \"String\"\n }\n },\n retryAfter: {\n serializedName: \"retry-after\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport {\n OperationParameter,\n OperationURLParameter,\n OperationQueryParameter\n} from \"@azure/core-client\";\nimport {\n Deployment as DeploymentMapper,\n ScopedDeployment as ScopedDeploymentMapper,\n ScopedDeploymentWhatIf as ScopedDeploymentWhatIfMapper,\n DeploymentWhatIf as DeploymentWhatIfMapper,\n ProviderRegistrationRequest as ProviderRegistrationRequestMapper,\n ResourcesMoveInfo as ResourcesMoveInfoMapper,\n GenericResource as GenericResourceMapper,\n ResourceGroup as ResourceGroupMapper,\n ResourceGroupPatchable as ResourceGroupPatchableMapper,\n ExportTemplateRequest as ExportTemplateRequestMapper,\n TagsResource as TagsResourceMapper,\n TagsPatchResource as TagsPatchResourceMapper\n} from \"../models/mappers\";\n\nexport const accept: OperationParameter = {\n parameterPath: \"accept\",\n mapper: {\n defaultValue: \"application/json\",\n isConstant: true,\n serializedName: \"Accept\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const $host: OperationURLParameter = {\n parameterPath: \"$host\",\n mapper: {\n serializedName: \"$host\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n skipEncoding: true\n};\n\nexport const apiVersion: OperationQueryParameter = {\n parameterPath: \"apiVersion\",\n mapper: {\n defaultValue: \"2021-04-01\",\n isConstant: true,\n serializedName: \"api-version\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const nextLink: OperationURLParameter = {\n parameterPath: \"nextLink\",\n mapper: {\n serializedName: \"nextLink\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n skipEncoding: true\n};\n\nexport const scope: OperationURLParameter = {\n parameterPath: \"scope\",\n mapper: {\n serializedName: \"scope\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n skipEncoding: true\n};\n\nexport const deploymentName: OperationURLParameter = {\n parameterPath: \"deploymentName\",\n mapper: {\n constraints: {\n Pattern: new RegExp(\"^[-\\\\w\\\\._\\\\(\\\\)]+$\"),\n MaxLength: 64,\n MinLength: 1\n },\n serializedName: \"deploymentName\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const contentType: OperationParameter = {\n parameterPath: [\"options\", \"contentType\"],\n mapper: {\n defaultValue: \"application/json\",\n isConstant: true,\n serializedName: \"Content-Type\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const parameters: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: DeploymentMapper\n};\n\nexport const filter: OperationQueryParameter = {\n parameterPath: [\"options\", \"filter\"],\n mapper: {\n serializedName: \"$filter\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const top: OperationQueryParameter = {\n parameterPath: [\"options\", \"top\"],\n mapper: {\n serializedName: \"$top\",\n type: {\n name: \"Number\"\n }\n }\n};\n\nexport const parameters1: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: ScopedDeploymentMapper\n};\n\nexport const parameters2: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: ScopedDeploymentWhatIfMapper\n};\n\nexport const groupId: OperationURLParameter = {\n parameterPath: \"groupId\",\n mapper: {\n constraints: {\n MaxLength: 90,\n MinLength: 1\n },\n serializedName: \"groupId\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const subscriptionId: OperationURLParameter = {\n parameterPath: \"subscriptionId\",\n mapper: {\n serializedName: \"subscriptionId\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const parameters3: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: DeploymentWhatIfMapper\n};\n\nexport const resourceGroupName: OperationURLParameter = {\n parameterPath: \"resourceGroupName\",\n mapper: {\n constraints: {\n Pattern: new RegExp(\"^[-\\\\w\\\\._\\\\(\\\\)]+$\"),\n MaxLength: 90,\n MinLength: 1\n },\n serializedName: \"resourceGroupName\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const template: OperationParameter = {\n parameterPath: \"template\",\n mapper: {\n serializedName: \"template\",\n required: true,\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } }\n }\n }\n};\n\nexport const resourceProviderNamespace: OperationURLParameter = {\n parameterPath: \"resourceProviderNamespace\",\n mapper: {\n serializedName: \"resourceProviderNamespace\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const properties: OperationParameter = {\n parameterPath: [\"options\", \"properties\"],\n mapper: ProviderRegistrationRequestMapper\n};\n\nexport const expand: OperationQueryParameter = {\n parameterPath: [\"options\", \"expand\"],\n mapper: {\n serializedName: \"$expand\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const parameters4: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: ResourcesMoveInfoMapper\n};\n\nexport const sourceResourceGroupName: OperationURLParameter = {\n parameterPath: \"sourceResourceGroupName\",\n mapper: {\n constraints: {\n Pattern: new RegExp(\"^[-\\\\w\\\\._\\\\(\\\\)]+$\"),\n MaxLength: 90,\n MinLength: 1\n },\n serializedName: \"sourceResourceGroupName\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const parentResourcePath: OperationURLParameter = {\n parameterPath: \"parentResourcePath\",\n mapper: {\n serializedName: \"parentResourcePath\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n skipEncoding: true\n};\n\nexport const resourceType: OperationURLParameter = {\n parameterPath: \"resourceType\",\n mapper: {\n serializedName: \"resourceType\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n skipEncoding: true\n};\n\nexport const resourceName: OperationURLParameter = {\n parameterPath: \"resourceName\",\n mapper: {\n serializedName: \"resourceName\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const apiVersion1: OperationQueryParameter = {\n parameterPath: \"apiVersion\",\n mapper: {\n serializedName: \"api-version\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const parameters5: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: GenericResourceMapper\n};\n\nexport const resourceId: OperationURLParameter = {\n parameterPath: \"resourceId\",\n mapper: {\n serializedName: \"resourceId\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n skipEncoding: true\n};\n\nexport const parameters6: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: ResourceGroupMapper\n};\n\nexport const forceDeletionTypes: OperationQueryParameter = {\n parameterPath: [\"options\", \"forceDeletionTypes\"],\n mapper: {\n serializedName: \"forceDeletionTypes\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const parameters7: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: ResourceGroupPatchableMapper\n};\n\nexport const parameters8: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: ExportTemplateRequestMapper\n};\n\nexport const resourceGroupName1: OperationURLParameter = {\n parameterPath: \"resourceGroupName\",\n mapper: {\n constraints: {\n MaxLength: 90,\n MinLength: 1\n },\n serializedName: \"resourceGroupName\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const tagName: OperationURLParameter = {\n parameterPath: \"tagName\",\n mapper: {\n serializedName: \"tagName\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const tagValue: OperationURLParameter = {\n parameterPath: \"tagValue\",\n mapper: {\n serializedName: \"tagValue\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const parameters9: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: TagsResourceMapper\n};\n\nexport const parameters10: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: TagsPatchResourceMapper\n};\n\nexport const operationId: OperationURLParameter = {\n parameterPath: \"operationId\",\n mapper: {\n serializedName: \"operationId\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport \"@azure/core-paging\";\nimport { PagedAsyncIterableIterator } from \"@azure/core-paging\";\nimport { Operations } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { ResourceManagementClientContext } from \"../resourceManagementClientContext\";\nimport {\n Operation,\n OperationsListNextOptionalParams,\n OperationsListOptionalParams,\n OperationsListNextNextOptionalParams,\n OperationsListResponse,\n OperationsListNextResponse,\n OperationsListNextNextResponse\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class representing a Operations. */\nexport class OperationsImpl implements Operations {\n private readonly client: ResourceManagementClientContext;\n\n /**\n * Initialize a new instance of the class Operations class.\n * @param client Reference to the service client\n */\n constructor(client: ResourceManagementClientContext) {\n this.client = client;\n }\n\n /**\n * Lists all of the available Microsoft.Resources REST API operations.\n * @param options The options parameters.\n */\n public list(\n options?: OperationsListOptionalParams\n ): PagedAsyncIterableIterator<Operation> {\n const iter = this.listPagingAll(options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listPagingPage(options);\n }\n };\n }\n\n private async *listPagingPage(\n options?: OperationsListOptionalParams\n ): AsyncIterableIterator<Operation[]> {\n let result = await this._list(options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listNext(continuationToken, options);\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listPagingAll(\n options?: OperationsListOptionalParams\n ): AsyncIterableIterator<Operation> {\n for await (const page of this.listPagingPage(options)) {\n yield* page;\n }\n }\n\n /**\n * ListNext\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n public listNext(\n nextLink: string,\n options?: OperationsListNextOptionalParams\n ): PagedAsyncIterableIterator<Operation> {\n const iter = this.listNextPagingAll(nextLink, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listNextPagingPage(nextLink, options);\n }\n };\n }\n\n private async *listNextPagingPage(\n nextLink: string,\n options?: OperationsListNextOptionalParams\n ): AsyncIterableIterator<Operation[]> {\n let result = await this._listNext(nextLink, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listNextNext(continuationToken, options);\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listNextPagingAll(\n nextLink: string,\n options?: OperationsListNextOptionalParams\n ): AsyncIterableIterator<Operation> {\n for await (const page of this.listNextPagingPage(nextLink, options)) {\n yield* page;\n }\n }\n\n /**\n * Lists all of the available Microsoft.Resources REST API operations.\n * @param options The options parameters.\n */\n private _list(\n options?: OperationsListOptionalParams\n ): Promise<OperationsListResponse> {\n return this.client.sendOperationRequest({ options }, listOperationSpec);\n }\n\n /**\n * ListNext\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n private _listNext(\n nextLink: string,\n options?: OperationsListNextOptionalParams\n ): Promise<OperationsListNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listNextOperationSpec\n );\n }\n\n /**\n * ListNextNext\n * @param nextLink The nextLink from the previous successful call to the ListNext method.\n * @param options The options parameters.\n */\n private _listNextNext(\n nextLink: string,\n options?: OperationsListNextNextOptionalParams\n ): Promise<OperationsListNextNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listNextNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst listOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Resources/operations\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.OperationListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.OperationListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.nextLink],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.OperationListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.nextLink],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\n// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { LroConfig, RawResponse } from \"./models\";\n\n/**\n * Detects where the continuation token is and returns it. Notice that azure-asyncoperation\n * must be checked first before the other location headers because there are scenarios\n * where both azure-asyncoperation and location could be present in the same response but\n * azure-asyncoperation should be the one to use for polling.\n */\nexport function getPollingUrl(\n rawResponse: RawResponse,\n defaultPath: string\n): string {\n return (\n getAzureAsyncOperation(rawResponse) ??\n getLocation(rawResponse) ??\n getOperationLocation(rawResponse) ??\n defaultPath\n );\n}\n\nfunction getLocation(rawResponse: RawResponse): string | undefined {\n return rawResponse.headers[\"location\"];\n}\n\nfunction getOperationLocation(rawResponse: RawResponse): string | undefined {\n return rawResponse.headers[\"operation-location\"];\n}\n\nfunction getAzureAsyncOperation(rawResponse: RawResponse): string | undefined {\n return rawResponse.headers[\"azure-asyncoperation\"];\n}\n\nexport function inferLroMode(\n requestPath: string,\n requestMethod: string,\n rawResponse: RawResponse\n): LroConfig {\n if (getAzureAsyncOperation(rawResponse) !== undefined) {\n return {\n mode: \"AzureAsync\",\n resourceLocation:\n requestMethod === \"PUT\"\n ? requestPath\n : requestMethod === \"POST\"\n ? getLocation(rawResponse)\n : undefined\n };\n } else if (\n getLocation(rawResponse) !== undefined ||\n getOperationLocation(rawResponse) !== undefined\n ) {\n return {\n mode: \"Location\"\n };\n } else if ([\"PUT\", \"PATCH\"].includes(requestMethod)) {\n return {\n mode: \"Body\"\n };\n }\n return {};\n}\n\nexport class RestError extends Error {\n public statusCode?: number;\n constructor(message: string, statusCode: number) {\n super(message);\n this.name = \"RestError\";\n this.statusCode = statusCode;\n\n Object.setPrototypeOf(this, RestError.prototype);\n }\n}\n\nexport function isUnexpectedInitialResponse(rawResponse: RawResponse): boolean {\n const code = rawResponse.statusCode;\n if (![203, 204, 202, 201, 200, 500].includes(code)) {\n throw new RestError(\n `Received unexpected HTTP status code ${code} in the initial response. This may indicate a server issue.`,\n code\n );\n }\n return false;\n}\n\nexport function isUnexpectedPollingResponse(rawResponse: RawResponse): boolean {\n const code = rawResponse.statusCode;\n if (![202, 201, 200, 500].includes(code)) {\n throw new RestError(\n `Received unexpected HTTP status code ${code} while polling. This may indicate a server issue.`,\n code\n );\n }\n return false;\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\n// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { PollOperationState } from \"@azure/core-lro\";\n\n/**\n * Options for the LRO poller.\n */\nexport interface LroEngineOptions {\n /**\n * Defines how much time the poller is going to wait before making a new request to the service.\n */\n intervalInMs?: number;\n /**\n * A serialized poller which can be used to resume an existing paused Long-Running-Operation.\n */\n resumeFrom?: string;\n}\n\nexport const successStates = [\"succeeded\"];\nexport const failureStates = [\"failed\", \"canceled\", \"cancelled\"];\n/**\n * The LRO states that signal that the LRO has completed.\n */\nexport const terminalStates = successStates.concat(failureStates);\n\n/**\n * The potential location of the result of the LRO if specified by the LRO extension in the swagger.\n */\nexport type LroResourceLocationConfig =\n | \"azure-async-operation\"\n | \"location\"\n | \"original-uri\";\n\n/**\n * The type of a LRO response body. This is just a convenience type for checking the status of the operation.\n */\n\nexport interface LroBody extends Record<string, unknown> {\n /** The status of the operation. */\n status?: string;\n /** The state of the provisioning process */\n provisioningState?: string;\n /** The properties of the provisioning process */\n properties?: { provisioningState?: string } & Record<string, unknown>;\n}\n\n/**\n * Simple type of the raw response.\n */\nexport interface RawResponse {\n /** The HTTP status code */\n statusCode: number;\n /** A HttpHeaders collection in the response represented as a simple JSON object where all header names have been normalized to be lower-case. */\n headers: {\n [headerName: string]: string;\n };\n /** The parsed response body */\n body?: unknown;\n}\n\n/**\n * The type of the response of a LRO.\n */\nexport interface LroResponse<T> {\n /** The flattened response */\n flatResponse: T;\n /** The raw response */\n rawResponse: RawResponse;\n}\n\n/** The type of which LRO implementation being followed by a specific API. */\nexport type LroMode = \"AzureAsync\" | \"Location\" | \"Body\";\n\n/**\n * The configuration of a LRO to determine how to perform polling and checking whether the operation has completed.\n */\nexport interface LroConfig {\n /** The LRO mode */\n mode?: LroMode;\n /** The path of a provisioned resource */\n resourceLocation?: string;\n}\n\n/**\n * Type of a polling operation state that can actually be resumed.\n */\nexport type ResumablePollOperationState<T> = PollOperationState<T> & {\n initialRawResponse?: RawResponse;\n config?: LroConfig;\n pollingURL?: string;\n};\n\nexport interface PollerConfig {\n intervalInMs: number;\n}\n\n/**\n * The type of a terminal state of an LRO.\n */\nexport interface LroTerminalState<T> extends LroResponse<T> {\n /**\n * Whether the operation has finished.\n */\n done: true;\n}\n\n/**\n * The type of an in-progress state of an LRO.\n */\nexport interface LroInProgressState<T> extends LroResponse<T> {\n /**\n * Whether the operation has finished.\n */\n done: false;\n /**\n * The request to be sent next if it is different from the standard polling one.\n * Notice that it will disregard any polling URLs provided to it.\n */\n next?: () => Promise<LroStatus<T>>;\n}\n\n/**\n * The type of an LRO state which is a tagged union of terminal and in-progress states.\n */\nexport type LroStatus<T> = LroTerminalState<T> | LroInProgressState<T>;\n\n/**\n * The type of the getLROStatusFromResponse method. It takes the response as input and returns along the response whether the operation has finished.\n */\nexport type GetLroStatusFromResponse<T> = (\n rawResponse: RawResponse,\n flatResponse: T\n) => LroStatus<T>;\n\n/**\n * Description of a long running operation.\n */\nexport interface LongRunningOperation<T> {\n /**\n * The request path.\n */\n requestPath: string;\n /**\n * The HTTP request method.\n */\n requestMethod: string;\n /**\n * A function that can be used to send initial request to the service.\n */\n sendInitialRequest: (\n initializeState: (\n rawResponse: RawResponse,\n flatResponse: unknown\n ) => boolean\n ) => Promise<LroResponse<T>>;\n /**\n * A function that can be used to poll for the current status of a long running operation.\n */\n sendPollRequest: (config: LroConfig, path: string) => Promise<LroStatus<T>>;\n /**\n * A function that can be used to retrieve the provisioned azure resource.\n */\n retrieveAzureAsyncResource: (path?: string) => Promise<LroResponse<T>>;\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\n// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport {\n failureStates,\n LroResourceLocationConfig,\n LongRunningOperation,\n LroBody,\n LroResponse,\n LroStatus,\n RawResponse,\n successStates\n} from \"./models\";\nimport { isUnexpectedPollingResponse } from \"./requestUtils\";\n\nfunction getResponseStatus(rawResponse: RawResponse): string {\n const { status } = (rawResponse.body as LroBody) ?? {};\n return status?.toLowerCase() ?? \"succeeded\";\n}\n\nfunction isAzureAsyncPollingDone(rawResponse: RawResponse): boolean {\n const state = getResponseStatus(rawResponse);\n if (\n isUnexpectedPollingResponse(rawResponse) ||\n failureStates.includes(state)\n ) {\n throw new Error(`Operation status: ${state}`);\n }\n return successStates.includes(state);\n}\n\nasync function sendFinalRequest<TResult>(\n lro: LongRunningOperation<TResult>,\n lroResourceLocationConfig?: LroResourceLocationConfig,\n resourceLocation?: string\n): Promise<LroResponse<TResult> | undefined> {\n switch (lroResourceLocationConfig) {\n case \"original-uri\":\n return lro.retrieveAzureAsyncResource();\n case \"azure-async-operation\":\n return Promise.resolve(undefined);\n case \"location\":\n default:\n return lro.retrieveAzureAsyncResource(resourceLocation);\n }\n}\n\nexport function processAzureAsyncOperationResult<TResult>(\n lro: LongRunningOperation<TResult>,\n resourceLocation?: string,\n lroResourceLocationConfig?: LroResourceLocationConfig\n): (rawResponse: RawResponse, flatResponse: TResult) => LroStatus<TResult> {\n return (\n rawResponse: RawResponse,\n flatResponse: TResult\n ): LroStatus<TResult> => {\n if (isAzureAsyncPollingDone(rawResponse)) {\n if (resourceLocation === undefined) {\n return { rawResponse, flatResponse, done: true };\n } else {\n return {\n rawResponse,\n flatResponse,\n done: false,\n next: async () => {\n const finalResponse = await sendFinalRequest(\n lro,\n lroResourceLocationConfig,\n resourceLocation\n );\n return {\n ...(finalResponse ?? {\n rawResponse,\n flatResponse\n }),\n done: true\n };\n }\n };\n }\n }\n return {\n rawResponse,\n flatResponse,\n done: false\n };\n };\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\n// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport {\n failureStates,\n LroBody,\n LroStatus,\n RawResponse,\n successStates\n} from \"./models\";\nimport { isUnexpectedPollingResponse } from \"./requestUtils\";\n\nfunction getProvisioningState(rawResponse: RawResponse): string {\n const { properties, provisioningState } = (rawResponse.body as LroBody) ?? {};\n const state: string | undefined =\n properties?.provisioningState ?? provisioningState;\n return state?.toLowerCase() ?? \"succeeded\";\n}\n\nexport function isBodyPollingDone(rawResponse: RawResponse): boolean {\n const state = getProvisioningState(rawResponse);\n if (\n isUnexpectedPollingResponse(rawResponse) ||\n failureStates.includes(state)\n ) {\n throw new Error(\n `The long running operation has failed. The provisioning state: ${state}.`\n );\n }\n return successStates.includes(state);\n}\n\n/**\n * Creates a polling strategy based on BodyPolling which uses the provisioning state\n * from the result to determine the current operation state\n */\nexport function processBodyPollingOperationResult<TResult>(\n rawResponse: RawResponse,\n flatResponse: TResult\n): LroStatus<TResult> {\n return {\n rawResponse,\n flatResponse,\n done: isBodyPollingDone(rawResponse)\n };\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\n// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { LroStatus, RawResponse } from \"./models\";\nimport { isUnexpectedPollingResponse } from \"./requestUtils\";\n\nfunction isLocationPollingDone(rawResponse: RawResponse): boolean {\n return (\n !isUnexpectedPollingResponse(rawResponse) && rawResponse.statusCode !== 202\n );\n}\n\nexport function processLocationPollingOperationResult<TResult>(\n rawResponse: RawResponse,\n flatResponse: TResult\n): LroStatus<TResult> {\n return {\n rawResponse,\n flatResponse,\n done: isLocationPollingDone(rawResponse)\n };\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\n// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { LroStatus, RawResponse } from \"./models\";\n\nexport function processPassthroughOperationResult<TResult>(\n rawResponse: RawResponse,\n flatResponse: TResult\n): LroStatus<TResult> {\n return {\n rawResponse,\n flatResponse,\n done: true\n };\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\n// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { processAzureAsyncOperationResult } from \"./azureAsyncPolling\";\nimport {\n isBodyPollingDone,\n processBodyPollingOperationResult\n} from \"./bodyPolling\";\nimport { processLocationPollingOperationResult } from \"./locationPolling\";\nimport {\n LroResourceLocationConfig,\n GetLroStatusFromResponse,\n LongRunningOperation,\n LroConfig,\n LroStatus,\n PollerConfig,\n RawResponse,\n ResumablePollOperationState\n} from \"./models\";\nimport { processPassthroughOperationResult } from \"./passthrough\";\nimport {\n getPollingUrl,\n inferLroMode,\n isUnexpectedInitialResponse\n} from \"./requestUtils\";\n\n/**\n * creates a stepping function that maps an LRO state to another.\n */\nexport function createGetLroStatusFromResponse<TResult>(\n lroPrimitives: LongRunningOperation<TResult>,\n config: LroConfig,\n lroResourceLocationConfig?: LroResourceLocationConfig\n): GetLroStatusFromResponse<TResult> {\n switch (config.mode) {\n case \"AzureAsync\": {\n return processAzureAsyncOperationResult(\n lroPrimitives,\n config.resourceLocation,\n lroResourceLocationConfig\n );\n }\n case \"Location\": {\n return processLocationPollingOperationResult;\n }\n case \"Body\": {\n return processBodyPollingOperationResult;\n }\n default: {\n return processPassthroughOperationResult;\n }\n }\n}\n\n/**\n * Creates a polling operation that returns a LRO state.\n */\nexport function createPollForLROStatus<TResult>(\n lroPrimitives: LongRunningOperation<TResult>,\n config: LroConfig\n): (\n pollingURL: string,\n pollerConfig: PollerConfig\n) => Promise<LroStatus<TResult>> {\n return async (\n path: string,\n pollerConfig: PollerConfig\n ): Promise<LroStatus<TResult>> => {\n const response = await lroPrimitives.sendPollRequest(config, path);\n const retryAfter: string | undefined =\n response.rawResponse.headers[\"retry-after\"];\n if (retryAfter !== undefined) {\n const retryAfterInMs = parseInt(retryAfter);\n pollerConfig.intervalInMs = isNaN(retryAfterInMs)\n ? calculatePollingIntervalFromDate(\n new Date(retryAfter),\n pollerConfig.intervalInMs\n )\n : retryAfterInMs;\n }\n return response;\n };\n}\n\nfunction calculatePollingIntervalFromDate(\n retryAfterDate: Date,\n defaultIntervalInMs: number\n): number {\n const timeNow = Math.floor(new Date().getTime());\n const retryAfterTime = retryAfterDate.getTime();\n if (timeNow < retryAfterTime) {\n return retryAfterTime - timeNow;\n }\n return defaultIntervalInMs;\n}\n\n/**\n * Creates a callback to be used to initialize the polling operation state.\n * @param state - of the polling operation\n * @param operationSpec - of the LRO\n * @param callback - callback to be called when the operation is done\n * @returns callback that initializes the state of the polling operation\n */\nexport function createInitializeState<TResult>(\n state: ResumablePollOperationState<TResult>,\n requestPath: string,\n requestMethod: string\n): (rawResponse: RawResponse, flatResponse: unknown) => boolean {\n return (rawResponse: RawResponse, flatResponse: unknown) => {\n if (isUnexpectedInitialResponse(rawResponse)) return true;\n state.initialRawResponse = rawResponse;\n state.isStarted = true;\n state.pollingURL = getPollingUrl(state.initialRawResponse, requestPath);\n state.config = inferLroMode(\n requestPath,\n requestMethod,\n state.initialRawResponse\n );\n /** short circuit polling if body polling is done in the initial request */\n if (\n state.config.mode === undefined ||\n (state.config.mode === \"Body\" &&\n isBodyPollingDone(state.initialRawResponse))\n ) {\n state.result = flatResponse as TResult;\n state.isCompleted = true;\n }\n return Boolean(state.isCompleted);\n };\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\n// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { AbortSignalLike } from \"@azure/abort-controller\";\nimport { PollOperationState, PollOperation } from \"@azure/core-lro\";\nimport {\n PollerConfig,\n ResumablePollOperationState,\n LongRunningOperation,\n LroStatus\n} from \"./models\";\nimport { getPollingUrl } from \"./requestUtils\";\nimport { createInitializeState, createPollForLROStatus } from \"./stateMachine\";\n\nexport class GenericPollOperation<\n TResult,\n TState extends PollOperationState<TResult>\n> implements PollOperation<TState, TResult> {\n private getLROStatusFromResponse?: (\n pollingURL: string,\n pollerConfig: PollerConfig\n ) => Promise<LroStatus<TResult>>;\n private pollerConfig?: PollerConfig;\n constructor(\n public state: TState & ResumablePollOperationState<TResult>,\n private lro: LongRunningOperation<TResult>\n ) {}\n\n public setPollerConfig(pollerConfig: PollerConfig): void {\n this.pollerConfig = pollerConfig;\n }\n\n /**\n * General update function for LROPoller, the general process is as follows\n * 1. Check initial operation result to determine the strategy to use\n * - Strategies: Location, Azure-AsyncOperation, Original Uri\n * 2. Check if the operation result has a terminal state\n * - Terminal state will be determined by each strategy\n * 2.1 If it is terminal state Check if a final GET request is required, if so\n * send final GET request and return result from operation. If no final GET\n * is required, just return the result from operation.\n * - Determining what to call for final request is responsibility of each strategy\n * 2.2 If it is not terminal state, call the polling operation and go to step 1\n * - Determining what to call for polling is responsibility of each strategy\n * - Strategies will always use the latest URI for polling if provided otherwise\n * the last known one\n */\n async update(options?: {\n abortSignal?: AbortSignalLike | undefined;\n fireProgress?: ((state: TState) => void) | undefined;\n }): Promise<PollOperation<TState, TResult>> {\n const state = this.state;\n if (!state.isStarted) {\n const initializeState = createInitializeState(\n state,\n this.lro.requestPath,\n this.lro.requestMethod\n );\n await this.lro.sendInitialRequest(initializeState);\n }\n\n if (!state.isCompleted) {\n if (this.getLROStatusFromResponse === undefined) {\n if (state.config === undefined) {\n throw new Error(\n \"Bad state: LRO mode is undefined. Please check if the serialized state is well-formed.\"\n );\n }\n this.getLROStatusFromResponse = createPollForLROStatus(\n this.lro,\n state.config\n );\n }\n if (state.pollingURL === undefined) {\n throw new Error(\n \"Bad state: polling URL is undefined. Please check if the serialized state is well-formed.\"\n );\n }\n const currentState = await this.getLROStatusFromResponse(\n state.pollingURL,\n this.pollerConfig!\n );\n if (currentState.done) {\n state.result = currentState.flatResponse;\n state.isCompleted = true;\n } else {\n this.getLROStatusFromResponse =\n currentState.next ?? this.getLROStatusFromResponse;\n state.pollingURL = getPollingUrl(\n currentState.rawResponse,\n state.pollingURL\n );\n }\n }\n options?.fireProgress?.(state);\n return this;\n }\n\n async cancel(): Promise<PollOperation<TState, TResult>> {\n this.state.isCancelled = true;\n return this;\n }\n\n /**\n * Serializes the Poller operation.\n */\n public toString(): string {\n return JSON.stringify({\n state: this.state\n });\n }\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\n// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { Poller, PollOperationState } from \"@azure/core-lro\";\nimport {\n LongRunningOperation,\n LroEngineOptions,\n ResumablePollOperationState\n} from \"./models\";\nimport { GenericPollOperation } from \"./operation\";\n\n/**\n * The LRO Engine, a class that performs polling.\n */\nexport class LroEngine<\n TResult,\n TState extends PollOperationState<TResult>\n> extends Poller<TState, TResult> {\n private intervalInMs: number;\n\n constructor(lro: LongRunningOperation<TResult>, options?: LroEngineOptions) {\n const { intervalInMs = 2000, resumeFrom } = options || {};\n function deserializeState(\n resumeFrom: string\n ): TState & ResumablePollOperationState<TResult> {\n try {\n return JSON.parse(resumeFrom).state;\n } catch (e) {\n throw new Error(\n `LroEngine: Unable to deserialize state: ${resumeFrom}`\n );\n }\n }\n const state: TState & ResumablePollOperationState<TResult> = resumeFrom\n ? deserializeState(resumeFrom)\n : ({} as any);\n\n const operation = new GenericPollOperation(state, lro);\n super(operation);\n\n this.intervalInMs = intervalInMs;\n operation.setPollerConfig(this as any);\n }\n\n /**\n * The method used by the poller to wait before attempting to update its operation.\n */\n delay(): Promise<void> {\n return new Promise((resolve) =>\n setTimeout(() => resolve(), this.intervalInMs)\n );\n }\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\n// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport {\n OperationArguments,\n OperationSpec,\n OperationResponseMap,\n FullOperationResponse\n} from \"@azure/core-client\";\nimport {\n LroResourceLocationConfig,\n GetLroStatusFromResponse,\n LongRunningOperation,\n LroConfig,\n LroMode,\n LroResponse,\n LroStatus,\n createGetLroStatusFromResponse,\n RawResponse\n} from \"./lro\";\n\nexport const successStates = [\"succeeded\"];\nexport const failureStates = [\"failed\", \"canceled\", \"cancelled\"];\nexport const terminalStates = successStates.concat(failureStates);\n\nexport type SendOperationFn<T> = (\n args: OperationArguments,\n spec: OperationSpec\n) => Promise<LroResponse<T>>;\n\nexport function createPollingMethod<TResult>(\n sendOperationFn: SendOperationFn<TResult>,\n GetLroStatusFromResponse: GetLroStatusFromResponse<TResult>,\n args: OperationArguments,\n spec: OperationSpec,\n mode?: LroMode\n): (path?: string) => Promise<LroStatus<TResult>> {\n /**\n * Polling calls will always return a status object i.e. {\"status\": \"success\"}\n * these intermediate responses are not described in the swagger so we need to\n * pass custom mappers at runtime.\n * This function replaces all the existing mappers to be able to deserialize a status object\n * @param responses Original set of responses defined in the operation\n */\n function getCompositeMappers(responses: {\n [responseCode: string]: OperationResponseMap;\n }): {\n [responseCode: string]: OperationResponseMap;\n } {\n return Object.keys(responses).reduce((acc, statusCode) => {\n return {\n ...acc,\n [statusCode]: {\n ...responses[statusCode],\n bodyMapper: {\n type: {\n name: \"Composite\",\n modelProperties: {\n status: {\n serializedName: \"status\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n }\n }\n };\n }, {} as { [responseCode: string]: OperationResponseMap });\n }\n let response: LroStatus<TResult> | undefined = undefined;\n const customerCallback = args?.options?.onResponse;\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: (\n rawResponse: FullOperationResponse,\n flatResponse: unknown\n ): void => {\n response = GetLroStatusFromResponse(\n {\n statusCode: rawResponse.status,\n body: rawResponse.parsedBody,\n headers: rawResponse.headers.toJSON()\n },\n flatResponse as TResult\n );\n if (response.done) {\n customerCallback?.(rawResponse, flatResponse);\n }\n }\n }\n };\n // Make sure we don't send any body to the get request\n const { requestBody, responses, ...restSpec } = spec;\n if (mode === \"AzureAsync\") {\n return async (path?: string) => {\n await sendOperationFn(updatedArgs, {\n ...restSpec,\n responses: getCompositeMappers(responses),\n httpMethod: \"GET\",\n ...(path && { path })\n });\n return response!;\n };\n }\n return async (path?: string) => {\n await sendOperationFn(updatedArgs, {\n ...restSpec,\n responses: responses,\n httpMethod: \"GET\",\n ...(path && { path })\n });\n return response!;\n };\n}\n\n/**\n * We need to selectively deserialize our responses, only deserializing if we\n * are in a final Lro response, not deserializing any polling non-terminal responses\n */\nexport function shouldDeserializeLro(lroResourceLocationConfig?: string) {\n let initialOperationInfo: LroResponseInfo | undefined;\n let isInitialRequest = true;\n\n return (response: FullOperationResponse) => {\n if (response.status < 200 || response.status >= 300) {\n return true;\n }\n\n if (!initialOperationInfo) {\n initialOperationInfo = getLroData(response);\n } else {\n isInitialRequest = false;\n }\n\n if (\n initialOperationInfo.azureAsyncOperation ||\n initialOperationInfo.operationLocation\n ) {\n return (\n !isInitialRequest &&\n isAsyncOperationFinalResponse(\n response,\n initialOperationInfo,\n lroResourceLocationConfig\n )\n );\n }\n\n if (initialOperationInfo.location) {\n return isLocationFinalResponse(response);\n }\n\n if (initialOperationInfo.requestMethod === \"PUT\") {\n return isBodyPollingFinalResponse(response);\n }\n\n return true;\n };\n}\n\nfunction isAsyncOperationFinalResponse(\n response: FullOperationResponse,\n initialOperationInfo: LroResponseInfo,\n lroResourceLocationConfig?: string\n): boolean {\n const status: string = response.parsedBody?.status || \"Succeeded\";\n if (!terminalStates.includes(status.toLowerCase())) {\n return false;\n }\n\n if (initialOperationInfo.requestMethod === \"DELETE\") {\n return true;\n }\n\n if (\n initialOperationInfo.requestMethod === \"PUT\" &&\n lroResourceLocationConfig &&\n lroResourceLocationConfig.toLowerCase() === \"azure-asyncoperation\"\n ) {\n return true;\n }\n\n if (\n initialOperationInfo.requestMethod !== \"PUT\" &&\n !initialOperationInfo.location\n ) {\n return true;\n }\n\n return false;\n}\n\nfunction isLocationFinalResponse(response: FullOperationResponse): boolean {\n return response.status !== 202;\n}\n\nfunction isBodyPollingFinalResponse(response: FullOperationResponse): boolean {\n const provisioningState: string =\n response.parsedBody?.properties?.provisioningState || \"Succeeded\";\n\n if (terminalStates.includes(provisioningState.toLowerCase())) {\n return true;\n }\n\n return false;\n}\n\ninterface LroResponseInfo {\n requestMethod: string;\n azureAsyncOperation?: string;\n operationLocation?: string;\n location?: string;\n}\n\nfunction getLroData(result: FullOperationResponse): LroResponseInfo {\n return {\n azureAsyncOperation: result.headers.get(\"azure-asyncoperation\"),\n operationLocation: result.headers.get(\"operation-location\"),\n location: result.headers.get(\"location\"),\n requestMethod: result.request.method\n };\n}\n\nexport function getSpecPath(spec: OperationSpec): string {\n if (spec.path) {\n return spec.path;\n } else {\n throw Error(\"Bad spec: request path is not found!\");\n }\n}\n\nexport class CoreClientLro<T> implements LongRunningOperation<T> {\n constructor(\n private sendOperationFn: SendOperationFn<T>,\n private args: OperationArguments,\n private spec: OperationSpec,\n private lroResourceLocationConfig?: LroResourceLocationConfig,\n public requestPath: string = spec.path!,\n public requestMethod: string = spec.httpMethod\n ) {}\n public async sendInitialRequest(\n initializeState: (\n rawResponse: RawResponse,\n flatResponse: unknown\n ) => boolean\n ): Promise<LroResponse<T>> {\n const { onResponse, ...restOptions } = this.args.options || {};\n return this.sendOperationFn(\n {\n ...this.args,\n options: {\n ...restOptions,\n onResponse: (\n rawResponse: FullOperationResponse,\n flatResponse: unknown\n ) => {\n const isCompleted = initializeState(\n {\n statusCode: rawResponse.status,\n body: rawResponse.parsedBody,\n headers: rawResponse.headers.toJSON()\n },\n flatResponse\n );\n if (isCompleted) {\n onResponse?.(rawResponse, flatResponse);\n }\n }\n }\n },\n this.spec\n );\n }\n\n public async sendPollRequest(\n config: LroConfig,\n path: string\n ): Promise<LroStatus<T>> {\n const getLroStatusFromResponse = createGetLroStatusFromResponse(\n this,\n config,\n this.lroResourceLocationConfig\n );\n return createPollingMethod(\n this.sendOperationFn,\n getLroStatusFromResponse,\n this.args,\n this.spec,\n config.mode\n )(path);\n }\n\n public async retrieveAzureAsyncResource(\n path?: string\n ): Promise<LroResponse<T>> {\n const updatedArgs = { ...this.args };\n if (updatedArgs.options) {\n (updatedArgs.options as any).shouldDeserialize = true;\n }\n return createPollingMethod(\n this.sendOperationFn,\n (rawResponse, flatResponse) => ({\n rawResponse,\n flatResponse,\n done: true\n }),\n updatedArgs,\n this.spec\n )(path);\n }\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport \"@azure/core-paging\";\nimport { PagedAsyncIterableIterator } from \"@azure/core-paging\";\nimport { Deployments } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { ResourceManagementClientContext } from \"../resourceManagementClientContext\";\nimport { PollerLike, PollOperationState } from \"@azure/core-lro\";\nimport { LroEngine } from \"../lro\";\nimport { CoreClientLro, shouldDeserializeLro } from \"../coreClientLro\";\nimport {\n DeploymentExtended,\n DeploymentsListAtScopeNextOptionalParams,\n DeploymentsListAtScopeOptionalParams,\n DeploymentsListAtTenantScopeNextOptionalParams,\n DeploymentsListAtTenantScopeOptionalParams,\n DeploymentsListAtManagementGroupScopeNextOptionalParams,\n DeploymentsListAtManagementGroupScopeOptionalParams,\n DeploymentsListAtSubscriptionScopeNextOptionalParams,\n DeploymentsListAtSubscriptionScopeOptionalParams,\n DeploymentsListByResourceGroupNextOptionalParams,\n DeploymentsListByResourceGroupOptionalParams,\n DeploymentsListAtScopeNextNextOptionalParams,\n DeploymentsListAtTenantScopeNextNextOptionalParams,\n DeploymentsListAtManagementGroupScopeNextNextOptionalParams,\n DeploymentsListAtSubscriptionScopeNextNextOptionalParams,\n DeploymentsListByResourceGroupNextNextOptionalParams,\n DeploymentsDeleteAtScopeOptionalParams,\n DeploymentsCheckExistenceAtScopeOptionalParams,\n DeploymentsCheckExistenceAtScopeResponse,\n Deployment,\n DeploymentsCreateOrUpdateAtScopeOptionalParams,\n DeploymentsCreateOrUpdateAtScopeResponse,\n DeploymentsGetAtScopeOptionalParams,\n DeploymentsGetAtScopeResponse,\n DeploymentsCancelAtScopeOptionalParams,\n DeploymentsValidateAtScopeOptionalParams,\n DeploymentsValidateAtScopeResponse,\n DeploymentsExportTemplateAtScopeOptionalParams,\n DeploymentsExportTemplateAtScopeResponse,\n DeploymentsListAtScopeResponse,\n DeploymentsDeleteAtTenantScopeOptionalParams,\n DeploymentsCheckExistenceAtTenantScopeOptionalParams,\n DeploymentsCheckExistenceAtTenantScopeResponse,\n ScopedDeployment,\n DeploymentsCreateOrUpdateAtTenantScopeOptionalParams,\n DeploymentsCreateOrUpdateAtTenantScopeResponse,\n DeploymentsGetAtTenantScopeOptionalParams,\n DeploymentsGetAtTenantScopeResponse,\n DeploymentsCancelAtTenantScopeOptionalParams,\n DeploymentsValidateAtTenantScopeOptionalParams,\n DeploymentsValidateAtTenantScopeResponse,\n ScopedDeploymentWhatIf,\n DeploymentsWhatIfAtTenantScopeOptionalParams,\n DeploymentsWhatIfAtTenantScopeResponse,\n DeploymentsExportTemplateAtTenantScopeOptionalParams,\n DeploymentsExportTemplateAtTenantScopeResponse,\n DeploymentsListAtTenantScopeResponse,\n DeploymentsDeleteAtManagementGroupScopeOptionalParams,\n DeploymentsCheckExistenceAtManagementGroupScopeOptionalParams,\n DeploymentsCheckExistenceAtManagementGroupScopeResponse,\n DeploymentsCreateOrUpdateAtManagementGroupScopeOptionalParams,\n DeploymentsCreateOrUpdateAtManagementGroupScopeResponse,\n DeploymentsGetAtManagementGroupScopeOptionalParams,\n DeploymentsGetAtManagementGroupScopeResponse,\n DeploymentsCancelAtManagementGroupScopeOptionalParams,\n DeploymentsValidateAtManagementGroupScopeOptionalParams,\n DeploymentsValidateAtManagementGroupScopeResponse,\n DeploymentsWhatIfAtManagementGroupScopeOptionalParams,\n DeploymentsWhatIfAtManagementGroupScopeResponse,\n DeploymentsExportTemplateAtManagementGroupScopeOptionalParams,\n DeploymentsExportTemplateAtManagementGroupScopeResponse,\n DeploymentsListAtManagementGroupScopeResponse,\n DeploymentsDeleteAtSubscriptionScopeOptionalParams,\n DeploymentsCheckExistenceAtSubscriptionScopeOptionalParams,\n DeploymentsCheckExistenceAtSubscriptionScopeResponse,\n DeploymentsCreateOrUpdateAtSubscriptionScopeOptionalParams,\n DeploymentsCreateOrUpdateAtSubscriptionScopeResponse,\n DeploymentsGetAtSubscriptionScopeOptionalParams,\n DeploymentsGetAtSubscriptionScopeResponse,\n DeploymentsCancelAtSubscriptionScopeOptionalParams,\n DeploymentsValidateAtSubscriptionScopeOptionalParams,\n DeploymentsValidateAtSubscriptionScopeResponse,\n DeploymentWhatIf,\n DeploymentsWhatIfAtSubscriptionScopeOptionalParams,\n DeploymentsWhatIfAtSubscriptionScopeResponse,\n DeploymentsExportTemplateAtSubscriptionScopeOptionalParams,\n DeploymentsExportTemplateAtSubscriptionScopeResponse,\n DeploymentsListAtSubscriptionScopeResponse,\n DeploymentsDeleteOptionalParams,\n DeploymentsCheckExistenceOptionalParams,\n DeploymentsCheckExistenceResponse,\n DeploymentsCreateOrUpdateOptionalParams,\n DeploymentsCreateOrUpdateResponse,\n DeploymentsGetOptionalParams,\n DeploymentsGetResponse,\n DeploymentsCancelOptionalParams,\n DeploymentsValidateOptionalParams,\n DeploymentsValidateResponse,\n DeploymentsWhatIfOptionalParams,\n DeploymentsWhatIfResponse,\n DeploymentsExportTemplateOptionalParams,\n DeploymentsExportTemplateResponse,\n DeploymentsListByResourceGroupResponse,\n DeploymentsCalculateTemplateHashOptionalParams,\n DeploymentsCalculateTemplateHashResponse,\n DeploymentsListAtScopeNextResponse,\n DeploymentsListAtTenantScopeNextResponse,\n DeploymentsListAtManagementGroupScopeNextResponse,\n DeploymentsListAtSubscriptionScopeNextResponse,\n DeploymentsListByResourceGroupNextResponse,\n DeploymentsListAtScopeNextNextResponse,\n DeploymentsListAtTenantScopeNextNextResponse,\n DeploymentsListAtManagementGroupScopeNextNextResponse,\n DeploymentsListAtSubscriptionScopeNextNextResponse,\n DeploymentsListByResourceGroupNextNextResponse\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class representing a Deployments. */\nexport class DeploymentsImpl implements Deployments {\n private readonly client: ResourceManagementClientContext;\n\n /**\n * Initialize a new instance of the class Deployments class.\n * @param client Reference to the service client\n */\n constructor(client: ResourceManagementClientContext) {\n this.client = client;\n }\n\n /**\n * Get all the deployments at the given scope.\n * @param scope The resource scope.\n * @param options The options parameters.\n */\n public listAtScope(\n scope: string,\n options?: DeploymentsListAtScopeOptionalParams\n ): PagedAsyncIterableIterator<DeploymentExtended> {\n const iter = this.listAtScopePagingAll(scope, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtScopePagingPage(scope, options);\n }\n };\n }\n\n private async *listAtScopePagingPage(\n scope: string,\n options?: DeploymentsListAtScopeOptionalParams\n ): AsyncIterableIterator<DeploymentExtended[]> {\n let result = await this._listAtScope(scope, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtScopeNext(scope, continuationToken, options);\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtScopePagingAll(\n scope: string,\n options?: DeploymentsListAtScopeOptionalParams\n ): AsyncIterableIterator<DeploymentExtended> {\n for await (const page of this.listAtScopePagingPage(scope, options)) {\n yield* page;\n }\n }\n\n /**\n * Get all the deployments at the tenant scope.\n * @param options The options parameters.\n */\n public listAtTenantScope(\n options?: DeploymentsListAtTenantScopeOptionalParams\n ): PagedAsyncIterableIterator<DeploymentExtended> {\n const iter = this.listAtTenantScopePagingAll(options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtTenantScopePagingPage(options);\n }\n };\n }\n\n private async *listAtTenantScopePagingPage(\n options?: DeploymentsListAtTenantScopeOptionalParams\n ): AsyncIterableIterator<DeploymentExtended[]> {\n let result = await this._listAtTenantScope(options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtTenantScopeNext(continuationToken, options);\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtTenantScopePagingAll(\n options?: DeploymentsListAtTenantScopeOptionalParams\n ): AsyncIterableIterator<DeploymentExtended> {\n for await (const page of this.listAtTenantScopePagingPage(options)) {\n yield* page;\n }\n }\n\n /**\n * Get all the deployments for a management group.\n * @param groupId The management group ID.\n * @param options The options parameters.\n */\n public listAtManagementGroupScope(\n groupId: string,\n options?: DeploymentsListAtManagementGroupScopeOptionalParams\n ): PagedAsyncIterableIterator<DeploymentExtended> {\n const iter = this.listAtManagementGroupScopePagingAll(groupId, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtManagementGroupScopePagingPage(groupId, options);\n }\n };\n }\n\n private async *listAtManagementGroupScopePagingPage(\n groupId: string,\n options?: DeploymentsListAtManagementGroupScopeOptionalParams\n ): AsyncIterableIterator<DeploymentExtended[]> {\n let result = await this._listAtManagementGroupScope(groupId, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtManagementGroupScopeNext(\n groupId,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtManagementGroupScopePagingAll(\n groupId: string,\n options?: DeploymentsListAtManagementGroupScopeOptionalParams\n ): AsyncIterableIterator<DeploymentExtended> {\n for await (const page of this.listAtManagementGroupScopePagingPage(\n groupId,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * Get all the deployments for a subscription.\n * @param options The options parameters.\n */\n public listAtSubscriptionScope(\n options?: DeploymentsListAtSubscriptionScopeOptionalParams\n ): PagedAsyncIterableIterator<DeploymentExtended> {\n const iter = this.listAtSubscriptionScopePagingAll(options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtSubscriptionScopePagingPage(options);\n }\n };\n }\n\n private async *listAtSubscriptionScopePagingPage(\n options?: DeploymentsListAtSubscriptionScopeOptionalParams\n ): AsyncIterableIterator<DeploymentExtended[]> {\n let result = await this._listAtSubscriptionScope(options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtSubscriptionScopeNext(\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtSubscriptionScopePagingAll(\n options?: DeploymentsListAtSubscriptionScopeOptionalParams\n ): AsyncIterableIterator<DeploymentExtended> {\n for await (const page of this.listAtSubscriptionScopePagingPage(options)) {\n yield* page;\n }\n }\n\n /**\n * Get all the deployments for a resource group.\n * @param resourceGroupName The name of the resource group with the deployments to get. The name is\n * case insensitive.\n * @param options The options parameters.\n */\n public listByResourceGroup(\n resourceGroupName: string,\n options?: DeploymentsListByResourceGroupOptionalParams\n ): PagedAsyncIterableIterator<DeploymentExtended> {\n const iter = this.listByResourceGroupPagingAll(resourceGroupName, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listByResourceGroupPagingPage(resourceGroupName, options);\n }\n };\n }\n\n private async *listByResourceGroupPagingPage(\n resourceGroupName: string,\n options?: DeploymentsListByResourceGroupOptionalParams\n ): AsyncIterableIterator<DeploymentExtended[]> {\n let result = await this._listByResourceGroup(resourceGroupName, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listByResourceGroupNext(\n resourceGroupName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listByResourceGroupPagingAll(\n resourceGroupName: string,\n options?: DeploymentsListByResourceGroupOptionalParams\n ): AsyncIterableIterator<DeploymentExtended> {\n for await (const page of this.listByResourceGroupPagingPage(\n resourceGroupName,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * ListAtScopeNext\n * @param scope The resource scope.\n * @param nextLink The nextLink from the previous successful call to the ListAtScope method.\n * @param options The options parameters.\n */\n public listAtScopeNext(\n scope: string,\n nextLink: string,\n options?: DeploymentsListAtScopeNextOptionalParams\n ): PagedAsyncIterableIterator<DeploymentExtended> {\n const iter = this.listAtScopeNextPagingAll(scope, nextLink, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtScopeNextPagingPage(scope, nextLink, options);\n }\n };\n }\n\n private async *listAtScopeNextPagingPage(\n scope: string,\n nextLink: string,\n options?: DeploymentsListAtScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentExtended[]> {\n let result = await this._listAtScopeNext(scope, nextLink, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtScopeNextNext(\n scope,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtScopeNextPagingAll(\n scope: string,\n nextLink: string,\n options?: DeploymentsListAtScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentExtended> {\n for await (const page of this.listAtScopeNextPagingPage(\n scope,\n nextLink,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * ListAtTenantScopeNext\n * @param nextLink The nextLink from the previous successful call to the ListAtTenantScope method.\n * @param options The options parameters.\n */\n public listAtTenantScopeNext(\n nextLink: string,\n options?: DeploymentsListAtTenantScopeNextOptionalParams\n ): PagedAsyncIterableIterator<DeploymentExtended> {\n const iter = this.listAtTenantScopeNextPagingAll(nextLink, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtTenantScopeNextPagingPage(nextLink, options);\n }\n };\n }\n\n private async *listAtTenantScopeNextPagingPage(\n nextLink: string,\n options?: DeploymentsListAtTenantScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentExtended[]> {\n let result = await this._listAtTenantScopeNext(nextLink, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtTenantScopeNextNext(\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtTenantScopeNextPagingAll(\n nextLink: string,\n options?: DeploymentsListAtTenantScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentExtended> {\n for await (const page of this.listAtTenantScopeNextPagingPage(\n nextLink,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * ListAtManagementGroupScopeNext\n * @param groupId The management group ID.\n * @param nextLink The nextLink from the previous successful call to the ListAtManagementGroupScope\n * method.\n * @param options The options parameters.\n */\n public listAtManagementGroupScopeNext(\n groupId: string,\n nextLink: string,\n options?: DeploymentsListAtManagementGroupScopeNextOptionalParams\n ): PagedAsyncIterableIterator<DeploymentExtended> {\n const iter = this.listAtManagementGroupScopeNextPagingAll(\n groupId,\n nextLink,\n options\n );\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtManagementGroupScopeNextPagingPage(\n groupId,\n nextLink,\n options\n );\n }\n };\n }\n\n private async *listAtManagementGroupScopeNextPagingPage(\n groupId: string,\n nextLink: string,\n options?: DeploymentsListAtManagementGroupScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentExtended[]> {\n let result = await this._listAtManagementGroupScopeNext(\n groupId,\n nextLink,\n options\n );\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtManagementGroupScopeNextNext(\n groupId,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtManagementGroupScopeNextPagingAll(\n groupId: string,\n nextLink: string,\n options?: DeploymentsListAtManagementGroupScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentExtended> {\n for await (const page of this.listAtManagementGroupScopeNextPagingPage(\n groupId,\n nextLink,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * ListAtSubscriptionScopeNext\n * @param nextLink The nextLink from the previous successful call to the ListAtSubscriptionScope\n * method.\n * @param options The options parameters.\n */\n public listAtSubscriptionScopeNext(\n nextLink: string,\n options?: DeploymentsListAtSubscriptionScopeNextOptionalParams\n ): PagedAsyncIterableIterator<DeploymentExtended> {\n const iter = this.listAtSubscriptionScopeNextPagingAll(nextLink, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtSubscriptionScopeNextPagingPage(nextLink, options);\n }\n };\n }\n\n private async *listAtSubscriptionScopeNextPagingPage(\n nextLink: string,\n options?: DeploymentsListAtSubscriptionScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentExtended[]> {\n let result = await this._listAtSubscriptionScopeNext(nextLink, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtSubscriptionScopeNextNext(\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtSubscriptionScopeNextPagingAll(\n nextLink: string,\n options?: DeploymentsListAtSubscriptionScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentExtended> {\n for await (const page of this.listAtSubscriptionScopeNextPagingPage(\n nextLink,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * ListByResourceGroupNext\n * @param resourceGroupName The name of the resource group with the deployments to get. The name is\n * case insensitive.\n * @param nextLink The nextLink from the previous successful call to the ListByResourceGroup method.\n * @param options The options parameters.\n */\n public listByResourceGroupNext(\n resourceGroupName: string,\n nextLink: string,\n options?: DeploymentsListByResourceGroupNextOptionalParams\n ): PagedAsyncIterableIterator<DeploymentExtended> {\n const iter = this.listByResourceGroupNextPagingAll(\n resourceGroupName,\n nextLink,\n options\n );\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listByResourceGroupNextPagingPage(\n resourceGroupName,\n nextLink,\n options\n );\n }\n };\n }\n\n private async *listByResourceGroupNextPagingPage(\n resourceGroupName: string,\n nextLink: string,\n options?: DeploymentsListByResourceGroupNextOptionalParams\n ): AsyncIterableIterator<DeploymentExtended[]> {\n let result = await this._listByResourceGroupNext(\n resourceGroupName,\n nextLink,\n options\n );\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listByResourceGroupNextNext(\n resourceGroupName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listByResourceGroupNextPagingAll(\n resourceGroupName: string,\n nextLink: string,\n options?: DeploymentsListByResourceGroupNextOptionalParams\n ): AsyncIterableIterator<DeploymentExtended> {\n for await (const page of this.listByResourceGroupNextPagingPage(\n resourceGroupName,\n nextLink,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * A template deployment that is currently running cannot be deleted. Deleting a template deployment\n * removes the associated deployment operations. This is an asynchronous operation that returns a\n * status of 202 until the template deployment is successfully deleted. The Location response header\n * contains the URI that is used to obtain the status of the process. While the process is running, a\n * call to the URI in the Location header returns a status of 202. When the process finishes, the URI\n * in the Location header returns a status of 204 on success. If the asynchronous request failed, the\n * URI in the Location header returns an error-level status code.\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n async beginDeleteAtScope(\n scope: string,\n deploymentName: string,\n options?: DeploymentsDeleteAtScopeOptionalParams\n ): Promise<PollerLike<PollOperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { scope, deploymentName, options },\n deleteAtScopeOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * A template deployment that is currently running cannot be deleted. Deleting a template deployment\n * removes the associated deployment operations. This is an asynchronous operation that returns a\n * status of 202 until the template deployment is successfully deleted. The Location response header\n * contains the URI that is used to obtain the status of the process. While the process is running, a\n * call to the URI in the Location header returns a status of 202. When the process finishes, the URI\n * in the Location header returns a status of 204 on success. If the asynchronous request failed, the\n * URI in the Location header returns an error-level status code.\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n async beginDeleteAtScopeAndWait(\n scope: string,\n deploymentName: string,\n options?: DeploymentsDeleteAtScopeOptionalParams\n ): Promise<void> {\n const poller = await this.beginDeleteAtScope(\n scope,\n deploymentName,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Checks whether the deployment exists.\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n checkExistenceAtScope(\n scope: string,\n deploymentName: string,\n options?: DeploymentsCheckExistenceAtScopeOptionalParams\n ): Promise<DeploymentsCheckExistenceAtScopeResponse> {\n return this.client.sendOperationRequest(\n { scope, deploymentName, options },\n checkExistenceAtScopeOperationSpec\n );\n }\n\n /**\n * You can provide the template and parameters directly in the request or link to JSON files.\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param parameters Additional parameters supplied to the operation.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateAtScope(\n scope: string,\n deploymentName: string,\n parameters: Deployment,\n options?: DeploymentsCreateOrUpdateAtScopeOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<DeploymentsCreateOrUpdateAtScopeResponse>,\n DeploymentsCreateOrUpdateAtScopeResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<DeploymentsCreateOrUpdateAtScopeResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { scope, deploymentName, parameters, options },\n createOrUpdateAtScopeOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * You can provide the template and parameters directly in the request or link to JSON files.\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param parameters Additional parameters supplied to the operation.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateAtScopeAndWait(\n scope: string,\n deploymentName: string,\n parameters: Deployment,\n options?: DeploymentsCreateOrUpdateAtScopeOptionalParams\n ): Promise<DeploymentsCreateOrUpdateAtScopeResponse> {\n const poller = await this.beginCreateOrUpdateAtScope(\n scope,\n deploymentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Gets a deployment.\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n getAtScope(\n scope: string,\n deploymentName: string,\n options?: DeploymentsGetAtScopeOptionalParams\n ): Promise<DeploymentsGetAtScopeResponse> {\n return this.client.sendOperationRequest(\n { scope, deploymentName, options },\n getAtScopeOperationSpec\n );\n }\n\n /**\n * You can cancel a deployment only if the provisioningState is Accepted or Running. After the\n * deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment\n * stops the currently running template deployment and leaves the resources partially deployed.\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n cancelAtScope(\n scope: string,\n deploymentName: string,\n options?: DeploymentsCancelAtScopeOptionalParams\n ): Promise<void> {\n return this.client.sendOperationRequest(\n { scope, deploymentName, options },\n cancelAtScopeOperationSpec\n );\n }\n\n /**\n * Validates whether the specified template is syntactically correct and will be accepted by Azure\n * Resource Manager..\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginValidateAtScope(\n scope: string,\n deploymentName: string,\n parameters: Deployment,\n options?: DeploymentsValidateAtScopeOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<DeploymentsValidateAtScopeResponse>,\n DeploymentsValidateAtScopeResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<DeploymentsValidateAtScopeResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { scope, deploymentName, parameters, options },\n validateAtScopeOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Validates whether the specified template is syntactically correct and will be accepted by Azure\n * Resource Manager..\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginValidateAtScopeAndWait(\n scope: string,\n deploymentName: string,\n parameters: Deployment,\n options?: DeploymentsValidateAtScopeOptionalParams\n ): Promise<DeploymentsValidateAtScopeResponse> {\n const poller = await this.beginValidateAtScope(\n scope,\n deploymentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Exports the template used for specified deployment.\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n exportTemplateAtScope(\n scope: string,\n deploymentName: string,\n options?: DeploymentsExportTemplateAtScopeOptionalParams\n ): Promise<DeploymentsExportTemplateAtScopeResponse> {\n return this.client.sendOperationRequest(\n { scope, deploymentName, options },\n exportTemplateAtScopeOperationSpec\n );\n }\n\n /**\n * Get all the deployments at the given scope.\n * @param scope The resource scope.\n * @param options The options parameters.\n */\n private _listAtScope(\n scope: string,\n options?: DeploymentsListAtScopeOptionalParams\n ): Promise<DeploymentsListAtScopeResponse> {\n return this.client.sendOperationRequest(\n { scope, options },\n listAtScopeOperationSpec\n );\n }\n\n /**\n * A template deployment that is currently running cannot be deleted. Deleting a template deployment\n * removes the associated deployment operations. This is an asynchronous operation that returns a\n * status of 202 until the template deployment is successfully deleted. The Location response header\n * contains the URI that is used to obtain the status of the process. While the process is running, a\n * call to the URI in the Location header returns a status of 202. When the process finishes, the URI\n * in the Location header returns a status of 204 on success. If the asynchronous request failed, the\n * URI in the Location header returns an error-level status code.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n async beginDeleteAtTenantScope(\n deploymentName: string,\n options?: DeploymentsDeleteAtTenantScopeOptionalParams\n ): Promise<PollerLike<PollOperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { deploymentName, options },\n deleteAtTenantScopeOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * A template deployment that is currently running cannot be deleted. Deleting a template deployment\n * removes the associated deployment operations. This is an asynchronous operation that returns a\n * status of 202 until the template deployment is successfully deleted. The Location response header\n * contains the URI that is used to obtain the status of the process. While the process is running, a\n * call to the URI in the Location header returns a status of 202. When the process finishes, the URI\n * in the Location header returns a status of 204 on success. If the asynchronous request failed, the\n * URI in the Location header returns an error-level status code.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n async beginDeleteAtTenantScopeAndWait(\n deploymentName: string,\n options?: DeploymentsDeleteAtTenantScopeOptionalParams\n ): Promise<void> {\n const poller = await this.beginDeleteAtTenantScope(deploymentName, options);\n return poller.pollUntilDone();\n }\n\n /**\n * Checks whether the deployment exists.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n checkExistenceAtTenantScope(\n deploymentName: string,\n options?: DeploymentsCheckExistenceAtTenantScopeOptionalParams\n ): Promise<DeploymentsCheckExistenceAtTenantScopeResponse> {\n return this.client.sendOperationRequest(\n { deploymentName, options },\n checkExistenceAtTenantScopeOperationSpec\n );\n }\n\n /**\n * You can provide the template and parameters directly in the request or link to JSON files.\n * @param deploymentName The name of the deployment.\n * @param parameters Additional parameters supplied to the operation.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateAtTenantScope(\n deploymentName: string,\n parameters: ScopedDeployment,\n options?: DeploymentsCreateOrUpdateAtTenantScopeOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<DeploymentsCreateOrUpdateAtTenantScopeResponse>,\n DeploymentsCreateOrUpdateAtTenantScopeResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<DeploymentsCreateOrUpdateAtTenantScopeResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { deploymentName, parameters, options },\n createOrUpdateAtTenantScopeOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * You can provide the template and parameters directly in the request or link to JSON files.\n * @param deploymentName The name of the deployment.\n * @param parameters Additional parameters supplied to the operation.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateAtTenantScopeAndWait(\n deploymentName: string,\n parameters: ScopedDeployment,\n options?: DeploymentsCreateOrUpdateAtTenantScopeOptionalParams\n ): Promise<DeploymentsCreateOrUpdateAtTenantScopeResponse> {\n const poller = await this.beginCreateOrUpdateAtTenantScope(\n deploymentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Gets a deployment.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n getAtTenantScope(\n deploymentName: string,\n options?: DeploymentsGetAtTenantScopeOptionalParams\n ): Promise<DeploymentsGetAtTenantScopeResponse> {\n return this.client.sendOperationRequest(\n { deploymentName, options },\n getAtTenantScopeOperationSpec\n );\n }\n\n /**\n * You can cancel a deployment only if the provisioningState is Accepted or Running. After the\n * deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment\n * stops the currently running template deployment and leaves the resources partially deployed.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n cancelAtTenantScope(\n deploymentName: string,\n options?: DeploymentsCancelAtTenantScopeOptionalParams\n ): Promise<void> {\n return this.client.sendOperationRequest(\n { deploymentName, options },\n cancelAtTenantScopeOperationSpec\n );\n }\n\n /**\n * Validates whether the specified template is syntactically correct and will be accepted by Azure\n * Resource Manager..\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginValidateAtTenantScope(\n deploymentName: string,\n parameters: ScopedDeployment,\n options?: DeploymentsValidateAtTenantScopeOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<DeploymentsValidateAtTenantScopeResponse>,\n DeploymentsValidateAtTenantScopeResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<DeploymentsValidateAtTenantScopeResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { deploymentName, parameters, options },\n validateAtTenantScopeOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Validates whether the specified template is syntactically correct and will be accepted by Azure\n * Resource Manager..\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginValidateAtTenantScopeAndWait(\n deploymentName: string,\n parameters: ScopedDeployment,\n options?: DeploymentsValidateAtTenantScopeOptionalParams\n ): Promise<DeploymentsValidateAtTenantScopeResponse> {\n const poller = await this.beginValidateAtTenantScope(\n deploymentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Returns changes that will be made by the deployment if executed at the scope of the tenant group.\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginWhatIfAtTenantScope(\n deploymentName: string,\n parameters: ScopedDeploymentWhatIf,\n options?: DeploymentsWhatIfAtTenantScopeOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<DeploymentsWhatIfAtTenantScopeResponse>,\n DeploymentsWhatIfAtTenantScopeResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<DeploymentsWhatIfAtTenantScopeResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { deploymentName, parameters, options },\n whatIfAtTenantScopeOperationSpec,\n \"location\"\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Returns changes that will be made by the deployment if executed at the scope of the tenant group.\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginWhatIfAtTenantScopeAndWait(\n deploymentName: string,\n parameters: ScopedDeploymentWhatIf,\n options?: DeploymentsWhatIfAtTenantScopeOptionalParams\n ): Promise<DeploymentsWhatIfAtTenantScopeResponse> {\n const poller = await this.beginWhatIfAtTenantScope(\n deploymentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Exports the template used for specified deployment.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n exportTemplateAtTenantScope(\n deploymentName: string,\n options?: DeploymentsExportTemplateAtTenantScopeOptionalParams\n ): Promise<DeploymentsExportTemplateAtTenantScopeResponse> {\n return this.client.sendOperationRequest(\n { deploymentName, options },\n exportTemplateAtTenantScopeOperationSpec\n );\n }\n\n /**\n * Get all the deployments at the tenant scope.\n * @param options The options parameters.\n */\n private _listAtTenantScope(\n options?: DeploymentsListAtTenantScopeOptionalParams\n ): Promise<DeploymentsListAtTenantScopeResponse> {\n return this.client.sendOperationRequest(\n { options },\n listAtTenantScopeOperationSpec\n );\n }\n\n /**\n * A template deployment that is currently running cannot be deleted. Deleting a template deployment\n * removes the associated deployment operations. This is an asynchronous operation that returns a\n * status of 202 until the template deployment is successfully deleted. The Location response header\n * contains the URI that is used to obtain the status of the process. While the process is running, a\n * call to the URI in the Location header returns a status of 202. When the process finishes, the URI\n * in the Location header returns a status of 204 on success. If the asynchronous request failed, the\n * URI in the Location header returns an error-level status code.\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n async beginDeleteAtManagementGroupScope(\n groupId: string,\n deploymentName: string,\n options?: DeploymentsDeleteAtManagementGroupScopeOptionalParams\n ): Promise<PollerLike<PollOperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { groupId, deploymentName, options },\n deleteAtManagementGroupScopeOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * A template deployment that is currently running cannot be deleted. Deleting a template deployment\n * removes the associated deployment operations. This is an asynchronous operation that returns a\n * status of 202 until the template deployment is successfully deleted. The Location response header\n * contains the URI that is used to obtain the status of the process. While the process is running, a\n * call to the URI in the Location header returns a status of 202. When the process finishes, the URI\n * in the Location header returns a status of 204 on success. If the asynchronous request failed, the\n * URI in the Location header returns an error-level status code.\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n async beginDeleteAtManagementGroupScopeAndWait(\n groupId: string,\n deploymentName: string,\n options?: DeploymentsDeleteAtManagementGroupScopeOptionalParams\n ): Promise<void> {\n const poller = await this.beginDeleteAtManagementGroupScope(\n groupId,\n deploymentName,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Checks whether the deployment exists.\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n checkExistenceAtManagementGroupScope(\n groupId: string,\n deploymentName: string,\n options?: DeploymentsCheckExistenceAtManagementGroupScopeOptionalParams\n ): Promise<DeploymentsCheckExistenceAtManagementGroupScopeResponse> {\n return this.client.sendOperationRequest(\n { groupId, deploymentName, options },\n checkExistenceAtManagementGroupScopeOperationSpec\n );\n }\n\n /**\n * You can provide the template and parameters directly in the request or link to JSON files.\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param parameters Additional parameters supplied to the operation.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateAtManagementGroupScope(\n groupId: string,\n deploymentName: string,\n parameters: ScopedDeployment,\n options?: DeploymentsCreateOrUpdateAtManagementGroupScopeOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<\n DeploymentsCreateOrUpdateAtManagementGroupScopeResponse\n >,\n DeploymentsCreateOrUpdateAtManagementGroupScopeResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<DeploymentsCreateOrUpdateAtManagementGroupScopeResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { groupId, deploymentName, parameters, options },\n createOrUpdateAtManagementGroupScopeOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * You can provide the template and parameters directly in the request or link to JSON files.\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param parameters Additional parameters supplied to the operation.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateAtManagementGroupScopeAndWait(\n groupId: string,\n deploymentName: string,\n parameters: ScopedDeployment,\n options?: DeploymentsCreateOrUpdateAtManagementGroupScopeOptionalParams\n ): Promise<DeploymentsCreateOrUpdateAtManagementGroupScopeResponse> {\n const poller = await this.beginCreateOrUpdateAtManagementGroupScope(\n groupId,\n deploymentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Gets a deployment.\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n getAtManagementGroupScope(\n groupId: string,\n deploymentName: string,\n options?: DeploymentsGetAtManagementGroupScopeOptionalParams\n ): Promise<DeploymentsGetAtManagementGroupScopeResponse> {\n return this.client.sendOperationRequest(\n { groupId, deploymentName, options },\n getAtManagementGroupScopeOperationSpec\n );\n }\n\n /**\n * You can cancel a deployment only if the provisioningState is Accepted or Running. After the\n * deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment\n * stops the currently running template deployment and leaves the resources partially deployed.\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n cancelAtManagementGroupScope(\n groupId: string,\n deploymentName: string,\n options?: DeploymentsCancelAtManagementGroupScopeOptionalParams\n ): Promise<void> {\n return this.client.sendOperationRequest(\n { groupId, deploymentName, options },\n cancelAtManagementGroupScopeOperationSpec\n );\n }\n\n /**\n * Validates whether the specified template is syntactically correct and will be accepted by Azure\n * Resource Manager..\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginValidateAtManagementGroupScope(\n groupId: string,\n deploymentName: string,\n parameters: ScopedDeployment,\n options?: DeploymentsValidateAtManagementGroupScopeOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<DeploymentsValidateAtManagementGroupScopeResponse>,\n DeploymentsValidateAtManagementGroupScopeResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<DeploymentsValidateAtManagementGroupScopeResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { groupId, deploymentName, parameters, options },\n validateAtManagementGroupScopeOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Validates whether the specified template is syntactically correct and will be accepted by Azure\n * Resource Manager..\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginValidateAtManagementGroupScopeAndWait(\n groupId: string,\n deploymentName: string,\n parameters: ScopedDeployment,\n options?: DeploymentsValidateAtManagementGroupScopeOptionalParams\n ): Promise<DeploymentsValidateAtManagementGroupScopeResponse> {\n const poller = await this.beginValidateAtManagementGroupScope(\n groupId,\n deploymentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Returns changes that will be made by the deployment if executed at the scope of the management\n * group.\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginWhatIfAtManagementGroupScope(\n groupId: string,\n deploymentName: string,\n parameters: ScopedDeploymentWhatIf,\n options?: DeploymentsWhatIfAtManagementGroupScopeOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<DeploymentsWhatIfAtManagementGroupScopeResponse>,\n DeploymentsWhatIfAtManagementGroupScopeResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<DeploymentsWhatIfAtManagementGroupScopeResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { groupId, deploymentName, parameters, options },\n whatIfAtManagementGroupScopeOperationSpec,\n \"location\"\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Returns changes that will be made by the deployment if executed at the scope of the management\n * group.\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginWhatIfAtManagementGroupScopeAndWait(\n groupId: string,\n deploymentName: string,\n parameters: ScopedDeploymentWhatIf,\n options?: DeploymentsWhatIfAtManagementGroupScopeOptionalParams\n ): Promise<DeploymentsWhatIfAtManagementGroupScopeResponse> {\n const poller = await this.beginWhatIfAtManagementGroupScope(\n groupId,\n deploymentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Exports the template used for specified deployment.\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n exportTemplateAtManagementGroupScope(\n groupId: string,\n deploymentName: string,\n options?: DeploymentsExportTemplateAtManagementGroupScopeOptionalParams\n ): Promise<DeploymentsExportTemplateAtManagementGroupScopeResponse> {\n return this.client.sendOperationRequest(\n { groupId, deploymentName, options },\n exportTemplateAtManagementGroupScopeOperationSpec\n );\n }\n\n /**\n * Get all the deployments for a management group.\n * @param groupId The management group ID.\n * @param options The options parameters.\n */\n private _listAtManagementGroupScope(\n groupId: string,\n options?: DeploymentsListAtManagementGroupScopeOptionalParams\n ): Promise<DeploymentsListAtManagementGroupScopeResponse> {\n return this.client.sendOperationRequest(\n { groupId, options },\n listAtManagementGroupScopeOperationSpec\n );\n }\n\n /**\n * A template deployment that is currently running cannot be deleted. Deleting a template deployment\n * removes the associated deployment operations. This is an asynchronous operation that returns a\n * status of 202 until the template deployment is successfully deleted. The Location response header\n * contains the URI that is used to obtain the status of the process. While the process is running, a\n * call to the URI in the Location header returns a status of 202. When the process finishes, the URI\n * in the Location header returns a status of 204 on success. If the asynchronous request failed, the\n * URI in the Location header returns an error-level status code.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n async beginDeleteAtSubscriptionScope(\n deploymentName: string,\n options?: DeploymentsDeleteAtSubscriptionScopeOptionalParams\n ): Promise<PollerLike<PollOperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { deploymentName, options },\n deleteAtSubscriptionScopeOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * A template deployment that is currently running cannot be deleted. Deleting a template deployment\n * removes the associated deployment operations. This is an asynchronous operation that returns a\n * status of 202 until the template deployment is successfully deleted. The Location response header\n * contains the URI that is used to obtain the status of the process. While the process is running, a\n * call to the URI in the Location header returns a status of 202. When the process finishes, the URI\n * in the Location header returns a status of 204 on success. If the asynchronous request failed, the\n * URI in the Location header returns an error-level status code.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n async beginDeleteAtSubscriptionScopeAndWait(\n deploymentName: string,\n options?: DeploymentsDeleteAtSubscriptionScopeOptionalParams\n ): Promise<void> {\n const poller = await this.beginDeleteAtSubscriptionScope(\n deploymentName,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Checks whether the deployment exists.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n checkExistenceAtSubscriptionScope(\n deploymentName: string,\n options?: DeploymentsCheckExistenceAtSubscriptionScopeOptionalParams\n ): Promise<DeploymentsCheckExistenceAtSubscriptionScopeResponse> {\n return this.client.sendOperationRequest(\n { deploymentName, options },\n checkExistenceAtSubscriptionScopeOperationSpec\n );\n }\n\n /**\n * You can provide the template and parameters directly in the request or link to JSON files.\n * @param deploymentName The name of the deployment.\n * @param parameters Additional parameters supplied to the operation.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateAtSubscriptionScope(\n deploymentName: string,\n parameters: Deployment,\n options?: DeploymentsCreateOrUpdateAtSubscriptionScopeOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<DeploymentsCreateOrUpdateAtSubscriptionScopeResponse>,\n DeploymentsCreateOrUpdateAtSubscriptionScopeResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<DeploymentsCreateOrUpdateAtSubscriptionScopeResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { deploymentName, parameters, options },\n createOrUpdateAtSubscriptionScopeOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * You can provide the template and parameters directly in the request or link to JSON files.\n * @param deploymentName The name of the deployment.\n * @param parameters Additional parameters supplied to the operation.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateAtSubscriptionScopeAndWait(\n deploymentName: string,\n parameters: Deployment,\n options?: DeploymentsCreateOrUpdateAtSubscriptionScopeOptionalParams\n ): Promise<DeploymentsCreateOrUpdateAtSubscriptionScopeResponse> {\n const poller = await this.beginCreateOrUpdateAtSubscriptionScope(\n deploymentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Gets a deployment.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n getAtSubscriptionScope(\n deploymentName: string,\n options?: DeploymentsGetAtSubscriptionScopeOptionalParams\n ): Promise<DeploymentsGetAtSubscriptionScopeResponse> {\n return this.client.sendOperationRequest(\n { deploymentName, options },\n getAtSubscriptionScopeOperationSpec\n );\n }\n\n /**\n * You can cancel a deployment only if the provisioningState is Accepted or Running. After the\n * deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment\n * stops the currently running template deployment and leaves the resources partially deployed.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n cancelAtSubscriptionScope(\n deploymentName: string,\n options?: DeploymentsCancelAtSubscriptionScopeOptionalParams\n ): Promise<void> {\n return this.client.sendOperationRequest(\n { deploymentName, options },\n cancelAtSubscriptionScopeOperationSpec\n );\n }\n\n /**\n * Validates whether the specified template is syntactically correct and will be accepted by Azure\n * Resource Manager..\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginValidateAtSubscriptionScope(\n deploymentName: string,\n parameters: Deployment,\n options?: DeploymentsValidateAtSubscriptionScopeOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<DeploymentsValidateAtSubscriptionScopeResponse>,\n DeploymentsValidateAtSubscriptionScopeResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<DeploymentsValidateAtSubscriptionScopeResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { deploymentName, parameters, options },\n validateAtSubscriptionScopeOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Validates whether the specified template is syntactically correct and will be accepted by Azure\n * Resource Manager..\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginValidateAtSubscriptionScopeAndWait(\n deploymentName: string,\n parameters: Deployment,\n options?: DeploymentsValidateAtSubscriptionScopeOptionalParams\n ): Promise<DeploymentsValidateAtSubscriptionScopeResponse> {\n const poller = await this.beginValidateAtSubscriptionScope(\n deploymentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Returns changes that will be made by the deployment if executed at the scope of the subscription.\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to What If.\n * @param options The options parameters.\n */\n async beginWhatIfAtSubscriptionScope(\n deploymentName: string,\n parameters: DeploymentWhatIf,\n options?: DeploymentsWhatIfAtSubscriptionScopeOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<DeploymentsWhatIfAtSubscriptionScopeResponse>,\n DeploymentsWhatIfAtSubscriptionScopeResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<DeploymentsWhatIfAtSubscriptionScopeResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { deploymentName, parameters, options },\n whatIfAtSubscriptionScopeOperationSpec,\n \"location\"\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Returns changes that will be made by the deployment if executed at the scope of the subscription.\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to What If.\n * @param options The options parameters.\n */\n async beginWhatIfAtSubscriptionScopeAndWait(\n deploymentName: string,\n parameters: DeploymentWhatIf,\n options?: DeploymentsWhatIfAtSubscriptionScopeOptionalParams\n ): Promise<DeploymentsWhatIfAtSubscriptionScopeResponse> {\n const poller = await this.beginWhatIfAtSubscriptionScope(\n deploymentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Exports the template used for specified deployment.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n exportTemplateAtSubscriptionScope(\n deploymentName: string,\n options?: DeploymentsExportTemplateAtSubscriptionScopeOptionalParams\n ): Promise<DeploymentsExportTemplateAtSubscriptionScopeResponse> {\n return this.client.sendOperationRequest(\n { deploymentName, options },\n exportTemplateAtSubscriptionScopeOperationSpec\n );\n }\n\n /**\n * Get all the deployments for a subscription.\n * @param options The options parameters.\n */\n private _listAtSubscriptionScope(\n options?: DeploymentsListAtSubscriptionScopeOptionalParams\n ): Promise<DeploymentsListAtSubscriptionScopeResponse> {\n return this.client.sendOperationRequest(\n { options },\n listAtSubscriptionScopeOperationSpec\n );\n }\n\n /**\n * A template deployment that is currently running cannot be deleted. Deleting a template deployment\n * removes the associated deployment operations. Deleting a template deployment does not affect the\n * state of the resource group. This is an asynchronous operation that returns a status of 202 until\n * the template deployment is successfully deleted. The Location response header contains the URI that\n * is used to obtain the status of the process. While the process is running, a call to the URI in the\n * Location header returns a status of 202. When the process finishes, the URI in the Location header\n * returns a status of 204 on success. If the asynchronous request failed, the URI in the Location\n * header returns an error-level status code.\n * @param resourceGroupName The name of the resource group with the deployment to delete. The name is\n * case insensitive.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n async beginDelete(\n resourceGroupName: string,\n deploymentName: string,\n options?: DeploymentsDeleteOptionalParams\n ): Promise<PollerLike<PollOperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { resourceGroupName, deploymentName, options },\n deleteOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * A template deployment that is currently running cannot be deleted. Deleting a template deployment\n * removes the associated deployment operations. Deleting a template deployment does not affect the\n * state of the resource group. This is an asynchronous operation that returns a status of 202 until\n * the template deployment is successfully deleted. The Location response header contains the URI that\n * is used to obtain the status of the process. While the process is running, a call to the URI in the\n * Location header returns a status of 202. When the process finishes, the URI in the Location header\n * returns a status of 204 on success. If the asynchronous request failed, the URI in the Location\n * header returns an error-level status code.\n * @param resourceGroupName The name of the resource group with the deployment to delete. The name is\n * case insensitive.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n async beginDeleteAndWait(\n resourceGroupName: string,\n deploymentName: string,\n options?: DeploymentsDeleteOptionalParams\n ): Promise<void> {\n const poller = await this.beginDelete(\n resourceGroupName,\n deploymentName,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Checks whether the deployment exists.\n * @param resourceGroupName The name of the resource group with the deployment to check. The name is\n * case insensitive.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n checkExistence(\n resourceGroupName: string,\n deploymentName: string,\n options?: DeploymentsCheckExistenceOptionalParams\n ): Promise<DeploymentsCheckExistenceResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, deploymentName, options },\n checkExistenceOperationSpec\n );\n }\n\n /**\n * You can provide the template and parameters directly in the request or link to JSON files.\n * @param resourceGroupName The name of the resource group to deploy the resources to. The name is case\n * insensitive. The resource group must already exist.\n * @param deploymentName The name of the deployment.\n * @param parameters Additional parameters supplied to the operation.\n * @param options The options parameters.\n */\n async beginCreateOrUpdate(\n resourceGroupName: string,\n deploymentName: string,\n parameters: Deployment,\n options?: DeploymentsCreateOrUpdateOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<DeploymentsCreateOrUpdateResponse>,\n DeploymentsCreateOrUpdateResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<DeploymentsCreateOrUpdateResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { resourceGroupName, deploymentName, parameters, options },\n createOrUpdateOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * You can provide the template and parameters directly in the request or link to JSON files.\n * @param resourceGroupName The name of the resource group to deploy the resources to. The name is case\n * insensitive. The resource group must already exist.\n * @param deploymentName The name of the deployment.\n * @param parameters Additional parameters supplied to the operation.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateAndWait(\n resourceGroupName: string,\n deploymentName: string,\n parameters: Deployment,\n options?: DeploymentsCreateOrUpdateOptionalParams\n ): Promise<DeploymentsCreateOrUpdateResponse> {\n const poller = await this.beginCreateOrUpdate(\n resourceGroupName,\n deploymentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Gets a deployment.\n * @param resourceGroupName The name of the resource group. The name is case insensitive.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n get(\n resourceGroupName: string,\n deploymentName: string,\n options?: DeploymentsGetOptionalParams\n ): Promise<DeploymentsGetResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, deploymentName, options },\n getOperationSpec\n );\n }\n\n /**\n * You can cancel a deployment only if the provisioningState is Accepted or Running. After the\n * deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment\n * stops the currently running template deployment and leaves the resource group partially deployed.\n * @param resourceGroupName The name of the resource group. The name is case insensitive.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n cancel(\n resourceGroupName: string,\n deploymentName: string,\n options?: DeploymentsCancelOptionalParams\n ): Promise<void> {\n return this.client.sendOperationRequest(\n { resourceGroupName, deploymentName, options },\n cancelOperationSpec\n );\n }\n\n /**\n * Validates whether the specified template is syntactically correct and will be accepted by Azure\n * Resource Manager..\n * @param resourceGroupName The name of the resource group the template will be deployed to. The name\n * is case insensitive.\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginValidate(\n resourceGroupName: string,\n deploymentName: string,\n parameters: Deployment,\n options?: DeploymentsValidateOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<DeploymentsValidateResponse>,\n DeploymentsValidateResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<DeploymentsValidateResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { resourceGroupName, deploymentName, parameters, options },\n validateOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Validates whether the specified template is syntactically correct and will be accepted by Azure\n * Resource Manager..\n * @param resourceGroupName The name of the resource group the template will be deployed to. The name\n * is case insensitive.\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginValidateAndWait(\n resourceGroupName: string,\n deploymentName: string,\n parameters: Deployment,\n options?: DeploymentsValidateOptionalParams\n ): Promise<DeploymentsValidateResponse> {\n const poller = await this.beginValidate(\n resourceGroupName,\n deploymentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Returns changes that will be made by the deployment if executed at the scope of the resource group.\n * @param resourceGroupName The name of the resource group the template will be deployed to. The name\n * is case insensitive.\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginWhatIf(\n resourceGroupName: string,\n deploymentName: string,\n parameters: DeploymentWhatIf,\n options?: DeploymentsWhatIfOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<DeploymentsWhatIfResponse>,\n DeploymentsWhatIfResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<DeploymentsWhatIfResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { resourceGroupName, deploymentName, parameters, options },\n whatIfOperationSpec,\n \"location\"\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Returns changes that will be made by the deployment if executed at the scope of the resource group.\n * @param resourceGroupName The name of the resource group the template will be deployed to. The name\n * is case insensitive.\n * @param deploymentName The name of the deployment.\n * @param parameters Parameters to validate.\n * @param options The options parameters.\n */\n async beginWhatIfAndWait(\n resourceGroupName: string,\n deploymentName: string,\n parameters: DeploymentWhatIf,\n options?: DeploymentsWhatIfOptionalParams\n ): Promise<DeploymentsWhatIfResponse> {\n const poller = await this.beginWhatIf(\n resourceGroupName,\n deploymentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Exports the template used for specified deployment.\n * @param resourceGroupName The name of the resource group. The name is case insensitive.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n exportTemplate(\n resourceGroupName: string,\n deploymentName: string,\n options?: DeploymentsExportTemplateOptionalParams\n ): Promise<DeploymentsExportTemplateResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, deploymentName, options },\n exportTemplateOperationSpec\n );\n }\n\n /**\n * Get all the deployments for a resource group.\n * @param resourceGroupName The name of the resource group with the deployments to get. The name is\n * case insensitive.\n * @param options The options parameters.\n */\n private _listByResourceGroup(\n resourceGroupName: string,\n options?: DeploymentsListByResourceGroupOptionalParams\n ): Promise<DeploymentsListByResourceGroupResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, options },\n listByResourceGroupOperationSpec\n );\n }\n\n /**\n * Calculate the hash of the given template.\n * @param template The template provided to calculate hash.\n * @param options The options parameters.\n */\n calculateTemplateHash(\n template: Record<string, unknown>,\n options?: DeploymentsCalculateTemplateHashOptionalParams\n ): Promise<DeploymentsCalculateTemplateHashResponse> {\n return this.client.sendOperationRequest(\n { template, options },\n calculateTemplateHashOperationSpec\n );\n }\n\n /**\n * ListAtScopeNext\n * @param scope The resource scope.\n * @param nextLink The nextLink from the previous successful call to the ListAtScope method.\n * @param options The options parameters.\n */\n private _listAtScopeNext(\n scope: string,\n nextLink: string,\n options?: DeploymentsListAtScopeNextOptionalParams\n ): Promise<DeploymentsListAtScopeNextResponse> {\n return this.client.sendOperationRequest(\n { scope, nextLink, options },\n listAtScopeNextOperationSpec\n );\n }\n\n /**\n * ListAtTenantScopeNext\n * @param nextLink The nextLink from the previous successful call to the ListAtTenantScope method.\n * @param options The options parameters.\n */\n private _listAtTenantScopeNext(\n nextLink: string,\n options?: DeploymentsListAtTenantScopeNextOptionalParams\n ): Promise<DeploymentsListAtTenantScopeNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listAtTenantScopeNextOperationSpec\n );\n }\n\n /**\n * ListAtManagementGroupScopeNext\n * @param groupId The management group ID.\n * @param nextLink The nextLink from the previous successful call to the ListAtManagementGroupScope\n * method.\n * @param options The options parameters.\n */\n private _listAtManagementGroupScopeNext(\n groupId: string,\n nextLink: string,\n options?: DeploymentsListAtManagementGroupScopeNextOptionalParams\n ): Promise<DeploymentsListAtManagementGroupScopeNextResponse> {\n return this.client.sendOperationRequest(\n { groupId, nextLink, options },\n listAtManagementGroupScopeNextOperationSpec\n );\n }\n\n /**\n * ListAtSubscriptionScopeNext\n * @param nextLink The nextLink from the previous successful call to the ListAtSubscriptionScope\n * method.\n * @param options The options parameters.\n */\n private _listAtSubscriptionScopeNext(\n nextLink: string,\n options?: DeploymentsListAtSubscriptionScopeNextOptionalParams\n ): Promise<DeploymentsListAtSubscriptionScopeNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listAtSubscriptionScopeNextOperationSpec\n );\n }\n\n /**\n * ListByResourceGroupNext\n * @param resourceGroupName The name of the resource group with the deployments to get. The name is\n * case insensitive.\n * @param nextLink The nextLink from the previous successful call to the ListByResourceGroup method.\n * @param options The options parameters.\n */\n private _listByResourceGroupNext(\n resourceGroupName: string,\n nextLink: string,\n options?: DeploymentsListByResourceGroupNextOptionalParams\n ): Promise<DeploymentsListByResourceGroupNextResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, nextLink, options },\n listByResourceGroupNextOperationSpec\n );\n }\n\n /**\n * ListAtScopeNextNext\n * @param scope The resource scope.\n * @param nextLink The nextLink from the previous successful call to the ListAtScopeNext method.\n * @param options The options parameters.\n */\n private _listAtScopeNextNext(\n scope: string,\n nextLink: string,\n options?: DeploymentsListAtScopeNextNextOptionalParams\n ): Promise<DeploymentsListAtScopeNextNextResponse> {\n return this.client.sendOperationRequest(\n { scope, nextLink, options },\n listAtScopeNextNextOperationSpec\n );\n }\n\n /**\n * ListAtTenantScopeNextNext\n * @param nextLink The nextLink from the previous successful call to the ListAtTenantScopeNext method.\n * @param options The options parameters.\n */\n private _listAtTenantScopeNextNext(\n nextLink: string,\n options?: DeploymentsListAtTenantScopeNextNextOptionalParams\n ): Promise<DeploymentsListAtTenantScopeNextNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listAtTenantScopeNextNextOperationSpec\n );\n }\n\n /**\n * ListAtManagementGroupScopeNextNext\n * @param groupId The management group ID.\n * @param nextLink The nextLink from the previous successful call to the ListAtManagementGroupScopeNext\n * method.\n * @param options The options parameters.\n */\n private _listAtManagementGroupScopeNextNext(\n groupId: string,\n nextLink: string,\n options?: DeploymentsListAtManagementGroupScopeNextNextOptionalParams\n ): Promise<DeploymentsListAtManagementGroupScopeNextNextResponse> {\n return this.client.sendOperationRequest(\n { groupId, nextLink, options },\n listAtManagementGroupScopeNextNextOperationSpec\n );\n }\n\n /**\n * ListAtSubscriptionScopeNextNext\n * @param nextLink The nextLink from the previous successful call to the ListAtSubscriptionScopeNext\n * method.\n * @param options The options parameters.\n */\n private _listAtSubscriptionScopeNextNext(\n nextLink: string,\n options?: DeploymentsListAtSubscriptionScopeNextNextOptionalParams\n ): Promise<DeploymentsListAtSubscriptionScopeNextNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listAtSubscriptionScopeNextNextOperationSpec\n );\n }\n\n /**\n * ListByResourceGroupNextNext\n * @param resourceGroupName The name of the resource group with the deployments to get. The name is\n * case insensitive.\n * @param nextLink The nextLink from the previous successful call to the ListByResourceGroupNext\n * method.\n * @param options The options parameters.\n */\n private _listByResourceGroupNextNext(\n resourceGroupName: string,\n nextLink: string,\n options?: DeploymentsListByResourceGroupNextNextOptionalParams\n ): Promise<DeploymentsListByResourceGroupNextNextResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, nextLink, options },\n listByResourceGroupNextNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst deleteAtScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.scope,\n Parameters.deploymentName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst checkExistenceAtScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"HEAD\",\n responses: {\n 204: {},\n 404: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.scope,\n Parameters.deploymentName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateAtScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentExtended\n },\n 201: {\n bodyMapper: Mappers.DeploymentExtended\n },\n 202: {\n bodyMapper: Mappers.DeploymentExtended\n },\n 204: {\n bodyMapper: Mappers.DeploymentExtended\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.scope,\n Parameters.deploymentName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst getAtScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentExtended\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.scope,\n Parameters.deploymentName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst cancelAtScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel\",\n httpMethod: \"POST\",\n responses: {\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.scope,\n Parameters.deploymentName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst validateAtScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n 201: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n 202: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n 204: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.scope,\n Parameters.deploymentName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst exportTemplateAtScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentExportResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.scope,\n Parameters.deploymentName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/{scope}/providers/Microsoft.Resources/deployments/\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [Parameters.$host, Parameters.scope],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst deleteAtTenantScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.deploymentName],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst checkExistenceAtTenantScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"HEAD\",\n responses: {\n 204: {},\n 404: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.deploymentName],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateAtTenantScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentExtended\n },\n 201: {\n bodyMapper: Mappers.DeploymentExtended\n },\n 202: {\n bodyMapper: Mappers.DeploymentExtended\n },\n 204: {\n bodyMapper: Mappers.DeploymentExtended\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters1,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.deploymentName],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst getAtTenantScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentExtended\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.deploymentName],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst cancelAtTenantScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Resources/deployments/{deploymentName}/cancel\",\n httpMethod: \"POST\",\n responses: {\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.deploymentName],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst validateAtTenantScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Resources/deployments/{deploymentName}/validate\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n 201: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n 202: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n 204: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters1,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.deploymentName],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst whatIfAtTenantScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n 201: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n 202: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n 204: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters2,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.deploymentName],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst exportTemplateAtTenantScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentExportResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.deploymentName],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtTenantScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Resources/deployments/\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [Parameters.$host],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst deleteAtManagementGroupScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.groupId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst checkExistenceAtManagementGroupScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"HEAD\",\n responses: {\n 204: {},\n 404: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.groupId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateAtManagementGroupScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentExtended\n },\n 201: {\n bodyMapper: Mappers.DeploymentExtended\n },\n 202: {\n bodyMapper: Mappers.DeploymentExtended\n },\n 204: {\n bodyMapper: Mappers.DeploymentExtended\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters1,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.groupId\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst getAtManagementGroupScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentExtended\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.groupId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst cancelAtManagementGroupScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel\",\n httpMethod: \"POST\",\n responses: {\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.groupId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst validateAtManagementGroupScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n 201: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n 202: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n 204: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters1,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.groupId\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst whatIfAtManagementGroupScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n 201: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n 202: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n 204: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters2,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.groupId\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst exportTemplateAtManagementGroupScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentExportResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.groupId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtManagementGroupScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [Parameters.$host, Parameters.groupId],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst deleteAtSubscriptionScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst checkExistenceAtSubscriptionScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"HEAD\",\n responses: {\n 204: {},\n 404: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateAtSubscriptionScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentExtended\n },\n 201: {\n bodyMapper: Mappers.DeploymentExtended\n },\n 202: {\n bodyMapper: Mappers.DeploymentExtended\n },\n 204: {\n bodyMapper: Mappers.DeploymentExtended\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst getAtSubscriptionScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentExtended\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst cancelAtSubscriptionScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel\",\n httpMethod: \"POST\",\n responses: {\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst validateAtSubscriptionScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n 201: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n 202: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n 204: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst whatIfAtSubscriptionScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n 201: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n 202: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n 204: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters3,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst exportTemplateAtSubscriptionScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentExportResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtSubscriptionScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [Parameters.$host, Parameters.subscriptionId],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst deleteOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst checkExistenceOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"HEAD\",\n responses: {\n 204: {},\n 404: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentExtended\n },\n 201: {\n bodyMapper: Mappers.DeploymentExtended\n },\n 202: {\n bodyMapper: Mappers.DeploymentExtended\n },\n 204: {\n bodyMapper: Mappers.DeploymentExtended\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst getOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentExtended\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst cancelOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel\",\n httpMethod: \"POST\",\n responses: {\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst validateOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n 201: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n 202: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n 204: {\n bodyMapper: Mappers.DeploymentValidateResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst whatIfOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n 201: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n 202: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n 204: {\n bodyMapper: Mappers.WhatIfOperationResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters3,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst exportTemplateOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentExportResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listByResourceGroupOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst calculateTemplateHashOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Resources/calculateTemplateHash\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.TemplateHashResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.template,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst listAtScopeNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [Parameters.$host, Parameters.nextLink, Parameters.scope],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtTenantScopeNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [Parameters.$host, Parameters.nextLink],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtManagementGroupScopeNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [Parameters.$host, Parameters.nextLink, Parameters.groupId],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtSubscriptionScopeNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listByResourceGroupNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtScopeNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [Parameters.$host, Parameters.nextLink, Parameters.scope],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtTenantScopeNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [Parameters.$host, Parameters.nextLink],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtManagementGroupScopeNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [Parameters.$host, Parameters.nextLink, Parameters.groupId],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtSubscriptionScopeNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listByResourceGroupNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport \"@azure/core-paging\";\nimport { PagedAsyncIterableIterator } from \"@azure/core-paging\";\nimport { Providers } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { ResourceManagementClientContext } from \"../resourceManagementClientContext\";\nimport {\n Provider,\n ProvidersListNextOptionalParams,\n ProvidersListOptionalParams,\n ProvidersListAtTenantScopeNextOptionalParams,\n ProvidersListAtTenantScopeOptionalParams,\n ProvidersListNextNextOptionalParams,\n ProvidersListAtTenantScopeNextNextOptionalParams,\n ProvidersUnregisterOptionalParams,\n ProvidersUnregisterResponse,\n ProvidersRegisterAtManagementGroupScopeOptionalParams,\n ProvidersProviderPermissionsOptionalParams,\n ProvidersProviderPermissionsResponse,\n ProvidersRegisterOptionalParams,\n ProvidersRegisterResponse,\n ProvidersListResponse,\n ProvidersListAtTenantScopeResponse,\n ProvidersGetOptionalParams,\n ProvidersGetResponse,\n ProvidersGetAtTenantScopeOptionalParams,\n ProvidersGetAtTenantScopeResponse,\n ProvidersListNextResponse,\n ProvidersListAtTenantScopeNextResponse,\n ProvidersListNextNextResponse,\n ProvidersListAtTenantScopeNextNextResponse\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class representing a Providers. */\nexport class ProvidersImpl implements Providers {\n private readonly client: ResourceManagementClientContext;\n\n /**\n * Initialize a new instance of the class Providers class.\n * @param client Reference to the service client\n */\n constructor(client: ResourceManagementClientContext) {\n this.client = client;\n }\n\n /**\n * Gets all resource providers for a subscription.\n * @param options The options parameters.\n */\n public list(\n options?: ProvidersListOptionalParams\n ): PagedAsyncIterableIterator<Provider> {\n const iter = this.listPagingAll(options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listPagingPage(options);\n }\n };\n }\n\n private async *listPagingPage(\n options?: ProvidersListOptionalParams\n ): AsyncIterableIterator<Provider[]> {\n let result = await this._list(options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listNext(continuationToken, options);\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listPagingAll(\n options?: ProvidersListOptionalParams\n ): AsyncIterableIterator<Provider> {\n for await (const page of this.listPagingPage(options)) {\n yield* page;\n }\n }\n\n /**\n * Gets all resource providers for the tenant.\n * @param options The options parameters.\n */\n public listAtTenantScope(\n options?: ProvidersListAtTenantScopeOptionalParams\n ): PagedAsyncIterableIterator<Provider> {\n const iter = this.listAtTenantScopePagingAll(options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtTenantScopePagingPage(options);\n }\n };\n }\n\n private async *listAtTenantScopePagingPage(\n options?: ProvidersListAtTenantScopeOptionalParams\n ): AsyncIterableIterator<Provider[]> {\n let result = await this._listAtTenantScope(options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtTenantScopeNext(continuationToken, options);\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtTenantScopePagingAll(\n options?: ProvidersListAtTenantScopeOptionalParams\n ): AsyncIterableIterator<Provider> {\n for await (const page of this.listAtTenantScopePagingPage(options)) {\n yield* page;\n }\n }\n\n /**\n * ListNext\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n public listNext(\n nextLink: string,\n options?: ProvidersListNextOptionalParams\n ): PagedAsyncIterableIterator<Provider> {\n const iter = this.listNextPagingAll(nextLink, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listNextPagingPage(nextLink, options);\n }\n };\n }\n\n private async *listNextPagingPage(\n nextLink: string,\n options?: ProvidersListNextOptionalParams\n ): AsyncIterableIterator<Provider[]> {\n let result = await this._listNext(nextLink, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listNextNext(continuationToken, options);\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listNextPagingAll(\n nextLink: string,\n options?: ProvidersListNextOptionalParams\n ): AsyncIterableIterator<Provider> {\n for await (const page of this.listNextPagingPage(nextLink, options)) {\n yield* page;\n }\n }\n\n /**\n * ListAtTenantScopeNext\n * @param nextLink The nextLink from the previous successful call to the ListAtTenantScope method.\n * @param options The options parameters.\n */\n public listAtTenantScopeNext(\n nextLink: string,\n options?: ProvidersListAtTenantScopeNextOptionalParams\n ): PagedAsyncIterableIterator<Provider> {\n const iter = this.listAtTenantScopeNextPagingAll(nextLink, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtTenantScopeNextPagingPage(nextLink, options);\n }\n };\n }\n\n private async *listAtTenantScopeNextPagingPage(\n nextLink: string,\n options?: ProvidersListAtTenantScopeNextOptionalParams\n ): AsyncIterableIterator<Provider[]> {\n let result = await this._listAtTenantScopeNext(nextLink, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtTenantScopeNextNext(\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtTenantScopeNextPagingAll(\n nextLink: string,\n options?: ProvidersListAtTenantScopeNextOptionalParams\n ): AsyncIterableIterator<Provider> {\n for await (const page of this.listAtTenantScopeNextPagingPage(\n nextLink,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * Unregisters a subscription from a resource provider.\n * @param resourceProviderNamespace The namespace of the resource provider to unregister.\n * @param options The options parameters.\n */\n unregister(\n resourceProviderNamespace: string,\n options?: ProvidersUnregisterOptionalParams\n ): Promise<ProvidersUnregisterResponse> {\n return this.client.sendOperationRequest(\n { resourceProviderNamespace, options },\n unregisterOperationSpec\n );\n }\n\n /**\n * Registers a management group with a resource provider.\n * @param resourceProviderNamespace The namespace of the resource provider to register.\n * @param groupId The management group ID.\n * @param options The options parameters.\n */\n registerAtManagementGroupScope(\n resourceProviderNamespace: string,\n groupId: string,\n options?: ProvidersRegisterAtManagementGroupScopeOptionalParams\n ): Promise<void> {\n return this.client.sendOperationRequest(\n { resourceProviderNamespace, groupId, options },\n registerAtManagementGroupScopeOperationSpec\n );\n }\n\n /**\n * Get the provider permissions.\n * @param resourceProviderNamespace The namespace of the resource provider.\n * @param options The options parameters.\n */\n providerPermissions(\n resourceProviderNamespace: string,\n options?: ProvidersProviderPermissionsOptionalParams\n ): Promise<ProvidersProviderPermissionsResponse> {\n return this.client.sendOperationRequest(\n { resourceProviderNamespace, options },\n providerPermissionsOperationSpec\n );\n }\n\n /**\n * Registers a subscription with a resource provider.\n * @param resourceProviderNamespace The namespace of the resource provider to register.\n * @param options The options parameters.\n */\n register(\n resourceProviderNamespace: string,\n options?: ProvidersRegisterOptionalParams\n ): Promise<ProvidersRegisterResponse> {\n return this.client.sendOperationRequest(\n { resourceProviderNamespace, options },\n registerOperationSpec\n );\n }\n\n /**\n * Gets all resource providers for a subscription.\n * @param options The options parameters.\n */\n private _list(\n options?: ProvidersListOptionalParams\n ): Promise<ProvidersListResponse> {\n return this.client.sendOperationRequest({ options }, listOperationSpec);\n }\n\n /**\n * Gets all resource providers for the tenant.\n * @param options The options parameters.\n */\n private _listAtTenantScope(\n options?: ProvidersListAtTenantScopeOptionalParams\n ): Promise<ProvidersListAtTenantScopeResponse> {\n return this.client.sendOperationRequest(\n { options },\n listAtTenantScopeOperationSpec\n );\n }\n\n /**\n * Gets the specified resource provider.\n * @param resourceProviderNamespace The namespace of the resource provider.\n * @param options The options parameters.\n */\n get(\n resourceProviderNamespace: string,\n options?: ProvidersGetOptionalParams\n ): Promise<ProvidersGetResponse> {\n return this.client.sendOperationRequest(\n { resourceProviderNamespace, options },\n getOperationSpec\n );\n }\n\n /**\n * Gets the specified resource provider at the tenant level.\n * @param resourceProviderNamespace The namespace of the resource provider.\n * @param options The options parameters.\n */\n getAtTenantScope(\n resourceProviderNamespace: string,\n options?: ProvidersGetAtTenantScopeOptionalParams\n ): Promise<ProvidersGetAtTenantScopeResponse> {\n return this.client.sendOperationRequest(\n { resourceProviderNamespace, options },\n getAtTenantScopeOperationSpec\n );\n }\n\n /**\n * ListNext\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n private _listNext(\n nextLink: string,\n options?: ProvidersListNextOptionalParams\n ): Promise<ProvidersListNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listNextOperationSpec\n );\n }\n\n /**\n * ListAtTenantScopeNext\n * @param nextLink The nextLink from the previous successful call to the ListAtTenantScope method.\n * @param options The options parameters.\n */\n private _listAtTenantScopeNext(\n nextLink: string,\n options?: ProvidersListAtTenantScopeNextOptionalParams\n ): Promise<ProvidersListAtTenantScopeNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listAtTenantScopeNextOperationSpec\n );\n }\n\n /**\n * ListNextNext\n * @param nextLink The nextLink from the previous successful call to the ListNext method.\n * @param options The options parameters.\n */\n private _listNextNext(\n nextLink: string,\n options?: ProvidersListNextNextOptionalParams\n ): Promise<ProvidersListNextNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listNextNextOperationSpec\n );\n }\n\n /**\n * ListAtTenantScopeNextNext\n * @param nextLink The nextLink from the previous successful call to the ListAtTenantScopeNext method.\n * @param options The options parameters.\n */\n private _listAtTenantScopeNextNext(\n nextLink: string,\n options?: ProvidersListAtTenantScopeNextNextOptionalParams\n ): Promise<ProvidersListAtTenantScopeNextNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listAtTenantScopeNextNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst unregisterOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.Provider\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceProviderNamespace\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst registerAtManagementGroupScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/providers/Microsoft.Management/managementGroups/{groupId}/providers/{resourceProviderNamespace}/register\",\n httpMethod: \"POST\",\n responses: {\n 200: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.groupId,\n Parameters.resourceProviderNamespace\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst providerPermissionsOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/providerPermissions\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ProviderPermissionListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceProviderNamespace\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst registerOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.Provider\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.properties,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceProviderNamespace\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst listOperationSpec: coreClient.OperationSpec = {\n path: \"/subscriptions/{subscriptionId}/providers\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ProviderListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top, Parameters.expand],\n urlParameters: [Parameters.$host, Parameters.subscriptionId],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtTenantScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/providers\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ProviderListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top, Parameters.expand],\n urlParameters: [Parameters.$host],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getOperationSpec: coreClient.OperationSpec = {\n path: \"/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.Provider\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.expand],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceProviderNamespace\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getAtTenantScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/{resourceProviderNamespace}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.Provider\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.expand],\n urlParameters: [Parameters.$host, Parameters.resourceProviderNamespace],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ProviderListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top, Parameters.expand],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtTenantScopeNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ProviderListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top, Parameters.expand],\n urlParameters: [Parameters.$host, Parameters.nextLink],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ProviderListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top, Parameters.expand],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtTenantScopeNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ProviderListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top, Parameters.expand],\n urlParameters: [Parameters.$host, Parameters.nextLink],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport { ProviderResourceTypes } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { ResourceManagementClientContext } from \"../resourceManagementClientContext\";\nimport {\n ProviderResourceTypesListOptionalParams,\n ProviderResourceTypesListResponse\n} from \"../models\";\n\n/** Class representing a ProviderResourceTypes. */\nexport class ProviderResourceTypesImpl implements ProviderResourceTypes {\n private readonly client: ResourceManagementClientContext;\n\n /**\n * Initialize a new instance of the class ProviderResourceTypes class.\n * @param client Reference to the service client\n */\n constructor(client: ResourceManagementClientContext) {\n this.client = client;\n }\n\n /**\n * List the resource types for a specified resource provider.\n * @param resourceProviderNamespace The namespace of the resource provider.\n * @param options The options parameters.\n */\n list(\n resourceProviderNamespace: string,\n options?: ProviderResourceTypesListOptionalParams\n ): Promise<ProviderResourceTypesListResponse> {\n return this.client.sendOperationRequest(\n { resourceProviderNamespace, options },\n listOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst listOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/resourceTypes\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ProviderResourceTypeListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.expand],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceProviderNamespace\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport \"@azure/core-paging\";\nimport { PagedAsyncIterableIterator } from \"@azure/core-paging\";\nimport { Resources } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { ResourceManagementClientContext } from \"../resourceManagementClientContext\";\nimport { PollerLike, PollOperationState } from \"@azure/core-lro\";\nimport { LroEngine } from \"../lro\";\nimport { CoreClientLro, shouldDeserializeLro } from \"../coreClientLro\";\nimport {\n GenericResourceExpanded,\n ResourcesListByResourceGroupNextOptionalParams,\n ResourcesListByResourceGroupOptionalParams,\n ResourcesListNextOptionalParams,\n ResourcesListOptionalParams,\n ResourcesListByResourceGroupNextNextOptionalParams,\n ResourcesListNextNextOptionalParams,\n ResourcesListByResourceGroupResponse,\n ResourcesMoveInfo,\n ResourcesMoveResourcesOptionalParams,\n ResourcesValidateMoveResourcesOptionalParams,\n ResourcesListResponse,\n ResourcesCheckExistenceOptionalParams,\n ResourcesCheckExistenceResponse,\n ResourcesDeleteOptionalParams,\n GenericResource,\n ResourcesCreateOrUpdateOptionalParams,\n ResourcesCreateOrUpdateResponse,\n ResourcesUpdateOptionalParams,\n ResourcesUpdateResponse,\n ResourcesGetOptionalParams,\n ResourcesGetResponse,\n ResourcesCheckExistenceByIdOptionalParams,\n ResourcesCheckExistenceByIdResponse,\n ResourcesDeleteByIdOptionalParams,\n ResourcesCreateOrUpdateByIdOptionalParams,\n ResourcesCreateOrUpdateByIdResponse,\n ResourcesUpdateByIdOptionalParams,\n ResourcesUpdateByIdResponse,\n ResourcesGetByIdOptionalParams,\n ResourcesGetByIdResponse,\n ResourcesListByResourceGroupNextResponse,\n ResourcesListNextResponse,\n ResourcesListByResourceGroupNextNextResponse,\n ResourcesListNextNextResponse\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class representing a Resources. */\nexport class ResourcesImpl implements Resources {\n private readonly client: ResourceManagementClientContext;\n\n /**\n * Initialize a new instance of the class Resources class.\n * @param client Reference to the service client\n */\n constructor(client: ResourceManagementClientContext) {\n this.client = client;\n }\n\n /**\n * Get all the resources for a resource group.\n * @param resourceGroupName The resource group with the resources to get.\n * @param options The options parameters.\n */\n public listByResourceGroup(\n resourceGroupName: string,\n options?: ResourcesListByResourceGroupOptionalParams\n ): PagedAsyncIterableIterator<GenericResourceExpanded> {\n const iter = this.listByResourceGroupPagingAll(resourceGroupName, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listByResourceGroupPagingPage(resourceGroupName, options);\n }\n };\n }\n\n private async *listByResourceGroupPagingPage(\n resourceGroupName: string,\n options?: ResourcesListByResourceGroupOptionalParams\n ): AsyncIterableIterator<GenericResourceExpanded[]> {\n let result = await this._listByResourceGroup(resourceGroupName, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listByResourceGroupNext(\n resourceGroupName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listByResourceGroupPagingAll(\n resourceGroupName: string,\n options?: ResourcesListByResourceGroupOptionalParams\n ): AsyncIterableIterator<GenericResourceExpanded> {\n for await (const page of this.listByResourceGroupPagingPage(\n resourceGroupName,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * Get all the resources in a subscription.\n * @param options The options parameters.\n */\n public list(\n options?: ResourcesListOptionalParams\n ): PagedAsyncIterableIterator<GenericResourceExpanded> {\n const iter = this.listPagingAll(options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listPagingPage(options);\n }\n };\n }\n\n private async *listPagingPage(\n options?: ResourcesListOptionalParams\n ): AsyncIterableIterator<GenericResourceExpanded[]> {\n let result = await this._list(options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listNext(continuationToken, options);\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listPagingAll(\n options?: ResourcesListOptionalParams\n ): AsyncIterableIterator<GenericResourceExpanded> {\n for await (const page of this.listPagingPage(options)) {\n yield* page;\n }\n }\n\n /**\n * ListByResourceGroupNext\n * @param resourceGroupName The resource group with the resources to get.\n * @param nextLink The nextLink from the previous successful call to the ListByResourceGroup method.\n * @param options The options parameters.\n */\n public listByResourceGroupNext(\n resourceGroupName: string,\n nextLink: string,\n options?: ResourcesListByResourceGroupNextOptionalParams\n ): PagedAsyncIterableIterator<GenericResourceExpanded> {\n const iter = this.listByResourceGroupNextPagingAll(\n resourceGroupName,\n nextLink,\n options\n );\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listByResourceGroupNextPagingPage(\n resourceGroupName,\n nextLink,\n options\n );\n }\n };\n }\n\n private async *listByResourceGroupNextPagingPage(\n resourceGroupName: string,\n nextLink: string,\n options?: ResourcesListByResourceGroupNextOptionalParams\n ): AsyncIterableIterator<GenericResourceExpanded[]> {\n let result = await this._listByResourceGroupNext(\n resourceGroupName,\n nextLink,\n options\n );\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listByResourceGroupNextNext(\n resourceGroupName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listByResourceGroupNextPagingAll(\n resourceGroupName: string,\n nextLink: string,\n options?: ResourcesListByResourceGroupNextOptionalParams\n ): AsyncIterableIterator<GenericResourceExpanded> {\n for await (const page of this.listByResourceGroupNextPagingPage(\n resourceGroupName,\n nextLink,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * ListNext\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n public listNext(\n nextLink: string,\n options?: ResourcesListNextOptionalParams\n ): PagedAsyncIterableIterator<GenericResourceExpanded> {\n const iter = this.listNextPagingAll(nextLink, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listNextPagingPage(nextLink, options);\n }\n };\n }\n\n private async *listNextPagingPage(\n nextLink: string,\n options?: ResourcesListNextOptionalParams\n ): AsyncIterableIterator<GenericResourceExpanded[]> {\n let result = await this._listNext(nextLink, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listNextNext(continuationToken, options);\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listNextPagingAll(\n nextLink: string,\n options?: ResourcesListNextOptionalParams\n ): AsyncIterableIterator<GenericResourceExpanded> {\n for await (const page of this.listNextPagingPage(nextLink, options)) {\n yield* page;\n }\n }\n\n /**\n * Get all the resources for a resource group.\n * @param resourceGroupName The resource group with the resources to get.\n * @param options The options parameters.\n */\n private _listByResourceGroup(\n resourceGroupName: string,\n options?: ResourcesListByResourceGroupOptionalParams\n ): Promise<ResourcesListByResourceGroupResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, options },\n listByResourceGroupOperationSpec\n );\n }\n\n /**\n * The resources to be moved must be in the same source resource group in the source subscription being\n * used. The target resource group may be in a different subscription. When moving resources, both the\n * source group and the target group are locked for the duration of the operation. Write and delete\n * operations are blocked on the groups until the move completes.\n * @param sourceResourceGroupName The name of the resource group from the source subscription\n * containing the resources to be moved.\n * @param parameters Parameters for moving resources.\n * @param options The options parameters.\n */\n async beginMoveResources(\n sourceResourceGroupName: string,\n parameters: ResourcesMoveInfo,\n options?: ResourcesMoveResourcesOptionalParams\n ): Promise<PollerLike<PollOperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { sourceResourceGroupName, parameters, options },\n moveResourcesOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * The resources to be moved must be in the same source resource group in the source subscription being\n * used. The target resource group may be in a different subscription. When moving resources, both the\n * source group and the target group are locked for the duration of the operation. Write and delete\n * operations are blocked on the groups until the move completes.\n * @param sourceResourceGroupName The name of the resource group from the source subscription\n * containing the resources to be moved.\n * @param parameters Parameters for moving resources.\n * @param options The options parameters.\n */\n async beginMoveResourcesAndWait(\n sourceResourceGroupName: string,\n parameters: ResourcesMoveInfo,\n options?: ResourcesMoveResourcesOptionalParams\n ): Promise<void> {\n const poller = await this.beginMoveResources(\n sourceResourceGroupName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * This operation checks whether the specified resources can be moved to the target. The resources to\n * be moved must be in the same source resource group in the source subscription being used. The target\n * resource group may be in a different subscription. If validation succeeds, it returns HTTP response\n * code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an\n * error message. Retrieve the URL in the Location header value to check the result of the long-running\n * operation.\n * @param sourceResourceGroupName The name of the resource group from the source subscription\n * containing the resources to be validated for move.\n * @param parameters Parameters for moving resources.\n * @param options The options parameters.\n */\n async beginValidateMoveResources(\n sourceResourceGroupName: string,\n parameters: ResourcesMoveInfo,\n options?: ResourcesValidateMoveResourcesOptionalParams\n ): Promise<PollerLike<PollOperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { sourceResourceGroupName, parameters, options },\n validateMoveResourcesOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * This operation checks whether the specified resources can be moved to the target. The resources to\n * be moved must be in the same source resource group in the source subscription being used. The target\n * resource group may be in a different subscription. If validation succeeds, it returns HTTP response\n * code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an\n * error message. Retrieve the URL in the Location header value to check the result of the long-running\n * operation.\n * @param sourceResourceGroupName The name of the resource group from the source subscription\n * containing the resources to be validated for move.\n * @param parameters Parameters for moving resources.\n * @param options The options parameters.\n */\n async beginValidateMoveResourcesAndWait(\n sourceResourceGroupName: string,\n parameters: ResourcesMoveInfo,\n options?: ResourcesValidateMoveResourcesOptionalParams\n ): Promise<void> {\n const poller = await this.beginValidateMoveResources(\n sourceResourceGroupName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Get all the resources in a subscription.\n * @param options The options parameters.\n */\n private _list(\n options?: ResourcesListOptionalParams\n ): Promise<ResourcesListResponse> {\n return this.client.sendOperationRequest({ options }, listOperationSpec);\n }\n\n /**\n * Checks whether a resource exists.\n * @param resourceGroupName The name of the resource group containing the resource to check. The name\n * is case insensitive.\n * @param resourceProviderNamespace The resource provider of the resource to check.\n * @param parentResourcePath The parent resource identity.\n * @param resourceType The resource type.\n * @param resourceName The name of the resource to check whether it exists.\n * @param apiVersion The API version to use for the operation.\n * @param options The options parameters.\n */\n checkExistence(\n resourceGroupName: string,\n resourceProviderNamespace: string,\n parentResourcePath: string,\n resourceType: string,\n resourceName: string,\n apiVersion: string,\n options?: ResourcesCheckExistenceOptionalParams\n ): Promise<ResourcesCheckExistenceResponse> {\n return this.client.sendOperationRequest(\n {\n resourceGroupName,\n resourceProviderNamespace,\n parentResourcePath,\n resourceType,\n resourceName,\n apiVersion,\n options\n },\n checkExistenceOperationSpec\n );\n }\n\n /**\n * Deletes a resource.\n * @param resourceGroupName The name of the resource group that contains the resource to delete. The\n * name is case insensitive.\n * @param resourceProviderNamespace The namespace of the resource provider.\n * @param parentResourcePath The parent resource identity.\n * @param resourceType The resource type.\n * @param resourceName The name of the resource to delete.\n * @param apiVersion The API version to use for the operation.\n * @param options The options parameters.\n */\n async beginDelete(\n resourceGroupName: string,\n resourceProviderNamespace: string,\n parentResourcePath: string,\n resourceType: string,\n resourceName: string,\n apiVersion: string,\n options?: ResourcesDeleteOptionalParams\n ): Promise<PollerLike<PollOperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n {\n resourceGroupName,\n resourceProviderNamespace,\n parentResourcePath,\n resourceType,\n resourceName,\n apiVersion,\n options\n },\n deleteOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Deletes a resource.\n * @param resourceGroupName The name of the resource group that contains the resource to delete. The\n * name is case insensitive.\n * @param resourceProviderNamespace The namespace of the resource provider.\n * @param parentResourcePath The parent resource identity.\n * @param resourceType The resource type.\n * @param resourceName The name of the resource to delete.\n * @param apiVersion The API version to use for the operation.\n * @param options The options parameters.\n */\n async beginDeleteAndWait(\n resourceGroupName: string,\n resourceProviderNamespace: string,\n parentResourcePath: string,\n resourceType: string,\n resourceName: string,\n apiVersion: string,\n options?: ResourcesDeleteOptionalParams\n ): Promise<void> {\n const poller = await this.beginDelete(\n resourceGroupName,\n resourceProviderNamespace,\n parentResourcePath,\n resourceType,\n resourceName,\n apiVersion,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Creates a resource.\n * @param resourceGroupName The name of the resource group for the resource. The name is case\n * insensitive.\n * @param resourceProviderNamespace The namespace of the resource provider.\n * @param parentResourcePath The parent resource identity.\n * @param resourceType The resource type of the resource to create.\n * @param resourceName The name of the resource to create.\n * @param apiVersion The API version to use for the operation.\n * @param parameters Parameters for creating or updating the resource.\n * @param options The options parameters.\n */\n async beginCreateOrUpdate(\n resourceGroupName: string,\n resourceProviderNamespace: string,\n parentResourcePath: string,\n resourceType: string,\n resourceName: string,\n apiVersion: string,\n parameters: GenericResource,\n options?: ResourcesCreateOrUpdateOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<ResourcesCreateOrUpdateResponse>,\n ResourcesCreateOrUpdateResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<ResourcesCreateOrUpdateResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n {\n resourceGroupName,\n resourceProviderNamespace,\n parentResourcePath,\n resourceType,\n resourceName,\n apiVersion,\n parameters,\n options\n },\n createOrUpdateOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Creates a resource.\n * @param resourceGroupName The name of the resource group for the resource. The name is case\n * insensitive.\n * @param resourceProviderNamespace The namespace of the resource provider.\n * @param parentResourcePath The parent resource identity.\n * @param resourceType The resource type of the resource to create.\n * @param resourceName The name of the resource to create.\n * @param apiVersion The API version to use for the operation.\n * @param parameters Parameters for creating or updating the resource.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateAndWait(\n resourceGroupName: string,\n resourceProviderNamespace: string,\n parentResourcePath: string,\n resourceType: string,\n resourceName: string,\n apiVersion: string,\n parameters: GenericResource,\n options?: ResourcesCreateOrUpdateOptionalParams\n ): Promise<ResourcesCreateOrUpdateResponse> {\n const poller = await this.beginCreateOrUpdate(\n resourceGroupName,\n resourceProviderNamespace,\n parentResourcePath,\n resourceType,\n resourceName,\n apiVersion,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Updates a resource.\n * @param resourceGroupName The name of the resource group for the resource. The name is case\n * insensitive.\n * @param resourceProviderNamespace The namespace of the resource provider.\n * @param parentResourcePath The parent resource identity.\n * @param resourceType The resource type of the resource to update.\n * @param resourceName The name of the resource to update.\n * @param apiVersion The API version to use for the operation.\n * @param parameters Parameters for updating the resource.\n * @param options The options parameters.\n */\n async beginUpdate(\n resourceGroupName: string,\n resourceProviderNamespace: string,\n parentResourcePath: string,\n resourceType: string,\n resourceName: string,\n apiVersion: string,\n parameters: GenericResource,\n options?: ResourcesUpdateOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<ResourcesUpdateResponse>,\n ResourcesUpdateResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<ResourcesUpdateResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n {\n resourceGroupName,\n resourceProviderNamespace,\n parentResourcePath,\n resourceType,\n resourceName,\n apiVersion,\n parameters,\n options\n },\n updateOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Updates a resource.\n * @param resourceGroupName The name of the resource group for the resource. The name is case\n * insensitive.\n * @param resourceProviderNamespace The namespace of the resource provider.\n * @param parentResourcePath The parent resource identity.\n * @param resourceType The resource type of the resource to update.\n * @param resourceName The name of the resource to update.\n * @param apiVersion The API version to use for the operation.\n * @param parameters Parameters for updating the resource.\n * @param options The options parameters.\n */\n async beginUpdateAndWait(\n resourceGroupName: string,\n resourceProviderNamespace: string,\n parentResourcePath: string,\n resourceType: string,\n resourceName: string,\n apiVersion: string,\n parameters: GenericResource,\n options?: ResourcesUpdateOptionalParams\n ): Promise<ResourcesUpdateResponse> {\n const poller = await this.beginUpdate(\n resourceGroupName,\n resourceProviderNamespace,\n parentResourcePath,\n resourceType,\n resourceName,\n apiVersion,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Gets a resource.\n * @param resourceGroupName The name of the resource group containing the resource to get. The name is\n * case insensitive.\n * @param resourceProviderNamespace The namespace of the resource provider.\n * @param parentResourcePath The parent resource identity.\n * @param resourceType The resource type of the resource.\n * @param resourceName The name of the resource to get.\n * @param apiVersion The API version to use for the operation.\n * @param options The options parameters.\n */\n get(\n resourceGroupName: string,\n resourceProviderNamespace: string,\n parentResourcePath: string,\n resourceType: string,\n resourceName: string,\n apiVersion: string,\n options?: ResourcesGetOptionalParams\n ): Promise<ResourcesGetResponse> {\n return this.client.sendOperationRequest(\n {\n resourceGroupName,\n resourceProviderNamespace,\n parentResourcePath,\n resourceType,\n resourceName,\n apiVersion,\n options\n },\n getOperationSpec\n );\n }\n\n /**\n * Checks by ID whether a resource exists.\n * @param resourceId The fully qualified ID of the resource, including the resource name and resource\n * type. Use the format,\n * /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}\n * @param apiVersion The API version to use for the operation.\n * @param options The options parameters.\n */\n checkExistenceById(\n resourceId: string,\n apiVersion: string,\n options?: ResourcesCheckExistenceByIdOptionalParams\n ): Promise<ResourcesCheckExistenceByIdResponse> {\n return this.client.sendOperationRequest(\n { resourceId, apiVersion, options },\n checkExistenceByIdOperationSpec\n );\n }\n\n /**\n * Deletes a resource by ID.\n * @param resourceId The fully qualified ID of the resource, including the resource name and resource\n * type. Use the format,\n * /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}\n * @param apiVersion The API version to use for the operation.\n * @param options The options parameters.\n */\n async beginDeleteById(\n resourceId: string,\n apiVersion: string,\n options?: ResourcesDeleteByIdOptionalParams\n ): Promise<PollerLike<PollOperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { resourceId, apiVersion, options },\n deleteByIdOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Deletes a resource by ID.\n * @param resourceId The fully qualified ID of the resource, including the resource name and resource\n * type. Use the format,\n * /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}\n * @param apiVersion The API version to use for the operation.\n * @param options The options parameters.\n */\n async beginDeleteByIdAndWait(\n resourceId: string,\n apiVersion: string,\n options?: ResourcesDeleteByIdOptionalParams\n ): Promise<void> {\n const poller = await this.beginDeleteById(resourceId, apiVersion, options);\n return poller.pollUntilDone();\n }\n\n /**\n * Create a resource by ID.\n * @param resourceId The fully qualified ID of the resource, including the resource name and resource\n * type. Use the format,\n * /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}\n * @param apiVersion The API version to use for the operation.\n * @param parameters Create or update resource parameters.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateById(\n resourceId: string,\n apiVersion: string,\n parameters: GenericResource,\n options?: ResourcesCreateOrUpdateByIdOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<ResourcesCreateOrUpdateByIdResponse>,\n ResourcesCreateOrUpdateByIdResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<ResourcesCreateOrUpdateByIdResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { resourceId, apiVersion, parameters, options },\n createOrUpdateByIdOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Create a resource by ID.\n * @param resourceId The fully qualified ID of the resource, including the resource name and resource\n * type. Use the format,\n * /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}\n * @param apiVersion The API version to use for the operation.\n * @param parameters Create or update resource parameters.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateByIdAndWait(\n resourceId: string,\n apiVersion: string,\n parameters: GenericResource,\n options?: ResourcesCreateOrUpdateByIdOptionalParams\n ): Promise<ResourcesCreateOrUpdateByIdResponse> {\n const poller = await this.beginCreateOrUpdateById(\n resourceId,\n apiVersion,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Updates a resource by ID.\n * @param resourceId The fully qualified ID of the resource, including the resource name and resource\n * type. Use the format,\n * /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}\n * @param apiVersion The API version to use for the operation.\n * @param parameters Update resource parameters.\n * @param options The options parameters.\n */\n async beginUpdateById(\n resourceId: string,\n apiVersion: string,\n parameters: GenericResource,\n options?: ResourcesUpdateByIdOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<ResourcesUpdateByIdResponse>,\n ResourcesUpdateByIdResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<ResourcesUpdateByIdResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { resourceId, apiVersion, parameters, options },\n updateByIdOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Updates a resource by ID.\n * @param resourceId The fully qualified ID of the resource, including the resource name and resource\n * type. Use the format,\n * /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}\n * @param apiVersion The API version to use for the operation.\n * @param parameters Update resource parameters.\n * @param options The options parameters.\n */\n async beginUpdateByIdAndWait(\n resourceId: string,\n apiVersion: string,\n parameters: GenericResource,\n options?: ResourcesUpdateByIdOptionalParams\n ): Promise<ResourcesUpdateByIdResponse> {\n const poller = await this.beginUpdateById(\n resourceId,\n apiVersion,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Gets a resource by ID.\n * @param resourceId The fully qualified ID of the resource, including the resource name and resource\n * type. Use the format,\n * /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}\n * @param apiVersion The API version to use for the operation.\n * @param options The options parameters.\n */\n getById(\n resourceId: string,\n apiVersion: string,\n options?: ResourcesGetByIdOptionalParams\n ): Promise<ResourcesGetByIdResponse> {\n return this.client.sendOperationRequest(\n { resourceId, apiVersion, options },\n getByIdOperationSpec\n );\n }\n\n /**\n * ListByResourceGroupNext\n * @param resourceGroupName The resource group with the resources to get.\n * @param nextLink The nextLink from the previous successful call to the ListByResourceGroup method.\n * @param options The options parameters.\n */\n private _listByResourceGroupNext(\n resourceGroupName: string,\n nextLink: string,\n options?: ResourcesListByResourceGroupNextOptionalParams\n ): Promise<ResourcesListByResourceGroupNextResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, nextLink, options },\n listByResourceGroupNextOperationSpec\n );\n }\n\n /**\n * ListNext\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n private _listNext(\n nextLink: string,\n options?: ResourcesListNextOptionalParams\n ): Promise<ResourcesListNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listNextOperationSpec\n );\n }\n\n /**\n * ListByResourceGroupNextNext\n * @param resourceGroupName The resource group with the resources to get.\n * @param nextLink The nextLink from the previous successful call to the ListByResourceGroupNext\n * method.\n * @param options The options parameters.\n */\n private _listByResourceGroupNextNext(\n resourceGroupName: string,\n nextLink: string,\n options?: ResourcesListByResourceGroupNextNextOptionalParams\n ): Promise<ResourcesListByResourceGroupNextNextResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, nextLink, options },\n listByResourceGroupNextNextOperationSpec\n );\n }\n\n /**\n * ListNextNext\n * @param nextLink The nextLink from the previous successful call to the ListNext method.\n * @param options The options parameters.\n */\n private _listNextNext(\n nextLink: string,\n options?: ResourcesListNextNextOptionalParams\n ): Promise<ResourcesListNextNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listNextNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst listByResourceGroupOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ResourceListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.filter,\n Parameters.top,\n Parameters.expand\n ],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst moveResourcesOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources\",\n httpMethod: \"POST\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters4,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.sourceResourceGroupName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst validateMoveResourcesOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources\",\n httpMethod: \"POST\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters4,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.sourceResourceGroupName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst listOperationSpec: coreClient.OperationSpec = {\n path: \"/subscriptions/{subscriptionId}/resources\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ResourceListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.filter,\n Parameters.top,\n Parameters.expand\n ],\n urlParameters: [Parameters.$host, Parameters.subscriptionId],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst checkExistenceOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}\",\n httpMethod: \"HEAD\",\n responses: {\n 204: {},\n 404: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceGroupName,\n Parameters.resourceProviderNamespace,\n Parameters.parentResourcePath,\n Parameters.resourceType,\n Parameters.resourceName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst deleteOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceGroupName,\n Parameters.resourceProviderNamespace,\n Parameters.parentResourcePath,\n Parameters.resourceType,\n Parameters.resourceName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.GenericResource\n },\n 201: {\n bodyMapper: Mappers.GenericResource\n },\n 202: {\n bodyMapper: Mappers.GenericResource\n },\n 204: {\n bodyMapper: Mappers.GenericResource\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters5,\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceGroupName,\n Parameters.resourceProviderNamespace,\n Parameters.parentResourcePath,\n Parameters.resourceType,\n Parameters.resourceName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst updateOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}\",\n httpMethod: \"PATCH\",\n responses: {\n 200: {\n bodyMapper: Mappers.GenericResource\n },\n 201: {\n bodyMapper: Mappers.GenericResource\n },\n 202: {\n bodyMapper: Mappers.GenericResource\n },\n 204: {\n bodyMapper: Mappers.GenericResource\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters5,\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceGroupName,\n Parameters.resourceProviderNamespace,\n Parameters.parentResourcePath,\n Parameters.resourceType,\n Parameters.resourceName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst getOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.GenericResource\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceGroupName,\n Parameters.resourceProviderNamespace,\n Parameters.parentResourcePath,\n Parameters.resourceType,\n Parameters.resourceName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst checkExistenceByIdOperationSpec: coreClient.OperationSpec = {\n path: \"/{resourceId}\",\n httpMethod: \"HEAD\",\n responses: {\n 204: {},\n 404: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [Parameters.$host, Parameters.resourceId],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst deleteByIdOperationSpec: coreClient.OperationSpec = {\n path: \"/{resourceId}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [Parameters.$host, Parameters.resourceId],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateByIdOperationSpec: coreClient.OperationSpec = {\n path: \"/{resourceId}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.GenericResource\n },\n 201: {\n bodyMapper: Mappers.GenericResource\n },\n 202: {\n bodyMapper: Mappers.GenericResource\n },\n 204: {\n bodyMapper: Mappers.GenericResource\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters5,\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [Parameters.$host, Parameters.resourceId],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst updateByIdOperationSpec: coreClient.OperationSpec = {\n path: \"/{resourceId}\",\n httpMethod: \"PATCH\",\n responses: {\n 200: {\n bodyMapper: Mappers.GenericResource\n },\n 201: {\n bodyMapper: Mappers.GenericResource\n },\n 202: {\n bodyMapper: Mappers.GenericResource\n },\n 204: {\n bodyMapper: Mappers.GenericResource\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters5,\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [Parameters.$host, Parameters.resourceId],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst getByIdOperationSpec: coreClient.OperationSpec = {\n path: \"/{resourceId}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.GenericResource\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [Parameters.$host, Parameters.resourceId],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listByResourceGroupNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ResourceListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.filter,\n Parameters.top,\n Parameters.expand\n ],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ResourceListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.filter,\n Parameters.top,\n Parameters.expand\n ],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listByResourceGroupNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ResourceListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.filter,\n Parameters.top,\n Parameters.expand\n ],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ResourceListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.filter,\n Parameters.top,\n Parameters.expand\n ],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport \"@azure/core-paging\";\nimport { PagedAsyncIterableIterator } from \"@azure/core-paging\";\nimport { ResourceGroups } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { ResourceManagementClientContext } from \"../resourceManagementClientContext\";\nimport { PollerLike, PollOperationState } from \"@azure/core-lro\";\nimport { LroEngine } from \"../lro\";\nimport { CoreClientLro, shouldDeserializeLro } from \"../coreClientLro\";\nimport {\n ResourceGroup,\n ResourceGroupsListNextOptionalParams,\n ResourceGroupsListOptionalParams,\n ResourceGroupsListNextNextOptionalParams,\n ResourceGroupsCheckExistenceOptionalParams,\n ResourceGroupsCheckExistenceResponse,\n ResourceGroupsCreateOrUpdateOptionalParams,\n ResourceGroupsCreateOrUpdateResponse,\n ResourceGroupsDeleteOptionalParams,\n ResourceGroupsGetOptionalParams,\n ResourceGroupsGetResponse,\n ResourceGroupPatchable,\n ResourceGroupsUpdateOptionalParams,\n ResourceGroupsUpdateResponse,\n ExportTemplateRequest,\n ResourceGroupsExportTemplateOptionalParams,\n ResourceGroupsExportTemplateResponse,\n ResourceGroupsListResponse,\n ResourceGroupsListNextResponse,\n ResourceGroupsListNextNextResponse\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class representing a ResourceGroups. */\nexport class ResourceGroupsImpl implements ResourceGroups {\n private readonly client: ResourceManagementClientContext;\n\n /**\n * Initialize a new instance of the class ResourceGroups class.\n * @param client Reference to the service client\n */\n constructor(client: ResourceManagementClientContext) {\n this.client = client;\n }\n\n /**\n * Gets all the resource groups for a subscription.\n * @param options The options parameters.\n */\n public list(\n options?: ResourceGroupsListOptionalParams\n ): PagedAsyncIterableIterator<ResourceGroup> {\n const iter = this.listPagingAll(options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listPagingPage(options);\n }\n };\n }\n\n private async *listPagingPage(\n options?: ResourceGroupsListOptionalParams\n ): AsyncIterableIterator<ResourceGroup[]> {\n let result = await this._list(options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listNext(continuationToken, options);\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listPagingAll(\n options?: ResourceGroupsListOptionalParams\n ): AsyncIterableIterator<ResourceGroup> {\n for await (const page of this.listPagingPage(options)) {\n yield* page;\n }\n }\n\n /**\n * ListNext\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n public listNext(\n nextLink: string,\n options?: ResourceGroupsListNextOptionalParams\n ): PagedAsyncIterableIterator<ResourceGroup> {\n const iter = this.listNextPagingAll(nextLink, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listNextPagingPage(nextLink, options);\n }\n };\n }\n\n private async *listNextPagingPage(\n nextLink: string,\n options?: ResourceGroupsListNextOptionalParams\n ): AsyncIterableIterator<ResourceGroup[]> {\n let result = await this._listNext(nextLink, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listNextNext(continuationToken, options);\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listNextPagingAll(\n nextLink: string,\n options?: ResourceGroupsListNextOptionalParams\n ): AsyncIterableIterator<ResourceGroup> {\n for await (const page of this.listNextPagingPage(nextLink, options)) {\n yield* page;\n }\n }\n\n /**\n * Checks whether a resource group exists.\n * @param resourceGroupName The name of the resource group to check. The name is case insensitive.\n * @param options The options parameters.\n */\n checkExistence(\n resourceGroupName: string,\n options?: ResourceGroupsCheckExistenceOptionalParams\n ): Promise<ResourceGroupsCheckExistenceResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, options },\n checkExistenceOperationSpec\n );\n }\n\n /**\n * Creates or updates a resource group.\n * @param resourceGroupName The name of the resource group to create or update. Can include\n * alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that\n * match the allowed characters.\n * @param parameters Parameters supplied to the create or update a resource group.\n * @param options The options parameters.\n */\n createOrUpdate(\n resourceGroupName: string,\n parameters: ResourceGroup,\n options?: ResourceGroupsCreateOrUpdateOptionalParams\n ): Promise<ResourceGroupsCreateOrUpdateResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, parameters, options },\n createOrUpdateOperationSpec\n );\n }\n\n /**\n * When you delete a resource group, all of its resources are also deleted. Deleting a resource group\n * deletes all of its template deployments and currently stored operations.\n * @param resourceGroupName The name of the resource group to delete. The name is case insensitive.\n * @param options The options parameters.\n */\n async beginDelete(\n resourceGroupName: string,\n options?: ResourceGroupsDeleteOptionalParams\n ): Promise<PollerLike<PollOperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { resourceGroupName, options },\n deleteOperationSpec\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * When you delete a resource group, all of its resources are also deleted. Deleting a resource group\n * deletes all of its template deployments and currently stored operations.\n * @param resourceGroupName The name of the resource group to delete. The name is case insensitive.\n * @param options The options parameters.\n */\n async beginDeleteAndWait(\n resourceGroupName: string,\n options?: ResourceGroupsDeleteOptionalParams\n ): Promise<void> {\n const poller = await this.beginDelete(resourceGroupName, options);\n return poller.pollUntilDone();\n }\n\n /**\n * Gets a resource group.\n * @param resourceGroupName The name of the resource group to get. The name is case insensitive.\n * @param options The options parameters.\n */\n get(\n resourceGroupName: string,\n options?: ResourceGroupsGetOptionalParams\n ): Promise<ResourceGroupsGetResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, options },\n getOperationSpec\n );\n }\n\n /**\n * Resource groups can be updated through a simple PATCH operation to a group address. The format of\n * the request is the same as that for creating a resource group. If a field is unspecified, the\n * current value is retained.\n * @param resourceGroupName The name of the resource group to update. The name is case insensitive.\n * @param parameters Parameters supplied to update a resource group.\n * @param options The options parameters.\n */\n update(\n resourceGroupName: string,\n parameters: ResourceGroupPatchable,\n options?: ResourceGroupsUpdateOptionalParams\n ): Promise<ResourceGroupsUpdateResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, parameters, options },\n updateOperationSpec\n );\n }\n\n /**\n * Captures the specified resource group as a template.\n * @param resourceGroupName The name of the resource group. The name is case insensitive.\n * @param parameters Parameters for exporting the template.\n * @param options The options parameters.\n */\n async beginExportTemplate(\n resourceGroupName: string,\n parameters: ExportTemplateRequest,\n options?: ResourceGroupsExportTemplateOptionalParams\n ): Promise<\n PollerLike<\n PollOperationState<ResourceGroupsExportTemplateResponse>,\n ResourceGroupsExportTemplateResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<ResourceGroupsExportTemplateResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = new CoreClientLro(\n sendOperation,\n { resourceGroupName, parameters, options },\n exportTemplateOperationSpec,\n \"location\"\n );\n return new LroEngine(lro, { intervalInMs: options?.updateIntervalInMs });\n }\n\n /**\n * Captures the specified resource group as a template.\n * @param resourceGroupName The name of the resource group. The name is case insensitive.\n * @param parameters Parameters for exporting the template.\n * @param options The options parameters.\n */\n async beginExportTemplateAndWait(\n resourceGroupName: string,\n parameters: ExportTemplateRequest,\n options?: ResourceGroupsExportTemplateOptionalParams\n ): Promise<ResourceGroupsExportTemplateResponse> {\n const poller = await this.beginExportTemplate(\n resourceGroupName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Gets all the resource groups for a subscription.\n * @param options The options parameters.\n */\n private _list(\n options?: ResourceGroupsListOptionalParams\n ): Promise<ResourceGroupsListResponse> {\n return this.client.sendOperationRequest({ options }, listOperationSpec);\n }\n\n /**\n * ListNext\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n private _listNext(\n nextLink: string,\n options?: ResourceGroupsListNextOptionalParams\n ): Promise<ResourceGroupsListNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listNextOperationSpec\n );\n }\n\n /**\n * ListNextNext\n * @param nextLink The nextLink from the previous successful call to the ListNext method.\n * @param options The options parameters.\n */\n private _listNextNext(\n nextLink: string,\n options?: ResourceGroupsListNextNextOptionalParams\n ): Promise<ResourceGroupsListNextNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listNextNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst checkExistenceOperationSpec: coreClient.OperationSpec = {\n path: \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}\",\n httpMethod: \"HEAD\",\n responses: {\n 204: {},\n 404: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateOperationSpec: coreClient.OperationSpec = {\n path: \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.ResourceGroup\n },\n 201: {\n bodyMapper: Mappers.ResourceGroup\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters6,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst deleteOperationSpec: coreClient.OperationSpec = {\n path: \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.forceDeletionTypes],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getOperationSpec: coreClient.OperationSpec = {\n path: \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ResourceGroup\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst updateOperationSpec: coreClient.OperationSpec = {\n path: \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}\",\n httpMethod: \"PATCH\",\n responses: {\n 200: {\n bodyMapper: Mappers.ResourceGroup\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters7,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst exportTemplateOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.ResourceGroupExportResult\n },\n 201: {\n bodyMapper: Mappers.ResourceGroupExportResult\n },\n 202: {\n bodyMapper: Mappers.ResourceGroupExportResult\n },\n 204: {\n bodyMapper: Mappers.ResourceGroupExportResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters8,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.resourceGroupName1\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst listOperationSpec: coreClient.OperationSpec = {\n path: \"/subscriptions/{subscriptionId}/resourcegroups\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ResourceGroupListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [Parameters.$host, Parameters.subscriptionId],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ResourceGroupListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ResourceGroupListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport \"@azure/core-paging\";\nimport { PagedAsyncIterableIterator } from \"@azure/core-paging\";\nimport { TagsOperations } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { ResourceManagementClientContext } from \"../resourceManagementClientContext\";\nimport {\n TagDetails,\n TagsOperationsListNextOptionalParams,\n TagsOperationsListOptionalParams,\n TagsOperationsListNextNextOptionalParams,\n TagsOperationsDeleteValueOptionalParams,\n TagsOperationsCreateOrUpdateValueOptionalParams,\n TagsOperationsCreateOrUpdateValueResponse,\n TagsOperationsCreateOrUpdateOptionalParams,\n TagsOperationsCreateOrUpdateResponse,\n TagsOperationsDeleteOptionalParams,\n TagsOperationsListResponse,\n TagsResource,\n TagsOperationsCreateOrUpdateAtScopeOptionalParams,\n TagsOperationsCreateOrUpdateAtScopeResponse,\n TagsPatchResource,\n TagsOperationsUpdateAtScopeOptionalParams,\n TagsOperationsUpdateAtScopeResponse,\n TagsOperationsGetAtScopeOptionalParams,\n TagsOperationsGetAtScopeResponse,\n TagsOperationsDeleteAtScopeOptionalParams,\n TagsOperationsListNextResponse,\n TagsOperationsListNextNextResponse\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class representing a TagsOperations. */\nexport class TagsOperationsImpl implements TagsOperations {\n private readonly client: ResourceManagementClientContext;\n\n /**\n * Initialize a new instance of the class TagsOperations class.\n * @param client Reference to the service client\n */\n constructor(client: ResourceManagementClientContext) {\n this.client = client;\n }\n\n /**\n * This operation performs a union of predefined tags, resource tags, resource group tags and\n * subscription tags, and returns a summary of usage for each tag name and value under the given\n * subscription. In case of a large number of tags, this operation may return a previously cached\n * result.\n * @param options The options parameters.\n */\n public list(\n options?: TagsOperationsListOptionalParams\n ): PagedAsyncIterableIterator<TagDetails> {\n const iter = this.listPagingAll(options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listPagingPage(options);\n }\n };\n }\n\n private async *listPagingPage(\n options?: TagsOperationsListOptionalParams\n ): AsyncIterableIterator<TagDetails[]> {\n let result = await this._list(options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listNext(continuationToken, options);\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listPagingAll(\n options?: TagsOperationsListOptionalParams\n ): AsyncIterableIterator<TagDetails> {\n for await (const page of this.listPagingPage(options)) {\n yield* page;\n }\n }\n\n /**\n * ListNext\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n public listNext(\n nextLink: string,\n options?: TagsOperationsListNextOptionalParams\n ): PagedAsyncIterableIterator<TagDetails> {\n const iter = this.listNextPagingAll(nextLink, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listNextPagingPage(nextLink, options);\n }\n };\n }\n\n private async *listNextPagingPage(\n nextLink: string,\n options?: TagsOperationsListNextOptionalParams\n ): AsyncIterableIterator<TagDetails[]> {\n let result = await this._listNext(nextLink, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listNextNext(continuationToken, options);\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listNextPagingAll(\n nextLink: string,\n options?: TagsOperationsListNextOptionalParams\n ): AsyncIterableIterator<TagDetails> {\n for await (const page of this.listNextPagingPage(nextLink, options)) {\n yield* page;\n }\n }\n\n /**\n * This operation allows deleting a value from the list of predefined values for an existing predefined\n * tag name. The value being deleted must not be in use as a tag value for the given tag name for any\n * resource.\n * @param tagName The name of the tag.\n * @param tagValue The value of the tag to delete.\n * @param options The options parameters.\n */\n deleteValue(\n tagName: string,\n tagValue: string,\n options?: TagsOperationsDeleteValueOptionalParams\n ): Promise<void> {\n return this.client.sendOperationRequest(\n { tagName, tagValue, options },\n deleteValueOperationSpec\n );\n }\n\n /**\n * This operation allows adding a value to the list of predefined values for an existing predefined tag\n * name. A tag value can have a maximum of 256 characters.\n * @param tagName The name of the tag.\n * @param tagValue The value of the tag to create.\n * @param options The options parameters.\n */\n createOrUpdateValue(\n tagName: string,\n tagValue: string,\n options?: TagsOperationsCreateOrUpdateValueOptionalParams\n ): Promise<TagsOperationsCreateOrUpdateValueResponse> {\n return this.client.sendOperationRequest(\n { tagName, tagValue, options },\n createOrUpdateValueOperationSpec\n );\n }\n\n /**\n * This operation allows adding a name to the list of predefined tag names for the given subscription.\n * A tag name can have a maximum of 512 characters and is case-insensitive. Tag names cannot have the\n * following prefixes which are reserved for Azure use: 'microsoft', 'azure', 'windows'.\n * @param tagName The name of the tag to create.\n * @param options The options parameters.\n */\n createOrUpdate(\n tagName: string,\n options?: TagsOperationsCreateOrUpdateOptionalParams\n ): Promise<TagsOperationsCreateOrUpdateResponse> {\n return this.client.sendOperationRequest(\n { tagName, options },\n createOrUpdateOperationSpec\n );\n }\n\n /**\n * This operation allows deleting a name from the list of predefined tag names for the given\n * subscription. The name being deleted must not be in use as a tag name for any resource. All\n * predefined values for the given name must have already been deleted.\n * @param tagName The name of the tag.\n * @param options The options parameters.\n */\n delete(\n tagName: string,\n options?: TagsOperationsDeleteOptionalParams\n ): Promise<void> {\n return this.client.sendOperationRequest(\n { tagName, options },\n deleteOperationSpec\n );\n }\n\n /**\n * This operation performs a union of predefined tags, resource tags, resource group tags and\n * subscription tags, and returns a summary of usage for each tag name and value under the given\n * subscription. In case of a large number of tags, this operation may return a previously cached\n * result.\n * @param options The options parameters.\n */\n private _list(\n options?: TagsOperationsListOptionalParams\n ): Promise<TagsOperationsListResponse> {\n return this.client.sendOperationRequest({ options }, listOperationSpec);\n }\n\n /**\n * This operation allows adding or replacing the entire set of tags on the specified resource or\n * subscription. The specified entity can have a maximum of 50 tags.\n * @param scope The resource scope.\n * @param parameters Wrapper resource for tags API requests and responses.\n * @param options The options parameters.\n */\n createOrUpdateAtScope(\n scope: string,\n parameters: TagsResource,\n options?: TagsOperationsCreateOrUpdateAtScopeOptionalParams\n ): Promise<TagsOperationsCreateOrUpdateAtScopeResponse> {\n return this.client.sendOperationRequest(\n { scope, parameters, options },\n createOrUpdateAtScopeOperationSpec\n );\n }\n\n /**\n * This operation allows replacing, merging or selectively deleting tags on the specified resource or\n * subscription. The specified entity can have a maximum of 50 tags at the end of the operation. The\n * 'replace' option replaces the entire set of existing tags with a new set. The 'merge' option allows\n * adding tags with new names and updating the values of tags with existing names. The 'delete' option\n * allows selectively deleting tags based on given names or name/value pairs.\n * @param scope The resource scope.\n * @param parameters Wrapper resource for tags patch API request only.\n * @param options The options parameters.\n */\n updateAtScope(\n scope: string,\n parameters: TagsPatchResource,\n options?: TagsOperationsUpdateAtScopeOptionalParams\n ): Promise<TagsOperationsUpdateAtScopeResponse> {\n return this.client.sendOperationRequest(\n { scope, parameters, options },\n updateAtScopeOperationSpec\n );\n }\n\n /**\n * Gets the entire set of tags on a resource or subscription.\n * @param scope The resource scope.\n * @param options The options parameters.\n */\n getAtScope(\n scope: string,\n options?: TagsOperationsGetAtScopeOptionalParams\n ): Promise<TagsOperationsGetAtScopeResponse> {\n return this.client.sendOperationRequest(\n { scope, options },\n getAtScopeOperationSpec\n );\n }\n\n /**\n * Deletes the entire set of tags on a resource or subscription.\n * @param scope The resource scope.\n * @param options The options parameters.\n */\n deleteAtScope(\n scope: string,\n options?: TagsOperationsDeleteAtScopeOptionalParams\n ): Promise<void> {\n return this.client.sendOperationRequest(\n { scope, options },\n deleteAtScopeOperationSpec\n );\n }\n\n /**\n * ListNext\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n private _listNext(\n nextLink: string,\n options?: TagsOperationsListNextOptionalParams\n ): Promise<TagsOperationsListNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listNextOperationSpec\n );\n }\n\n /**\n * ListNextNext\n * @param nextLink The nextLink from the previous successful call to the ListNext method.\n * @param options The options parameters.\n */\n private _listNextNext(\n nextLink: string,\n options?: TagsOperationsListNextNextOptionalParams\n ): Promise<TagsOperationsListNextNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listNextNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst deleteValueOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.tagName,\n Parameters.tagValue\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateValueOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.TagValue\n },\n 201: {\n bodyMapper: Mappers.TagValue\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.tagName,\n Parameters.tagValue\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateOperationSpec: coreClient.OperationSpec = {\n path: \"/subscriptions/{subscriptionId}/tagNames/{tagName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.TagDetails\n },\n 201: {\n bodyMapper: Mappers.TagDetails\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.tagName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst deleteOperationSpec: coreClient.OperationSpec = {\n path: \"/subscriptions/{subscriptionId}/tagNames/{tagName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 204: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.tagName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listOperationSpec: coreClient.OperationSpec = {\n path: \"/subscriptions/{subscriptionId}/tagNames\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.TagsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.subscriptionId],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateAtScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/{scope}/providers/Microsoft.Resources/tags/default\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.TagsResource\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters9,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.scope],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst updateAtScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/{scope}/providers/Microsoft.Resources/tags/default\",\n httpMethod: \"PATCH\",\n responses: {\n 200: {\n bodyMapper: Mappers.TagsResource\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n requestBody: Parameters.parameters10,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.scope],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst getAtScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/{scope}/providers/Microsoft.Resources/tags/default\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.TagsResource\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.scope],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst deleteAtScopeOperationSpec: coreClient.OperationSpec = {\n path: \"/{scope}/providers/Microsoft.Resources/tags/default\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.scope],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.TagsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.TagsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport \"@azure/core-paging\";\nimport { PagedAsyncIterableIterator } from \"@azure/core-paging\";\nimport { DeploymentOperations } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { ResourceManagementClientContext } from \"../resourceManagementClientContext\";\nimport {\n DeploymentOperation,\n DeploymentOperationsListAtScopeNextOptionalParams,\n DeploymentOperationsListAtScopeOptionalParams,\n DeploymentOperationsListAtTenantScopeNextOptionalParams,\n DeploymentOperationsListAtTenantScopeOptionalParams,\n DeploymentOperationsListAtManagementGroupScopeNextOptionalParams,\n DeploymentOperationsListAtManagementGroupScopeOptionalParams,\n DeploymentOperationsListAtSubscriptionScopeNextOptionalParams,\n DeploymentOperationsListAtSubscriptionScopeOptionalParams,\n DeploymentOperationsListNextOptionalParams,\n DeploymentOperationsListOptionalParams,\n DeploymentOperationsListAtScopeNextNextOptionalParams,\n DeploymentOperationsListAtTenantScopeNextNextOptionalParams,\n DeploymentOperationsListAtManagementGroupScopeNextNextOptionalParams,\n DeploymentOperationsListAtSubscriptionScopeNextNextOptionalParams,\n DeploymentOperationsListNextNextOptionalParams,\n DeploymentOperationsGetAtScopeOptionalParams,\n DeploymentOperationsGetAtScopeResponse,\n DeploymentOperationsListAtScopeResponse,\n DeploymentOperationsGetAtTenantScopeOptionalParams,\n DeploymentOperationsGetAtTenantScopeResponse,\n DeploymentOperationsListAtTenantScopeResponse,\n DeploymentOperationsGetAtManagementGroupScopeOptionalParams,\n DeploymentOperationsGetAtManagementGroupScopeResponse,\n DeploymentOperationsListAtManagementGroupScopeResponse,\n DeploymentOperationsGetAtSubscriptionScopeOptionalParams,\n DeploymentOperationsGetAtSubscriptionScopeResponse,\n DeploymentOperationsListAtSubscriptionScopeResponse,\n DeploymentOperationsGetOptionalParams,\n DeploymentOperationsGetResponse,\n DeploymentOperationsListResponse,\n DeploymentOperationsListAtScopeNextResponse,\n DeploymentOperationsListAtTenantScopeNextResponse,\n DeploymentOperationsListAtManagementGroupScopeNextResponse,\n DeploymentOperationsListAtSubscriptionScopeNextResponse,\n DeploymentOperationsListNextResponse,\n DeploymentOperationsListAtScopeNextNextResponse,\n DeploymentOperationsListAtTenantScopeNextNextResponse,\n DeploymentOperationsListAtManagementGroupScopeNextNextResponse,\n DeploymentOperationsListAtSubscriptionScopeNextNextResponse,\n DeploymentOperationsListNextNextResponse\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class representing a DeploymentOperations. */\nexport class DeploymentOperationsImpl implements DeploymentOperations {\n private readonly client: ResourceManagementClientContext;\n\n /**\n * Initialize a new instance of the class DeploymentOperations class.\n * @param client Reference to the service client\n */\n constructor(client: ResourceManagementClientContext) {\n this.client = client;\n }\n\n /**\n * Gets all deployments operations for a deployment.\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n public listAtScope(\n scope: string,\n deploymentName: string,\n options?: DeploymentOperationsListAtScopeOptionalParams\n ): PagedAsyncIterableIterator<DeploymentOperation> {\n const iter = this.listAtScopePagingAll(scope, deploymentName, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtScopePagingPage(scope, deploymentName, options);\n }\n };\n }\n\n private async *listAtScopePagingPage(\n scope: string,\n deploymentName: string,\n options?: DeploymentOperationsListAtScopeOptionalParams\n ): AsyncIterableIterator<DeploymentOperation[]> {\n let result = await this._listAtScope(scope, deploymentName, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtScopeNext(\n scope,\n deploymentName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtScopePagingAll(\n scope: string,\n deploymentName: string,\n options?: DeploymentOperationsListAtScopeOptionalParams\n ): AsyncIterableIterator<DeploymentOperation> {\n for await (const page of this.listAtScopePagingPage(\n scope,\n deploymentName,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * Gets all deployments operations for a deployment.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n public listAtTenantScope(\n deploymentName: string,\n options?: DeploymentOperationsListAtTenantScopeOptionalParams\n ): PagedAsyncIterableIterator<DeploymentOperation> {\n const iter = this.listAtTenantScopePagingAll(deploymentName, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtTenantScopePagingPage(deploymentName, options);\n }\n };\n }\n\n private async *listAtTenantScopePagingPage(\n deploymentName: string,\n options?: DeploymentOperationsListAtTenantScopeOptionalParams\n ): AsyncIterableIterator<DeploymentOperation[]> {\n let result = await this._listAtTenantScope(deploymentName, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtTenantScopeNext(\n deploymentName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtTenantScopePagingAll(\n deploymentName: string,\n options?: DeploymentOperationsListAtTenantScopeOptionalParams\n ): AsyncIterableIterator<DeploymentOperation> {\n for await (const page of this.listAtTenantScopePagingPage(\n deploymentName,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * Gets all deployments operations for a deployment.\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n public listAtManagementGroupScope(\n groupId: string,\n deploymentName: string,\n options?: DeploymentOperationsListAtManagementGroupScopeOptionalParams\n ): PagedAsyncIterableIterator<DeploymentOperation> {\n const iter = this.listAtManagementGroupScopePagingAll(\n groupId,\n deploymentName,\n options\n );\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtManagementGroupScopePagingPage(\n groupId,\n deploymentName,\n options\n );\n }\n };\n }\n\n private async *listAtManagementGroupScopePagingPage(\n groupId: string,\n deploymentName: string,\n options?: DeploymentOperationsListAtManagementGroupScopeOptionalParams\n ): AsyncIterableIterator<DeploymentOperation[]> {\n let result = await this._listAtManagementGroupScope(\n groupId,\n deploymentName,\n options\n );\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtManagementGroupScopeNext(\n groupId,\n deploymentName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtManagementGroupScopePagingAll(\n groupId: string,\n deploymentName: string,\n options?: DeploymentOperationsListAtManagementGroupScopeOptionalParams\n ): AsyncIterableIterator<DeploymentOperation> {\n for await (const page of this.listAtManagementGroupScopePagingPage(\n groupId,\n deploymentName,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * Gets all deployments operations for a deployment.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n public listAtSubscriptionScope(\n deploymentName: string,\n options?: DeploymentOperationsListAtSubscriptionScopeOptionalParams\n ): PagedAsyncIterableIterator<DeploymentOperation> {\n const iter = this.listAtSubscriptionScopePagingAll(deploymentName, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtSubscriptionScopePagingPage(deploymentName, options);\n }\n };\n }\n\n private async *listAtSubscriptionScopePagingPage(\n deploymentName: string,\n options?: DeploymentOperationsListAtSubscriptionScopeOptionalParams\n ): AsyncIterableIterator<DeploymentOperation[]> {\n let result = await this._listAtSubscriptionScope(deploymentName, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtSubscriptionScopeNext(\n deploymentName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtSubscriptionScopePagingAll(\n deploymentName: string,\n options?: DeploymentOperationsListAtSubscriptionScopeOptionalParams\n ): AsyncIterableIterator<DeploymentOperation> {\n for await (const page of this.listAtSubscriptionScopePagingPage(\n deploymentName,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * Gets all deployments operations for a deployment.\n * @param resourceGroupName The name of the resource group. The name is case insensitive.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n public list(\n resourceGroupName: string,\n deploymentName: string,\n options?: DeploymentOperationsListOptionalParams\n ): PagedAsyncIterableIterator<DeploymentOperation> {\n const iter = this.listPagingAll(resourceGroupName, deploymentName, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listPagingPage(resourceGroupName, deploymentName, options);\n }\n };\n }\n\n private async *listPagingPage(\n resourceGroupName: string,\n deploymentName: string,\n options?: DeploymentOperationsListOptionalParams\n ): AsyncIterableIterator<DeploymentOperation[]> {\n let result = await this._list(resourceGroupName, deploymentName, options);\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listNext(\n resourceGroupName,\n deploymentName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listPagingAll(\n resourceGroupName: string,\n deploymentName: string,\n options?: DeploymentOperationsListOptionalParams\n ): AsyncIterableIterator<DeploymentOperation> {\n for await (const page of this.listPagingPage(\n resourceGroupName,\n deploymentName,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * ListAtScopeNext\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param nextLink The nextLink from the previous successful call to the ListAtScope method.\n * @param options The options parameters.\n */\n public listAtScopeNext(\n scope: string,\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtScopeNextOptionalParams\n ): PagedAsyncIterableIterator<DeploymentOperation> {\n const iter = this.listAtScopeNextPagingAll(\n scope,\n deploymentName,\n nextLink,\n options\n );\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtScopeNextPagingPage(\n scope,\n deploymentName,\n nextLink,\n options\n );\n }\n };\n }\n\n private async *listAtScopeNextPagingPage(\n scope: string,\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentOperation[]> {\n let result = await this._listAtScopeNext(\n scope,\n deploymentName,\n nextLink,\n options\n );\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtScopeNextNext(\n scope,\n deploymentName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtScopeNextPagingAll(\n scope: string,\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentOperation> {\n for await (const page of this.listAtScopeNextPagingPage(\n scope,\n deploymentName,\n nextLink,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * ListAtTenantScopeNext\n * @param deploymentName The name of the deployment.\n * @param nextLink The nextLink from the previous successful call to the ListAtTenantScope method.\n * @param options The options parameters.\n */\n public listAtTenantScopeNext(\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtTenantScopeNextOptionalParams\n ): PagedAsyncIterableIterator<DeploymentOperation> {\n const iter = this.listAtTenantScopeNextPagingAll(\n deploymentName,\n nextLink,\n options\n );\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtTenantScopeNextPagingPage(\n deploymentName,\n nextLink,\n options\n );\n }\n };\n }\n\n private async *listAtTenantScopeNextPagingPage(\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtTenantScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentOperation[]> {\n let result = await this._listAtTenantScopeNext(\n deploymentName,\n nextLink,\n options\n );\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtTenantScopeNextNext(\n deploymentName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtTenantScopeNextPagingAll(\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtTenantScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentOperation> {\n for await (const page of this.listAtTenantScopeNextPagingPage(\n deploymentName,\n nextLink,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * ListAtManagementGroupScopeNext\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param nextLink The nextLink from the previous successful call to the ListAtManagementGroupScope\n * method.\n * @param options The options parameters.\n */\n public listAtManagementGroupScopeNext(\n groupId: string,\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtManagementGroupScopeNextOptionalParams\n ): PagedAsyncIterableIterator<DeploymentOperation> {\n const iter = this.listAtManagementGroupScopeNextPagingAll(\n groupId,\n deploymentName,\n nextLink,\n options\n );\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtManagementGroupScopeNextPagingPage(\n groupId,\n deploymentName,\n nextLink,\n options\n );\n }\n };\n }\n\n private async *listAtManagementGroupScopeNextPagingPage(\n groupId: string,\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtManagementGroupScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentOperation[]> {\n let result = await this._listAtManagementGroupScopeNext(\n groupId,\n deploymentName,\n nextLink,\n options\n );\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtManagementGroupScopeNextNext(\n groupId,\n deploymentName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtManagementGroupScopeNextPagingAll(\n groupId: string,\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtManagementGroupScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentOperation> {\n for await (const page of this.listAtManagementGroupScopeNextPagingPage(\n groupId,\n deploymentName,\n nextLink,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * ListAtSubscriptionScopeNext\n * @param deploymentName The name of the deployment.\n * @param nextLink The nextLink from the previous successful call to the ListAtSubscriptionScope\n * method.\n * @param options The options parameters.\n */\n public listAtSubscriptionScopeNext(\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtSubscriptionScopeNextOptionalParams\n ): PagedAsyncIterableIterator<DeploymentOperation> {\n const iter = this.listAtSubscriptionScopeNextPagingAll(\n deploymentName,\n nextLink,\n options\n );\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAtSubscriptionScopeNextPagingPage(\n deploymentName,\n nextLink,\n options\n );\n }\n };\n }\n\n private async *listAtSubscriptionScopeNextPagingPage(\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtSubscriptionScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentOperation[]> {\n let result = await this._listAtSubscriptionScopeNext(\n deploymentName,\n nextLink,\n options\n );\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listAtSubscriptionScopeNextNext(\n deploymentName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listAtSubscriptionScopeNextPagingAll(\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtSubscriptionScopeNextOptionalParams\n ): AsyncIterableIterator<DeploymentOperation> {\n for await (const page of this.listAtSubscriptionScopeNextPagingPage(\n deploymentName,\n nextLink,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * ListNext\n * @param resourceGroupName The name of the resource group. The name is case insensitive.\n * @param deploymentName The name of the deployment.\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n public listNext(\n resourceGroupName: string,\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListNextOptionalParams\n ): PagedAsyncIterableIterator<DeploymentOperation> {\n const iter = this.listNextPagingAll(\n resourceGroupName,\n deploymentName,\n nextLink,\n options\n );\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listNextPagingPage(\n resourceGroupName,\n deploymentName,\n nextLink,\n options\n );\n }\n };\n }\n\n private async *listNextPagingPage(\n resourceGroupName: string,\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListNextOptionalParams\n ): AsyncIterableIterator<DeploymentOperation[]> {\n let result = await this._listNext(\n resourceGroupName,\n deploymentName,\n nextLink,\n options\n );\n yield result.value || [];\n let continuationToken = result.nextLink;\n while (continuationToken) {\n result = await this._listNextNext(\n resourceGroupName,\n deploymentName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n yield result.value || [];\n }\n }\n\n private async *listNextPagingAll(\n resourceGroupName: string,\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListNextOptionalParams\n ): AsyncIterableIterator<DeploymentOperation> {\n for await (const page of this.listNextPagingPage(\n resourceGroupName,\n deploymentName,\n nextLink,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * Gets a deployments operation.\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param operationId The ID of the operation to get.\n * @param options The options parameters.\n */\n getAtScope(\n scope: string,\n deploymentName: string,\n operationId: string,\n options?: DeploymentOperationsGetAtScopeOptionalParams\n ): Promise<DeploymentOperationsGetAtScopeResponse> {\n return this.client.sendOperationRequest(\n { scope, deploymentName, operationId, options },\n getAtScopeOperationSpec\n );\n }\n\n /**\n * Gets all deployments operations for a deployment.\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n private _listAtScope(\n scope: string,\n deploymentName: string,\n options?: DeploymentOperationsListAtScopeOptionalParams\n ): Promise<DeploymentOperationsListAtScopeResponse> {\n return this.client.sendOperationRequest(\n { scope, deploymentName, options },\n listAtScopeOperationSpec\n );\n }\n\n /**\n * Gets a deployments operation.\n * @param deploymentName The name of the deployment.\n * @param operationId The ID of the operation to get.\n * @param options The options parameters.\n */\n getAtTenantScope(\n deploymentName: string,\n operationId: string,\n options?: DeploymentOperationsGetAtTenantScopeOptionalParams\n ): Promise<DeploymentOperationsGetAtTenantScopeResponse> {\n return this.client.sendOperationRequest(\n { deploymentName, operationId, options },\n getAtTenantScopeOperationSpec\n );\n }\n\n /**\n * Gets all deployments operations for a deployment.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n private _listAtTenantScope(\n deploymentName: string,\n options?: DeploymentOperationsListAtTenantScopeOptionalParams\n ): Promise<DeploymentOperationsListAtTenantScopeResponse> {\n return this.client.sendOperationRequest(\n { deploymentName, options },\n listAtTenantScopeOperationSpec\n );\n }\n\n /**\n * Gets a deployments operation.\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param operationId The ID of the operation to get.\n * @param options The options parameters.\n */\n getAtManagementGroupScope(\n groupId: string,\n deploymentName: string,\n operationId: string,\n options?: DeploymentOperationsGetAtManagementGroupScopeOptionalParams\n ): Promise<DeploymentOperationsGetAtManagementGroupScopeResponse> {\n return this.client.sendOperationRequest(\n { groupId, deploymentName, operationId, options },\n getAtManagementGroupScopeOperationSpec\n );\n }\n\n /**\n * Gets all deployments operations for a deployment.\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n private _listAtManagementGroupScope(\n groupId: string,\n deploymentName: string,\n options?: DeploymentOperationsListAtManagementGroupScopeOptionalParams\n ): Promise<DeploymentOperationsListAtManagementGroupScopeResponse> {\n return this.client.sendOperationRequest(\n { groupId, deploymentName, options },\n listAtManagementGroupScopeOperationSpec\n );\n }\n\n /**\n * Gets a deployments operation.\n * @param deploymentName The name of the deployment.\n * @param operationId The ID of the operation to get.\n * @param options The options parameters.\n */\n getAtSubscriptionScope(\n deploymentName: string,\n operationId: string,\n options?: DeploymentOperationsGetAtSubscriptionScopeOptionalParams\n ): Promise<DeploymentOperationsGetAtSubscriptionScopeResponse> {\n return this.client.sendOperationRequest(\n { deploymentName, operationId, options },\n getAtSubscriptionScopeOperationSpec\n );\n }\n\n /**\n * Gets all deployments operations for a deployment.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n private _listAtSubscriptionScope(\n deploymentName: string,\n options?: DeploymentOperationsListAtSubscriptionScopeOptionalParams\n ): Promise<DeploymentOperationsListAtSubscriptionScopeResponse> {\n return this.client.sendOperationRequest(\n { deploymentName, options },\n listAtSubscriptionScopeOperationSpec\n );\n }\n\n /**\n * Gets a deployments operation.\n * @param resourceGroupName The name of the resource group. The name is case insensitive.\n * @param deploymentName The name of the deployment.\n * @param operationId The ID of the operation to get.\n * @param options The options parameters.\n */\n get(\n resourceGroupName: string,\n deploymentName: string,\n operationId: string,\n options?: DeploymentOperationsGetOptionalParams\n ): Promise<DeploymentOperationsGetResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, deploymentName, operationId, options },\n getOperationSpec\n );\n }\n\n /**\n * Gets all deployments operations for a deployment.\n * @param resourceGroupName The name of the resource group. The name is case insensitive.\n * @param deploymentName The name of the deployment.\n * @param options The options parameters.\n */\n private _list(\n resourceGroupName: string,\n deploymentName: string,\n options?: DeploymentOperationsListOptionalParams\n ): Promise<DeploymentOperationsListResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, deploymentName, options },\n listOperationSpec\n );\n }\n\n /**\n * ListAtScopeNext\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param nextLink The nextLink from the previous successful call to the ListAtScope method.\n * @param options The options parameters.\n */\n private _listAtScopeNext(\n scope: string,\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtScopeNextOptionalParams\n ): Promise<DeploymentOperationsListAtScopeNextResponse> {\n return this.client.sendOperationRequest(\n { scope, deploymentName, nextLink, options },\n listAtScopeNextOperationSpec\n );\n }\n\n /**\n * ListAtTenantScopeNext\n * @param deploymentName The name of the deployment.\n * @param nextLink The nextLink from the previous successful call to the ListAtTenantScope method.\n * @param options The options parameters.\n */\n private _listAtTenantScopeNext(\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtTenantScopeNextOptionalParams\n ): Promise<DeploymentOperationsListAtTenantScopeNextResponse> {\n return this.client.sendOperationRequest(\n { deploymentName, nextLink, options },\n listAtTenantScopeNextOperationSpec\n );\n }\n\n /**\n * ListAtManagementGroupScopeNext\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param nextLink The nextLink from the previous successful call to the ListAtManagementGroupScope\n * method.\n * @param options The options parameters.\n */\n private _listAtManagementGroupScopeNext(\n groupId: string,\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtManagementGroupScopeNextOptionalParams\n ): Promise<DeploymentOperationsListAtManagementGroupScopeNextResponse> {\n return this.client.sendOperationRequest(\n { groupId, deploymentName, nextLink, options },\n listAtManagementGroupScopeNextOperationSpec\n );\n }\n\n /**\n * ListAtSubscriptionScopeNext\n * @param deploymentName The name of the deployment.\n * @param nextLink The nextLink from the previous successful call to the ListAtSubscriptionScope\n * method.\n * @param options The options parameters.\n */\n private _listAtSubscriptionScopeNext(\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtSubscriptionScopeNextOptionalParams\n ): Promise<DeploymentOperationsListAtSubscriptionScopeNextResponse> {\n return this.client.sendOperationRequest(\n { deploymentName, nextLink, options },\n listAtSubscriptionScopeNextOperationSpec\n );\n }\n\n /**\n * ListNext\n * @param resourceGroupName The name of the resource group. The name is case insensitive.\n * @param deploymentName The name of the deployment.\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n private _listNext(\n resourceGroupName: string,\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListNextOptionalParams\n ): Promise<DeploymentOperationsListNextResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, deploymentName, nextLink, options },\n listNextOperationSpec\n );\n }\n\n /**\n * ListAtScopeNextNext\n * @param scope The resource scope.\n * @param deploymentName The name of the deployment.\n * @param nextLink The nextLink from the previous successful call to the ListAtScopeNext method.\n * @param options The options parameters.\n */\n private _listAtScopeNextNext(\n scope: string,\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtScopeNextNextOptionalParams\n ): Promise<DeploymentOperationsListAtScopeNextNextResponse> {\n return this.client.sendOperationRequest(\n { scope, deploymentName, nextLink, options },\n listAtScopeNextNextOperationSpec\n );\n }\n\n /**\n * ListAtTenantScopeNextNext\n * @param deploymentName The name of the deployment.\n * @param nextLink The nextLink from the previous successful call to the ListAtTenantScopeNext method.\n * @param options The options parameters.\n */\n private _listAtTenantScopeNextNext(\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtTenantScopeNextNextOptionalParams\n ): Promise<DeploymentOperationsListAtTenantScopeNextNextResponse> {\n return this.client.sendOperationRequest(\n { deploymentName, nextLink, options },\n listAtTenantScopeNextNextOperationSpec\n );\n }\n\n /**\n * ListAtManagementGroupScopeNextNext\n * @param groupId The management group ID.\n * @param deploymentName The name of the deployment.\n * @param nextLink The nextLink from the previous successful call to the ListAtManagementGroupScopeNext\n * method.\n * @param options The options parameters.\n */\n private _listAtManagementGroupScopeNextNext(\n groupId: string,\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtManagementGroupScopeNextNextOptionalParams\n ): Promise<DeploymentOperationsListAtManagementGroupScopeNextNextResponse> {\n return this.client.sendOperationRequest(\n { groupId, deploymentName, nextLink, options },\n listAtManagementGroupScopeNextNextOperationSpec\n );\n }\n\n /**\n * ListAtSubscriptionScopeNextNext\n * @param deploymentName The name of the deployment.\n * @param nextLink The nextLink from the previous successful call to the ListAtSubscriptionScopeNext\n * method.\n * @param options The options parameters.\n */\n private _listAtSubscriptionScopeNextNext(\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListAtSubscriptionScopeNextNextOptionalParams\n ): Promise<DeploymentOperationsListAtSubscriptionScopeNextNextResponse> {\n return this.client.sendOperationRequest(\n { deploymentName, nextLink, options },\n listAtSubscriptionScopeNextNextOperationSpec\n );\n }\n\n /**\n * ListNextNext\n * @param resourceGroupName The name of the resource group. The name is case insensitive.\n * @param deploymentName The name of the deployment.\n * @param nextLink The nextLink from the previous successful call to the ListNext method.\n * @param options The options parameters.\n */\n private _listNextNext(\n resourceGroupName: string,\n deploymentName: string,\n nextLink: string,\n options?: DeploymentOperationsListNextNextOptionalParams\n ): Promise<DeploymentOperationsListNextNextResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, deploymentName, nextLink, options },\n listNextNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst getAtScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperation\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.scope,\n Parameters.deploymentName,\n Parameters.operationId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperationsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.scope,\n Parameters.deploymentName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getAtTenantScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperation\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.operationId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtTenantScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/providers/Microsoft.Resources/deployments/{deploymentName}/operations\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperationsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top],\n urlParameters: [Parameters.$host, Parameters.deploymentName],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getAtManagementGroupScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperation\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.groupId,\n Parameters.operationId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtManagementGroupScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperationsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.groupId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getAtSubscriptionScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperation\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId,\n Parameters.operationId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtSubscriptionScopeOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperationsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperation\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId,\n Parameters.resourceGroupName,\n Parameters.operationId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperationsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.deploymentName,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtScopeNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperationsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.scope,\n Parameters.deploymentName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtTenantScopeNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperationsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.deploymentName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtManagementGroupScopeNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperationsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.deploymentName,\n Parameters.groupId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtSubscriptionScopeNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperationsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.deploymentName,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperationsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.deploymentName,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtScopeNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperationsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.scope,\n Parameters.deploymentName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtTenantScopeNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperationsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.deploymentName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtManagementGroupScopeNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperationsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.deploymentName,\n Parameters.groupId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listAtSubscriptionScopeNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperationsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.deploymentName,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listNextNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeploymentOperationsListResult\n },\n default: {\n bodyMapper: Mappers.CloudError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.top],\n urlParameters: [\n Parameters.$host,\n Parameters.nextLink,\n Parameters.deploymentName,\n Parameters.subscriptionId,\n Parameters.resourceGroupName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport * as coreClient from \"@azure/core-client\";\nimport * as coreAuth from \"@azure/core-auth\";\nimport { ResourceManagementClientOptionalParams } from \"./models\";\n\nexport class ResourceManagementClientContext extends coreClient.ServiceClient {\n $host: string;\n apiVersion: string;\n subscriptionId: string;\n\n /**\n * Initializes a new instance of the ResourceManagementClientContext class.\n * @param credentials Subscription credentials which uniquely identify client subscription.\n * @param subscriptionId The Microsoft Azure subscription ID.\n * @param options The parameter options\n */\n constructor(\n credentials: coreAuth.TokenCredential,\n subscriptionId: string,\n options?: ResourceManagementClientOptionalParams\n ) {\n if (credentials === undefined) {\n throw new Error(\"'credentials' cannot be null\");\n }\n if (subscriptionId === undefined) {\n throw new Error(\"'subscriptionId' cannot be null\");\n }\n\n // Initializing default values for options\n if (!options) {\n options = {};\n }\n const defaults: ResourceManagementClientOptionalParams = {\n requestContentType: \"application/json; charset=utf-8\",\n credential: credentials\n };\n\n const packageDetails = `azsdk-js-arm-resources/30.0.0-beta.2`;\n const userAgentPrefix =\n options.userAgentOptions && options.userAgentOptions.userAgentPrefix\n ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}`\n : `${packageDetails}`;\n\n if (!options.credentialScopes) {\n options.credentialScopes = [\"https://management.azure.com/.default\"];\n }\n const optionsWithDefaults = {\n ...defaults,\n ...options,\n userAgentOptions: {\n userAgentPrefix\n },\n baseUri: options.endpoint || \"https://management.azure.com\"\n };\n super(optionsWithDefaults);\n // Parameter assignments\n this.subscriptionId = subscriptionId;\n\n // Assigning values to Constant parameters\n this.$host = options.$host || \"https://management.azure.com\";\n this.apiVersion = options.apiVersion || \"2021-04-01\";\n }\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport * as coreAuth from \"@azure/core-auth\";\nimport {\n OperationsImpl,\n DeploymentsImpl,\n ProvidersImpl,\n ProviderResourceTypesImpl,\n ResourcesImpl,\n ResourceGroupsImpl,\n TagsOperationsImpl,\n DeploymentOperationsImpl\n} from \"./operations\";\nimport {\n Operations,\n Deployments,\n Providers,\n ProviderResourceTypes,\n Resources,\n ResourceGroups,\n TagsOperations,\n DeploymentOperations\n} from \"./operationsInterfaces\";\nimport { ResourceManagementClientContext } from \"./resourceManagementClientContext\";\nimport { ResourceManagementClientOptionalParams } from \"./models\";\n\nexport class ResourceManagementClient extends ResourceManagementClientContext {\n /**\n * Initializes a new instance of the ResourceManagementClient class.\n * @param credentials Subscription credentials which uniquely identify client subscription.\n * @param subscriptionId The Microsoft Azure subscription ID.\n * @param options The parameter options\n */\n constructor(\n credentials: coreAuth.TokenCredential,\n subscriptionId: string,\n options?: ResourceManagementClientOptionalParams\n ) {\n super(credentials, subscriptionId, options);\n this.operations = new OperationsImpl(this);\n this.deployments = new DeploymentsImpl(this);\n this.providers = new ProvidersImpl(this);\n this.providerResourceTypes = new ProviderResourceTypesImpl(this);\n this.resources = new ResourcesImpl(this);\n this.resourceGroups = new ResourceGroupsImpl(this);\n this.tagsOperations = new TagsOperationsImpl(this);\n this.deploymentOperations = new DeploymentOperationsImpl(this);\n }\n\n operations: Operations;\n deployments: Deployments;\n providers: Providers;\n providerResourceTypes: ProviderResourceTypes;\n resources: Resources;\n resourceGroups: ResourceGroups;\n tagsOperations: TagsOperations;\n deploymentOperations: DeploymentOperations;\n}\n"],"names":["KnownExpressionEvaluationOptionsScopeType","KnownProvisioningState","KnownAliasPathTokenType","KnownAliasPathAttributes","KnownProviderAuthorizationConsentState","KnownExtendedLocationType","KnownTagsPatchOperation","DeploymentMapper","ScopedDeploymentMapper","ScopedDeploymentWhatIfMapper","DeploymentWhatIfMapper","ProviderRegistrationRequestMapper","ResourcesMoveInfoMapper","GenericResourceMapper","ResourceGroupMapper","ResourceGroupPatchableMapper","ExportTemplateRequestMapper","TagsResourceMapper","TagsPatchResourceMapper","__asyncValues","__asyncDelegator","coreClient.createSerializer","Mappers.OperationListResult","Mappers.CloudError","Parameters.apiVersion","Parameters.$host","Parameters.accept","Parameters.nextLink","Poller","serializer","Parameters.scope","Parameters.deploymentName","Mappers.DeploymentExtended","Parameters.parameters","Parameters.contentType","Mappers.DeploymentValidateResult","Mappers.DeploymentExportResult","Mappers.DeploymentListResult","Parameters.filter","Parameters.top","Parameters.parameters1","Mappers.WhatIfOperationResult","Parameters.parameters2","Parameters.groupId","Parameters.subscriptionId","Parameters.parameters3","Parameters.resourceGroupName","Mappers.TemplateHashResult","Parameters.template","listOperationSpec","listAtTenantScopeOperationSpec","getOperationSpec","getAtTenantScopeOperationSpec","listNextOperationSpec","listAtTenantScopeNextOperationSpec","listNextNextOperationSpec","listAtTenantScopeNextNextOperationSpec","Mappers.Provider","Parameters.resourceProviderNamespace","Mappers.ProviderPermissionListResult","Parameters.properties","Mappers.ProviderListResult","Parameters.expand","Mappers.ProviderResourceTypeListResult","listByResourceGroupOperationSpec","checkExistenceOperationSpec","deleteOperationSpec","createOrUpdateOperationSpec","listByResourceGroupNextOperationSpec","listByResourceGroupNextNextOperationSpec","Mappers.ResourceListResult","Parameters.parameters4","Parameters.sourceResourceGroupName","Parameters.apiVersion1","Parameters.parentResourcePath","Parameters.resourceType","Parameters.resourceName","Mappers.GenericResource","Parameters.parameters5","Parameters.resourceId","updateOperationSpec","exportTemplateOperationSpec","Mappers.ResourceGroup","Parameters.parameters6","Parameters.forceDeletionTypes","Parameters.parameters7","Mappers.ResourceGroupExportResult","Parameters.parameters8","Parameters.resourceGroupName1","Mappers.ResourceGroupListResult","createOrUpdateAtScopeOperationSpec","getAtScopeOperationSpec","deleteAtScopeOperationSpec","Parameters.tagName","Parameters.tagValue","Mappers.TagValue","Mappers.TagDetails","Mappers.TagsListResult","Mappers.TagsResource","Parameters.parameters9","Parameters.parameters10","listAtScopeOperationSpec","getAtManagementGroupScopeOperationSpec","listAtManagementGroupScopeOperationSpec","getAtSubscriptionScopeOperationSpec","listAtSubscriptionScopeOperationSpec","listAtScopeNextOperationSpec","listAtManagementGroupScopeNextOperationSpec","listAtSubscriptionScopeNextOperationSpec","listAtScopeNextNextOperationSpec","listAtManagementGroupScopeNextNextOperationSpec","listAtSubscriptionScopeNextNextOperationSpec","Mappers.DeploymentOperation","Parameters.operationId","Mappers.DeploymentOperationsListResult","coreClient.ServiceClient"],"mappings":"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"}
|