diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/LICENSE.txt b/sdk/desktopvirtualization/arm-desktopvirtualization/LICENSE.txt
new file mode 100644
index 000000000000..2d3163745319
--- /dev/null
+++ b/sdk/desktopvirtualization/arm-desktopvirtualization/LICENSE.txt
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) 2021 Microsoft
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/README.md b/sdk/desktopvirtualization/arm-desktopvirtualization/README.md
new file mode 100644
index 000000000000..12418dfd0f8c
--- /dev/null
+++ b/sdk/desktopvirtualization/arm-desktopvirtualization/README.md
@@ -0,0 +1,106 @@
+## Azure DesktopVirtualizationAPIClient SDK for JavaScript
+
+This package contains an isomorphic SDK (runs both in node.js and in browsers) for DesktopVirtualizationAPIClient.
+
+### Currently supported environments
+
+- [LTS versions of Node.js](https://nodejs.org/about/releases/)
+- Latest versions of Safari, Chrome, Edge and Firefox.
+
+### Prerequisites
+
+You must have an [Azure subscription](https://azure.microsoft.com/free/).
+
+### How to install
+
+To use this SDK in your project, you will need to install two packages.
+- `@azure/arm-desktopvirtualization` that contains the client.
+- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory.
+
+Install both packages using the below command:
+```bash
+npm install --save @azure/arm-desktopvirtualization @azure/identity
+```
+> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features.
+If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options.
+
+### How to use
+
+- If you are writing a client side browser application,
+ - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions.
+ - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below.
+- If you are writing a server side application,
+ - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples)
+ - Complete the set up steps required by the credential if any.
+ - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below.
+
+In the below samples, we pass the credential and the Azure subscription id to instantiate the client.
+Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started.
+#### nodejs - Authentication, client creation, and list operations as an example written in JavaScript.
+
+##### Sample code
+
+```javascript
+const { DefaultAzureCredential } = require("@azure/identity");
+const { DesktopVirtualizationAPIClient } = require("@azure/arm-desktopvirtualization");
+const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"];
+
+// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples
+// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead.
+const creds = new DefaultAzureCredential();
+const client = new DesktopVirtualizationAPIClient(creds, subscriptionId);
+client.operations.list().then((result) => {
+ console.log("The result is:");
+ console.log(result);
+}).catch((err) => {
+ console.log("An error occurred:");
+ console.error(err);
+});
+```
+
+#### browser - Authentication, client creation, and list operations as an example written in JavaScript.
+
+In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser.
+ - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser.
+ - Note down the client Id from the previous step and use it in the browser sample below.
+
+##### Sample code
+
+- index.html
+
+```html
+
+
+
+ @azure/arm-desktopvirtualization sample
+
+
+
+
+
+
+
+```
+
+## Related projects
+
+- [Microsoft Azure SDK for Javascript](https://github.com/Azure/azure-sdk-for-js)
+
+
diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/package.json b/sdk/desktopvirtualization/arm-desktopvirtualization/package.json
new file mode 100644
index 000000000000..235a14b4bc5e
--- /dev/null
+++ b/sdk/desktopvirtualization/arm-desktopvirtualization/package.json
@@ -0,0 +1,59 @@
+{
+ "name": "@azure/arm-desktopvirtualization",
+ "author": "Microsoft Corporation",
+ "description": "DesktopVirtualizationAPIClient Library with typescript type definitions for node.js and browser.",
+ "version": "1.0.0",
+ "dependencies": {
+ "@azure/ms-rest-azure-js": "^2.1.0",
+ "@azure/ms-rest-js": "^2.2.0",
+ "@azure/core-auth": "^1.1.4",
+ "tslib": "^1.10.0"
+ },
+ "keywords": [
+ "node",
+ "azure",
+ "typescript",
+ "browser",
+ "isomorphic"
+ ],
+ "license": "MIT",
+ "main": "./dist/arm-desktopvirtualization.js",
+ "module": "./esm/desktopVirtualizationAPIClient.js",
+ "types": "./esm/desktopVirtualizationAPIClient.d.ts",
+ "devDependencies": {
+ "typescript": "^3.6.0",
+ "rollup": "^1.18.0",
+ "rollup-plugin-node-resolve": "^5.2.0",
+ "rollup-plugin-sourcemaps": "^0.4.2",
+ "uglify-js": "^3.6.0"
+ },
+ "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/desktopvirtualization/arm-desktopvirtualization",
+ "repository": {
+ "type": "git",
+ "url": "https://github.com/Azure/azure-sdk-for-js.git"
+ },
+ "bugs": {
+ "url": "https://github.com/Azure/azure-sdk-for-js/issues"
+ },
+ "files": [
+ "dist/**/*.js",
+ "dist/**/*.js.map",
+ "dist/**/*.d.ts",
+ "dist/**/*.d.ts.map",
+ "esm/**/*.js",
+ "esm/**/*.js.map",
+ "esm/**/*.d.ts",
+ "esm/**/*.d.ts.map",
+ "src/**/*.ts",
+ "README.md",
+ "rollup.config.js",
+ "tsconfig.json"
+ ],
+ "scripts": {
+ "build": "tsc && rollup -c rollup.config.js && npm run minify",
+ "minify": "uglifyjs -c -m --comments --source-map \"content='./dist/arm-desktopvirtualization.js.map'\" -o ./dist/arm-desktopvirtualization.min.js ./dist/arm-desktopvirtualization.js",
+ "prepack": "npm install && npm run build"
+ },
+ "sideEffects": false,
+ "autoPublish": true
+}
diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/rollup.config.js b/sdk/desktopvirtualization/arm-desktopvirtualization/rollup.config.js
new file mode 100644
index 000000000000..0c6580e94c00
--- /dev/null
+++ b/sdk/desktopvirtualization/arm-desktopvirtualization/rollup.config.js
@@ -0,0 +1,37 @@
+import rollup from "rollup";
+import nodeResolve from "rollup-plugin-node-resolve";
+import sourcemaps from "rollup-plugin-sourcemaps";
+
+/**
+ * @type {rollup.RollupFileOptions}
+ */
+const config = {
+ input: "./esm/desktopVirtualizationAPIClient.js",
+ external: [
+ "@azure/ms-rest-js",
+ "@azure/ms-rest-azure-js"
+ ],
+ output: {
+ file: "./dist/arm-desktopvirtualization.js",
+ format: "umd",
+ name: "Azure.ArmDesktopvirtualization",
+ sourcemap: true,
+ globals: {
+ "@azure/ms-rest-js": "msRest",
+ "@azure/ms-rest-azure-js": "msRestAzure"
+ },
+ banner: `/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the MIT License.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is regenerated.
+ */`
+ },
+ plugins: [
+ nodeResolve({ mainFields: ['module', 'main'] }),
+ sourcemaps()
+ ]
+};
+
+export default config;
diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/desktopVirtualizationAPIClient.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/desktopVirtualizationAPIClient.ts
new file mode 100644
index 000000000000..d992c175a931
--- /dev/null
+++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/desktopVirtualizationAPIClient.ts
@@ -0,0 +1,73 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the MIT License.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is
+ * regenerated.
+ */
+
+import * as msRest from "@azure/ms-rest-js";
+import { TokenCredential } from "@azure/core-auth";
+import * as Models from "./models";
+import * as Mappers from "./models/mappers";
+import * as operations from "./operations";
+import { DesktopVirtualizationAPIClientContext } from "./desktopVirtualizationAPIClientContext";
+
+
+class DesktopVirtualizationAPIClient extends DesktopVirtualizationAPIClientContext {
+ // Operation groups
+ operations: operations.Operations;
+ workspaces: operations.Workspaces;
+ scalingPlans: operations.ScalingPlans;
+ applicationGroups: operations.ApplicationGroups;
+ startMenuItems: operations.StartMenuItems;
+ applications: operations.Applications;
+ desktops: operations.Desktops;
+ hostPools: operations.HostPools;
+ userSessions: operations.UserSessions;
+ sessionHosts: operations.SessionHosts;
+ mSIXPackages: operations.MSIXPackages;
+ msixImages: operations.MsixImages;
+ privateEndpointConnections: operations.PrivateEndpointConnections;
+ privateLinkResources: operations.PrivateLinkResources;
+
+ /**
+ * Initializes a new instance of the DesktopVirtualizationAPIClient class.
+ * @param credentials Credentials needed for the client to connect to Azure. Credentials
+ * implementing the TokenCredential interface from the @azure/identity package are recommended. For
+ * more information about these credentials, see
+ * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the
+ * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and
+ * @azure/ms-rest-browserauth are also supported.
+ * @param subscriptionId The ID of the target subscription.
+ * @param [options] The parameter options
+ */
+ constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.DesktopVirtualizationAPIClientOptions) {
+ super(credentials, subscriptionId, options);
+ this.operations = new operations.Operations(this);
+ this.workspaces = new operations.Workspaces(this);
+ this.scalingPlans = new operations.ScalingPlans(this);
+ this.applicationGroups = new operations.ApplicationGroups(this);
+ this.startMenuItems = new operations.StartMenuItems(this);
+ this.applications = new operations.Applications(this);
+ this.desktops = new operations.Desktops(this);
+ this.hostPools = new operations.HostPools(this);
+ this.userSessions = new operations.UserSessions(this);
+ this.sessionHosts = new operations.SessionHosts(this);
+ this.mSIXPackages = new operations.MSIXPackages(this);
+ this.msixImages = new operations.MsixImages(this);
+ this.privateEndpointConnections = new operations.PrivateEndpointConnections(this);
+ this.privateLinkResources = new operations.PrivateLinkResources(this);
+ }
+}
+
+// Operation Specifications
+
+export {
+ DesktopVirtualizationAPIClient,
+ DesktopVirtualizationAPIClientContext,
+ Models as DesktopVirtualizationAPIModels,
+ Mappers as DesktopVirtualizationAPIMappers
+};
+export * from "./operations";
diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/desktopVirtualizationAPIClientContext.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/desktopVirtualizationAPIClientContext.ts
new file mode 100644
index 000000000000..a525d7e67f86
--- /dev/null
+++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/desktopVirtualizationAPIClientContext.ts
@@ -0,0 +1,67 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the MIT License.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is
+ * regenerated.
+ */
+
+import * as Models from "./models";
+import * as msRest from "@azure/ms-rest-js";
+import * as msRestAzure from "@azure/ms-rest-azure-js";
+import { TokenCredential } from "@azure/core-auth";
+
+const packageName = "@azure/arm-desktopvirtualization";
+const packageVersion = "1.0.0";
+
+export class DesktopVirtualizationAPIClientContext extends msRestAzure.AzureServiceClient {
+ credentials: msRest.ServiceClientCredentials | TokenCredential;
+ subscriptionId: string;
+ apiVersion?: string;
+
+ /**
+ * Initializes a new instance of the DesktopVirtualizationAPIClient class.
+ * @param credentials Credentials needed for the client to connect to Azure. Credentials
+ * implementing the TokenCredential interface from the @azure/identity package are recommended. For
+ * more information about these credentials, see
+ * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the
+ * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and
+ * @azure/ms-rest-browserauth are also supported.
+ * @param subscriptionId The ID of the target subscription.
+ * @param [options] The parameter options
+ */
+ constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.DesktopVirtualizationAPIClientOptions) {
+ if (credentials == undefined) {
+ throw new Error('\'credentials\' cannot be null.');
+ }
+ if (subscriptionId == undefined) {
+ throw new Error('\'subscriptionId\' cannot be null.');
+ }
+
+ if (!options) {
+ options = {};
+ }
+ if (!options.userAgent) {
+ const defaultUserAgent = msRestAzure.getDefaultUserAgentValue();
+ options.userAgent = `${packageName}/${packageVersion} ${defaultUserAgent}`;
+ }
+
+ super(credentials, options);
+
+ this.apiVersion = '2021-09-03-preview';
+ this.acceptLanguage = 'en-US';
+ this.longRunningOperationRetryTimeout = 30;
+ this.baseUri = options.baseUri || this.baseUri || "https://management.azure.com";
+ this.requestContentType = "application/json; charset=utf-8";
+ this.credentials = credentials;
+ this.subscriptionId = subscriptionId;
+
+ if (options.acceptLanguage !== null && options.acceptLanguage !== undefined) {
+ this.acceptLanguage = options.acceptLanguage;
+ }
+ if (options.longRunningOperationRetryTimeout !== null && options.longRunningOperationRetryTimeout !== undefined) {
+ this.longRunningOperationRetryTimeout = options.longRunningOperationRetryTimeout;
+ }
+ }
+}
diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/applicationGroupsMappers.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/applicationGroupsMappers.ts
new file mode 100644
index 000000000000..5c41019d528c
--- /dev/null
+++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/applicationGroupsMappers.ts
@@ -0,0 +1,56 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the MIT License.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is regenerated.
+ */
+
+export {
+ Application,
+ ApplicationGroup,
+ ApplicationGroupList,
+ ApplicationGroupPatch,
+ AzureEntityResource,
+ BaseResource,
+ CloudError,
+ CloudErrorProperties,
+ Desktop,
+ ExpandMsixImage,
+ HostPool,
+ HostPoolPatch,
+ Identity,
+ MigrationRequestProperties,
+ MSIXPackage,
+ MsixPackageApplications,
+ MsixPackageDependencies,
+ MSIXPackagePatch,
+ Plan,
+ PrivateEndpoint,
+ PrivateEndpointConnection,
+ PrivateEndpointConnectionWithSystemData,
+ PrivateLinkResource,
+ PrivateLinkServiceConnectionState,
+ ProxyResource,
+ RegistrationInfo,
+ RegistrationInfoPatch,
+ Resource,
+ ResourceModelWithAllowedPropertySet,
+ ResourceModelWithAllowedPropertySetIdentity,
+ ResourceModelWithAllowedPropertySetPlan,
+ ResourceModelWithAllowedPropertySetSku,
+ ScalingHostPoolReference,
+ ScalingPlan,
+ ScalingSchedule,
+ SessionHost,
+ SessionHostHealthCheckFailureDetails,
+ SessionHostHealthCheckReport,
+ SessionHostPatch,
+ Sku,
+ StartMenuItem,
+ SystemData,
+ Time,
+ TrackedResource,
+ UserSession,
+ Workspace
+} from "../models/mappers";
diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/applicationsMappers.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/applicationsMappers.ts
new file mode 100644
index 000000000000..db1815a1a79b
--- /dev/null
+++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/applicationsMappers.ts
@@ -0,0 +1,57 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the MIT License.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is regenerated.
+ */
+
+export {
+ Application,
+ ApplicationGroup,
+ ApplicationGroupPatch,
+ ApplicationList,
+ ApplicationPatch,
+ AzureEntityResource,
+ BaseResource,
+ CloudError,
+ CloudErrorProperties,
+ Desktop,
+ ExpandMsixImage,
+ HostPool,
+ HostPoolPatch,
+ Identity,
+ MigrationRequestProperties,
+ MSIXPackage,
+ MsixPackageApplications,
+ MsixPackageDependencies,
+ MSIXPackagePatch,
+ Plan,
+ PrivateEndpoint,
+ PrivateEndpointConnection,
+ PrivateEndpointConnectionWithSystemData,
+ PrivateLinkResource,
+ PrivateLinkServiceConnectionState,
+ ProxyResource,
+ RegistrationInfo,
+ RegistrationInfoPatch,
+ Resource,
+ ResourceModelWithAllowedPropertySet,
+ ResourceModelWithAllowedPropertySetIdentity,
+ ResourceModelWithAllowedPropertySetPlan,
+ ResourceModelWithAllowedPropertySetSku,
+ ScalingHostPoolReference,
+ ScalingPlan,
+ ScalingSchedule,
+ SessionHost,
+ SessionHostHealthCheckFailureDetails,
+ SessionHostHealthCheckReport,
+ SessionHostPatch,
+ Sku,
+ StartMenuItem,
+ SystemData,
+ Time,
+ TrackedResource,
+ UserSession,
+ Workspace
+} from "../models/mappers";
diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/desktopsMappers.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/desktopsMappers.ts
new file mode 100644
index 000000000000..c0fcef12de3d
--- /dev/null
+++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/desktopsMappers.ts
@@ -0,0 +1,57 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the MIT License.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is regenerated.
+ */
+
+export {
+ Application,
+ ApplicationGroup,
+ ApplicationGroupPatch,
+ AzureEntityResource,
+ BaseResource,
+ CloudError,
+ CloudErrorProperties,
+ Desktop,
+ DesktopList,
+ DesktopPatch,
+ ExpandMsixImage,
+ HostPool,
+ HostPoolPatch,
+ Identity,
+ MigrationRequestProperties,
+ MSIXPackage,
+ MsixPackageApplications,
+ MsixPackageDependencies,
+ MSIXPackagePatch,
+ Plan,
+ PrivateEndpoint,
+ PrivateEndpointConnection,
+ PrivateEndpointConnectionWithSystemData,
+ PrivateLinkResource,
+ PrivateLinkServiceConnectionState,
+ ProxyResource,
+ RegistrationInfo,
+ RegistrationInfoPatch,
+ Resource,
+ ResourceModelWithAllowedPropertySet,
+ ResourceModelWithAllowedPropertySetIdentity,
+ ResourceModelWithAllowedPropertySetPlan,
+ ResourceModelWithAllowedPropertySetSku,
+ ScalingHostPoolReference,
+ ScalingPlan,
+ ScalingSchedule,
+ SessionHost,
+ SessionHostHealthCheckFailureDetails,
+ SessionHostHealthCheckReport,
+ SessionHostPatch,
+ Sku,
+ StartMenuItem,
+ SystemData,
+ Time,
+ TrackedResource,
+ UserSession,
+ Workspace
+} from "../models/mappers";
diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/hostPoolsMappers.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/hostPoolsMappers.ts
new file mode 100644
index 000000000000..95f9fa9d0262
--- /dev/null
+++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/hostPoolsMappers.ts
@@ -0,0 +1,56 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the MIT License.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is regenerated.
+ */
+
+export {
+ Application,
+ ApplicationGroup,
+ ApplicationGroupPatch,
+ AzureEntityResource,
+ BaseResource,
+ CloudError,
+ CloudErrorProperties,
+ Desktop,
+ ExpandMsixImage,
+ HostPool,
+ HostPoolList,
+ HostPoolPatch,
+ Identity,
+ MigrationRequestProperties,
+ MSIXPackage,
+ MsixPackageApplications,
+ MsixPackageDependencies,
+ MSIXPackagePatch,
+ Plan,
+ PrivateEndpoint,
+ PrivateEndpointConnection,
+ PrivateEndpointConnectionWithSystemData,
+ PrivateLinkResource,
+ PrivateLinkServiceConnectionState,
+ ProxyResource,
+ RegistrationInfo,
+ RegistrationInfoPatch,
+ Resource,
+ ResourceModelWithAllowedPropertySet,
+ ResourceModelWithAllowedPropertySetIdentity,
+ ResourceModelWithAllowedPropertySetPlan,
+ ResourceModelWithAllowedPropertySetSku,
+ ScalingHostPoolReference,
+ ScalingPlan,
+ ScalingSchedule,
+ SessionHost,
+ SessionHostHealthCheckFailureDetails,
+ SessionHostHealthCheckReport,
+ SessionHostPatch,
+ Sku,
+ StartMenuItem,
+ SystemData,
+ Time,
+ TrackedResource,
+ UserSession,
+ Workspace
+} from "../models/mappers";
diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/index.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/index.ts
new file mode 100644
index 000000000000..2663069b8db6
--- /dev/null
+++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/index.ts
@@ -0,0 +1,3613 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the MIT License.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is regenerated.
+ */
+
+import { BaseResource, CloudError, AzureServiceClientOptions } from "@azure/ms-rest-azure-js";
+import * as msRest from "@azure/ms-rest-js";
+
+export { BaseResource, CloudError };
+
+/**
+ * Cloud error object properties.
+ */
+export interface CloudErrorProperties {
+ /**
+ * Error code
+ */
+ code?: string;
+ /**
+ * Error message indicating why the operation failed.
+ */
+ message?: string;
+}
+
+/**
+ * Display metadata associated with the operation.
+ */
+export interface ResourceProviderOperationDisplay {
+ /**
+ * Resource provider: Microsoft Desktop Virtualization.
+ */
+ provider?: string;
+ /**
+ * Resource on which the operation is performed.
+ */
+ resource?: string;
+ /**
+ * Type of operation: get, read, delete, etc.
+ */
+ operation?: string;
+ /**
+ * Description of this operation.
+ */
+ description?: string;
+}
+
+/**
+ * Specifications of the Log for Azure Monitoring
+ */
+export interface LogSpecification {
+ /**
+ * Name of the log
+ */
+ name?: string;
+ /**
+ * Localized friendly display name of the log
+ */
+ displayName?: string;
+ /**
+ * Blob duration of the log
+ */
+ blobDuration?: string;
+}
+
+/**
+ * Service specification payload
+ */
+export interface ServiceSpecification {
+ /**
+ * Specifications of the Log for Azure Monitoring
+ */
+ logSpecifications?: LogSpecification[];
+}
+
+/**
+ * Properties of the operation
+ */
+export interface OperationProperties {
+ serviceSpecification?: ServiceSpecification;
+}
+
+/**
+ * Supported operation of this resource provider.
+ */
+export interface ResourceProviderOperation {
+ /**
+ * Operation name, in format of {provider}/{resource}/{operation}
+ */
+ name?: string;
+ /**
+ * Display metadata associated with the operation.
+ */
+ display?: ResourceProviderOperationDisplay;
+ /**
+ * Is a data action.
+ */
+ isDataAction?: boolean;
+ properties?: OperationProperties;
+}
+
+/**
+ * Metadata pertaining to creation and last modification of the resource.
+ */
+export interface SystemData {
+ /**
+ * The identity that created the resource.
+ */
+ createdBy?: string;
+ /**
+ * The type of identity that created the resource. Possible values include: 'User',
+ * 'Application', 'ManagedIdentity', 'Key'
+ */
+ createdByType?: CreatedByType;
+ /**
+ * The timestamp of resource creation (UTC).
+ */
+ createdAt?: Date;
+ /**
+ * The identity that last modified the resource.
+ */
+ lastModifiedBy?: string;
+ /**
+ * The type of identity that last modified the resource. Possible values include: 'User',
+ * 'Application', 'ManagedIdentity', 'Key'
+ */
+ lastModifiedByType?: CreatedByType;
+ /**
+ * The timestamp of resource last modification (UTC)
+ */
+ lastModifiedAt?: Date;
+}
+
+/**
+ * The resource model definition containing the full set of allowed properties for a resource.
+ * Except properties bag, there cannot be a top level property outside of this set.
+ */
+export interface ResourceModelWithAllowedPropertySet extends BaseResource {
+ /**
+ * Fully qualified resource ID for the resource. Ex -
+ * /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly id?: string;
+ /**
+ * The name of the resource
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly name?: string;
+ /**
+ * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or
+ * "Microsoft.Storage/storageAccounts"
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly type?: string;
+ /**
+ * The geo-location where the resource lives
+ */
+ location?: string;
+ /**
+ * The fully qualified resource ID of the resource that manages this resource. Indicates if this
+ * resource is managed by another Azure resource. If this is present, complete mode deployment
+ * will not delete the resource if it is removed from the template since it is managed by another
+ * resource.
+ */
+ managedBy?: string;
+ /**
+ * Metadata used by portal/tooling/etc to render different UX experiences for resources of the
+ * same type; e.g. ApiApps are a kind of Microsoft.Web/sites type. If supported, the resource
+ * provider must validate and persist this value.
+ */
+ kind?: string;
+ /**
+ * The etag field is *not* required. If it is provided in the response body, it must also be
+ * provided as a header per the normal etag convention. Entity tags are used for comparing two
+ * or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag
+ * (section 14.19), If-Match (section 14.24), If-None-Match (section 14.26), and If-Range
+ * (section 14.27) header fields.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly etag?: string;
+ /**
+ * Resource tags.
+ */
+ tags?: { [propertyName: string]: string };
+ identity?: ResourceModelWithAllowedPropertySetIdentity;
+ sku?: ResourceModelWithAllowedPropertySetSku;
+ plan?: ResourceModelWithAllowedPropertySetPlan;
+}
+
+/**
+ * Represents a Workspace definition.
+ */
+export interface Workspace extends ResourceModelWithAllowedPropertySet {
+ /**
+ * Metadata pertaining to creation and last modification of the resource.
+ */
+ systemData?: SystemData;
+ /**
+ * ObjectId of Workspace. (internal use)
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly objectId?: string;
+ /**
+ * Description of Workspace.
+ */
+ description?: string;
+ /**
+ * Friendly name of Workspace.
+ */
+ friendlyName?: string;
+ /**
+ * List of applicationGroup resource Ids.
+ */
+ applicationGroupReferences?: string[];
+ /**
+ * Is cloud pc resource.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly cloudPcResource?: boolean;
+ /**
+ * Enabled allows this resource to be accessed from both public and private networks, Disabled
+ * allows this resource to only be accessed via private endpoints. Possible values include:
+ * 'Enabled', 'Disabled'
+ */
+ publicNetworkAccess?: PublicNetworkAccess;
+}
+
+/**
+ * Workspace properties that can be patched.
+ */
+export interface WorkspacePatch {
+ /**
+ * tags to be updated
+ */
+ tags?: { [propertyName: string]: string };
+ /**
+ * Description of Workspace.
+ */
+ description?: string;
+ /**
+ * Friendly name of Workspace.
+ */
+ friendlyName?: string;
+ /**
+ * List of applicationGroup links.
+ */
+ applicationGroupReferences?: string[];
+ /**
+ * Enabled to allow this resource to be access from the public network. Possible values include:
+ * 'Enabled', 'Disabled'
+ */
+ publicNetworkAccess?: PublicNetworkAccess;
+}
+
+/**
+ * Properties for arm migration.
+ */
+export interface MigrationRequestProperties {
+ /**
+ * The type of operation for migration. Possible values include: 'Start', 'Revoke', 'Complete',
+ * 'Hide', 'Unhide'
+ */
+ operation?: Operation;
+ /**
+ * The path to the legacy object to migrate.
+ */
+ migrationPath?: string;
+}
+
+/**
+ * Represents a ApplicationGroup definition.
+ */
+export interface ApplicationGroup extends ResourceModelWithAllowedPropertySet {
+ /**
+ * Metadata pertaining to creation and last modification of the resource.
+ */
+ systemData?: SystemData;
+ /**
+ * ObjectId of ApplicationGroup. (internal use)
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly objectId?: string;
+ /**
+ * Description of ApplicationGroup.
+ */
+ description?: string;
+ /**
+ * Friendly name of ApplicationGroup.
+ */
+ friendlyName?: string;
+ /**
+ * HostPool arm path of ApplicationGroup.
+ */
+ hostPoolArmPath: string;
+ /**
+ * Workspace arm path of ApplicationGroup.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly workspaceArmPath?: string;
+ /**
+ * Resource Type of ApplicationGroup. Possible values include: 'RemoteApp', 'Desktop'
+ */
+ applicationGroupType: ApplicationGroupType;
+ /**
+ * The registration info of HostPool.
+ */
+ migrationRequest?: MigrationRequestProperties;
+ /**
+ * Is cloud pc resource.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly cloudPcResource?: boolean;
+}
+
+/**
+ * Common fields that are returned in the response for all Azure Resource Manager resources
+ * @summary Resource
+ */
+export interface Resource extends BaseResource {
+ /**
+ * Fully qualified resource ID for the resource. Ex -
+ * /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly id?: string;
+ /**
+ * The name of the resource
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly name?: string;
+ /**
+ * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or
+ * "Microsoft.Storage/storageAccounts"
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly type?: string;
+}
+
+/**
+ * ApplicationGroup properties that can be patched.
+ */
+export interface ApplicationGroupPatch extends Resource {
+ /**
+ * tags to be updated
+ */
+ tags?: { [propertyName: string]: string };
+ /**
+ * Description of ApplicationGroup.
+ */
+ description?: string;
+ /**
+ * Friendly name of ApplicationGroup.
+ */
+ friendlyName?: string;
+}
+
+/**
+ * Represents a RegistrationInfo definition.
+ */
+export interface RegistrationInfo {
+ /**
+ * Expiration time of registration token.
+ */
+ expirationTime?: Date;
+ /**
+ * The registration token base64 encoded string.
+ */
+ token?: string;
+ /**
+ * The type of resetting the token. Possible values include: 'Delete', 'None', 'Update'
+ */
+ registrationTokenOperation?: RegistrationTokenOperation;
+}
+
+/**
+ * Represents a HostPool definition.
+ */
+export interface HostPool extends ResourceModelWithAllowedPropertySet {
+ /**
+ * Metadata pertaining to creation and last modification of the resource.
+ */
+ systemData?: SystemData;
+ /**
+ * ObjectId of HostPool. (internal use)
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly objectId?: string;
+ /**
+ * Friendly name of HostPool.
+ */
+ friendlyName?: string;
+ /**
+ * Description of HostPool.
+ */
+ description?: string;
+ /**
+ * HostPool type for desktop. Possible values include: 'Personal', 'Pooled', 'BYODesktop'
+ */
+ hostPoolType: HostPoolType;
+ /**
+ * PersonalDesktopAssignment type for HostPool. Possible values include: 'Automatic', 'Direct'
+ */
+ personalDesktopAssignmentType?: PersonalDesktopAssignmentType;
+ /**
+ * Custom rdp property of HostPool.
+ */
+ customRdpProperty?: string;
+ /**
+ * The max session limit of HostPool.
+ */
+ maxSessionLimit?: number;
+ /**
+ * The type of the load balancer. Possible values include: 'BreadthFirst', 'DepthFirst',
+ * 'Persistent'
+ */
+ loadBalancerType: LoadBalancerType;
+ /**
+ * The ring number of HostPool.
+ */
+ ring?: number;
+ /**
+ * Is validation environment.
+ */
+ validationEnvironment?: boolean;
+ /**
+ * The registration info of HostPool.
+ */
+ registrationInfo?: RegistrationInfo;
+ /**
+ * VM template for sessionhosts configuration within hostpool.
+ */
+ vmTemplate?: string;
+ /**
+ * List of applicationGroup links.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly applicationGroupReferences?: string[];
+ /**
+ * URL to customer ADFS server for signing WVD SSO certificates.
+ */
+ ssoadfsAuthority?: string;
+ /**
+ * ClientId for the registered Relying Party used to issue WVD SSO certificates.
+ */
+ ssoClientId?: string;
+ /**
+ * Path to Azure KeyVault storing the secret used for communication to ADFS.
+ */
+ ssoClientSecretKeyVaultPath?: string;
+ /**
+ * The type of single sign on Secret Type. Possible values include: 'SharedKey', 'Certificate',
+ * 'SharedKeyInKeyVault', 'CertificateInKeyVault'
+ */
+ ssoSecretType?: SSOSecretType;
+ /**
+ * The type of preferred application group type, default to Desktop Application Group. Possible
+ * values include: 'None', 'Desktop', 'RailApplications'
+ */
+ preferredAppGroupType: PreferredAppGroupType;
+ /**
+ * The flag to turn on/off StartVMOnConnect feature.
+ */
+ startVMOnConnect?: boolean;
+ /**
+ * The registration info of HostPool.
+ */
+ migrationRequest?: MigrationRequestProperties;
+ /**
+ * Is cloud pc resource.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly cloudPcResource?: boolean;
+ /**
+ * Enabled allows this resource to be accessed from both public and private networks, Disabled
+ * allows this resource to only be accessed via private endpoints. Possible values include:
+ * 'Enabled', 'Disabled'
+ */
+ publicNetworkAccess?: PublicNetworkAccess;
+}
+
+/**
+ * Represents a RegistrationInfo definition.
+ */
+export interface RegistrationInfoPatch {
+ /**
+ * Expiration time of registration token.
+ */
+ expirationTime?: Date;
+ /**
+ * The type of resetting the token. Possible values include: 'Delete', 'None', 'Update'
+ */
+ registrationTokenOperation?: RegistrationTokenOperation;
+}
+
+/**
+ * HostPool properties that can be patched.
+ */
+export interface HostPoolPatch extends Resource {
+ /**
+ * tags to be updated
+ */
+ tags?: { [propertyName: string]: string };
+ /**
+ * Friendly name of HostPool.
+ */
+ friendlyName?: string;
+ /**
+ * Description of HostPool.
+ */
+ description?: string;
+ /**
+ * Custom rdp property of HostPool.
+ */
+ customRdpProperty?: string;
+ /**
+ * The max session limit of HostPool.
+ */
+ maxSessionLimit?: number;
+ /**
+ * PersonalDesktopAssignment type for HostPool. Possible values include: 'Automatic', 'Direct'
+ */
+ personalDesktopAssignmentType?: PersonalDesktopAssignmentType;
+ /**
+ * The type of the load balancer. Possible values include: 'BreadthFirst', 'DepthFirst',
+ * 'Persistent'
+ */
+ loadBalancerType?: LoadBalancerType;
+ /**
+ * The ring number of HostPool.
+ */
+ ring?: number;
+ /**
+ * Is validation environment.
+ */
+ validationEnvironment?: boolean;
+ /**
+ * The registration info of HostPool.
+ */
+ registrationInfo?: RegistrationInfoPatch;
+ /**
+ * VM template for sessionhosts configuration within hostpool.
+ */
+ vmTemplate?: string;
+ /**
+ * URL to customer ADFS server for signing WVD SSO certificates.
+ */
+ ssoadfsAuthority?: string;
+ /**
+ * ClientId for the registered Relying Party used to issue WVD SSO certificates.
+ */
+ ssoClientId?: string;
+ /**
+ * Path to Azure KeyVault storing the secret used for communication to ADFS.
+ */
+ ssoClientSecretKeyVaultPath?: string;
+ /**
+ * The type of single sign on Secret Type. Possible values include: 'SharedKey', 'Certificate',
+ * 'SharedKeyInKeyVault', 'CertificateInKeyVault'
+ */
+ ssoSecretType?: SSOSecretType;
+ /**
+ * The type of preferred application group type, default to Desktop Application Group. Possible
+ * values include: 'None', 'Desktop', 'RailApplications'
+ */
+ preferredAppGroupType?: PreferredAppGroupType;
+ /**
+ * The flag to turn on/off StartVMOnConnect feature.
+ */
+ startVMOnConnect?: boolean;
+ /**
+ * Enabled to allow this resource to be access from the public network. Possible values include:
+ * 'Enabled', 'Disabled'
+ */
+ publicNetworkAccess?: PublicNetworkAccess;
+}
+
+/**
+ * Represents message sent to a UserSession.
+ */
+export interface SendMessage {
+ /**
+ * Title of message.
+ */
+ messageTitle?: string;
+ /**
+ * Body of message.
+ */
+ messageBody?: string;
+}
+
+/**
+ * Schema for MSIX Package Dependencies properties.
+ */
+export interface MsixPackageDependencies {
+ /**
+ * Name of package dependency.
+ */
+ dependencyName?: string;
+ /**
+ * Name of dependency publisher.
+ */
+ publisher?: string;
+ /**
+ * Dependency version required.
+ */
+ minVersion?: string;
+}
+
+/**
+ * Schema for MSIX Package Application properties.
+ */
+export interface MsixPackageApplications {
+ /**
+ * Package Application Id, found in appxmanifest.xml.
+ */
+ appId?: string;
+ /**
+ * Description of Package Application.
+ */
+ description?: string;
+ /**
+ * Used to activate Package Application. Consists of Package Name and ApplicationID. Found in
+ * appxmanifest.xml.
+ */
+ appUserModelID?: string;
+ /**
+ * User friendly name.
+ */
+ friendlyName?: string;
+ /**
+ * User friendly name.
+ */
+ iconImageName?: string;
+ /**
+ * the icon a 64 bit string as a byte array.
+ */
+ rawIcon?: Uint8Array;
+ /**
+ * the icon a 64 bit string as a byte array.
+ */
+ rawPng?: Uint8Array;
+}
+
+/**
+ * Schema for MSIX Package properties.
+ */
+export interface MSIXPackage extends Resource {
+ /**
+ * Metadata pertaining to creation and last modification of the resource.
+ */
+ systemData?: SystemData;
+ /**
+ * VHD/CIM image path on Network Share.
+ */
+ imagePath?: string;
+ /**
+ * Package Name from appxmanifest.xml.
+ */
+ packageName?: string;
+ /**
+ * Package Family Name from appxmanifest.xml. Contains Package Name and Publisher name.
+ */
+ packageFamilyName?: string;
+ /**
+ * User friendly Name to be displayed in the portal.
+ */
+ displayName?: string;
+ /**
+ * Relative Path to the package inside the image.
+ */
+ packageRelativePath?: string;
+ /**
+ * Specifies how to register Package in feed.
+ */
+ isRegularRegistration?: boolean;
+ /**
+ * Make this version of the package the active one across the hostpool.
+ */
+ isActive?: boolean;
+ /**
+ * List of package dependencies.
+ */
+ packageDependencies?: MsixPackageDependencies[];
+ /**
+ * Package Version found in the appxmanifest.xml.
+ */
+ version?: string;
+ /**
+ * Date Package was last updated, found in the appxmanifest.xml.
+ */
+ lastUpdated?: Date;
+ /**
+ * List of package applications.
+ */
+ packageApplications?: MsixPackageApplications[];
+}
+
+/**
+ * MSIX Package properties that can be patched.
+ */
+export interface MSIXPackagePatch extends Resource {
+ /**
+ * Set a version of the package to be active across hostpool.
+ */
+ isActive?: boolean;
+ /**
+ * Set Registration mode. Regular or Delayed.
+ */
+ isRegularRegistration?: boolean;
+ /**
+ * Display name for MSIX Package.
+ */
+ displayName?: string;
+}
+
+/**
+ * Schema for Application properties.
+ */
+export interface Application extends Resource {
+ /**
+ * Metadata pertaining to creation and last modification of the resource.
+ */
+ systemData?: SystemData;
+ /**
+ * ObjectId of Application. (internal use)
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly objectId?: string;
+ /**
+ * Description of Application.
+ */
+ description?: string;
+ /**
+ * Friendly name of Application.
+ */
+ friendlyName?: string;
+ /**
+ * Specifies a path for the executable file for the application.
+ */
+ filePath?: string;
+ /**
+ * Specifies the package family name for MSIX applications
+ */
+ msixPackageFamilyName?: string;
+ /**
+ * Specifies the package application Id for MSIX applications
+ */
+ msixPackageApplicationId?: string;
+ /**
+ * Resource Type of Application. Possible values include: 'InBuilt', 'MsixApplication'
+ */
+ applicationType?: RemoteApplicationType;
+ /**
+ * Specifies whether this published application can be launched with command line arguments
+ * provided by the client, command line arguments specified at publish time, or no command line
+ * arguments at all. Possible values include: 'DoNotAllow', 'Allow', 'Require'
+ */
+ commandLineSetting: CommandLineSetting;
+ /**
+ * Command Line Arguments for Application.
+ */
+ commandLineArguments?: string;
+ /**
+ * Specifies whether to show the RemoteApp program in the RD Web Access server.
+ */
+ showInPortal?: boolean;
+ /**
+ * Path to icon.
+ */
+ iconPath?: string;
+ /**
+ * Index of the icon.
+ */
+ iconIndex?: number;
+ /**
+ * Hash of the icon.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly iconHash?: string;
+ /**
+ * the icon a 64 bit string as a byte array.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly iconContent?: Uint8Array;
+}
+
+/**
+ * Application properties that can be patched.
+ */
+export interface ApplicationPatch {
+ /**
+ * tags to be updated
+ */
+ tags?: { [propertyName: string]: string };
+ /**
+ * Description of Application.
+ */
+ description?: string;
+ /**
+ * Friendly name of Application.
+ */
+ friendlyName?: string;
+ /**
+ * Specifies a path for the executable file for the application.
+ */
+ filePath?: string;
+ /**
+ * Specifies whether this published application can be launched with command line arguments
+ * provided by the client, command line arguments specified at publish time, or no command line
+ * arguments at all. Possible values include: 'DoNotAllow', 'Allow', 'Require'
+ */
+ commandLineSetting?: CommandLineSetting;
+ /**
+ * Command Line Arguments for Application.
+ */
+ commandLineArguments?: string;
+ /**
+ * Specifies whether to show the RemoteApp program in the RD Web Access server.
+ */
+ showInPortal?: boolean;
+ /**
+ * Path to icon.
+ */
+ iconPath?: string;
+ /**
+ * Index of the icon.
+ */
+ iconIndex?: number;
+ /**
+ * Specifies the package family name for MSIX applications
+ */
+ msixPackageFamilyName?: string;
+ /**
+ * Specifies the package application Id for MSIX applications
+ */
+ msixPackageApplicationId?: string;
+ /**
+ * Resource Type of Application. Possible values include: 'InBuilt', 'MsixApplication'
+ */
+ applicationType?: RemoteApplicationType;
+}
+
+/**
+ * Schema for Desktop properties.
+ */
+export interface Desktop extends Resource {
+ /**
+ * Metadata pertaining to creation and last modification of the resource.
+ */
+ systemData?: SystemData;
+ /**
+ * ObjectId of Desktop. (internal use)
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly objectId?: string;
+ /**
+ * Description of Desktop.
+ */
+ description?: string;
+ /**
+ * Friendly name of Desktop.
+ */
+ friendlyName?: string;
+ /**
+ * Hash of the icon.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly iconHash?: string;
+ /**
+ * The icon a 64 bit string as a byte array.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly iconContent?: Uint8Array;
+}
+
+/**
+ * Desktop properties that can be patched.
+ */
+export interface DesktopPatch {
+ /**
+ * tags to be updated
+ */
+ tags?: { [propertyName: string]: string };
+ /**
+ * Description of Desktop.
+ */
+ description?: string;
+ /**
+ * Friendly name of Desktop.
+ */
+ friendlyName?: string;
+}
+
+/**
+ * Represents a StartMenuItem definition.
+ */
+export interface StartMenuItem extends Resource {
+ /**
+ * Alias of StartMenuItem.
+ */
+ appAlias?: string;
+ /**
+ * Path to the file of StartMenuItem.
+ */
+ filePath?: string;
+ /**
+ * Command line arguments for StartMenuItem.
+ */
+ commandLineArguments?: string;
+ /**
+ * Path to the icon.
+ */
+ iconPath?: string;
+ /**
+ * Index of the icon.
+ */
+ iconIndex?: number;
+}
+
+/**
+ * Represents the definition of contents retrieved after expanding the MSIX Image.
+ */
+export interface ExpandMsixImage extends Resource {
+ /**
+ * Alias of MSIX Package.
+ */
+ packageAlias?: string;
+ /**
+ * VHD/CIM image path on Network Share.
+ */
+ imagePath?: string;
+ /**
+ * Package Name from appxmanifest.xml.
+ */
+ packageName?: string;
+ /**
+ * Package Family Name from appxmanifest.xml. Contains Package Name and Publisher name.
+ */
+ packageFamilyName?: string;
+ /**
+ * Package Full Name from appxmanifest.xml.
+ */
+ packageFullName?: string;
+ /**
+ * User friendly Name to be displayed in the portal.
+ */
+ displayName?: string;
+ /**
+ * Relative Path to the package inside the image.
+ */
+ packageRelativePath?: string;
+ /**
+ * Specifies how to register Package in feed.
+ */
+ isRegularRegistration?: boolean;
+ /**
+ * Make this version of the package the active one across the hostpool.
+ */
+ isActive?: boolean;
+ /**
+ * List of package dependencies.
+ */
+ packageDependencies?: MsixPackageDependencies[];
+ /**
+ * Package Version found in the appxmanifest.xml.
+ */
+ version?: string;
+ /**
+ * Date Package was last updated, found in the appxmanifest.xml.
+ */
+ lastUpdated?: Date;
+ /**
+ * List of package applications.
+ */
+ packageApplications?: MsixPackageApplications[];
+}
+
+/**
+ * Represents URI referring to MSIX Image
+ */
+export interface MSIXImageURI {
+ /**
+ * URI to Image
+ */
+ uri?: string;
+}
+
+/**
+ * Contains details on the failure.
+ */
+export interface SessionHostHealthCheckFailureDetails {
+ /**
+ * Failure message: hints on what is wrong and how to recover.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly message?: string;
+ /**
+ * Error code corresponding for the failure.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly errorCode?: number;
+ /**
+ * The timestamp of the last update.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly lastHealthCheckDateTime?: Date;
+}
+
+/**
+ * The report for session host information.
+ */
+export interface SessionHostHealthCheckReport {
+ /**
+ * Represents the name of the health check operation performed. Possible values include:
+ * 'DomainJoinedCheck', 'DomainTrustCheck', 'FSLogixHealthCheck', 'SxSStackListenerCheck',
+ * 'UrlsAccessibleCheck', 'MonitoringAgentCheck', 'DomainReachable', 'WebRTCRedirectorCheck',
+ * 'SupportedEncryptionCheck', 'MetaDataServiceCheck', 'AppAttachHealthCheck'
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly healthCheckName?: HealthCheckName;
+ /**
+ * Represents the Health state of the health check we performed. Possible values include:
+ * 'Unknown', 'HealthCheckSucceeded', 'HealthCheckFailed', 'SessionHostShutdown'
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly healthCheckResult?: HealthCheckResult;
+ /**
+ * Additional detailed information on the failure.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly additionalFailureDetails?: SessionHostHealthCheckFailureDetails;
+}
+
+/**
+ * Represents a SessionHost definition.
+ */
+export interface SessionHost extends Resource {
+ /**
+ * Metadata pertaining to creation and last modification of the resource.
+ */
+ systemData?: SystemData;
+ /**
+ * ObjectId of SessionHost. (internal use)
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly objectId?: string;
+ /**
+ * Last heart beat from SessionHost.
+ */
+ lastHeartBeat?: Date;
+ /**
+ * Number of sessions on SessionHost.
+ */
+ sessions?: number;
+ /**
+ * Version of agent on SessionHost.
+ */
+ agentVersion?: string;
+ /**
+ * Allow a new session.
+ */
+ allowNewSession?: boolean;
+ /**
+ * Virtual Machine Id of SessionHost's underlying virtual machine.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly virtualMachineId?: string;
+ /**
+ * Resource Id of SessionHost's underlying virtual machine.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly resourceId?: string;
+ /**
+ * User assigned to SessionHost.
+ */
+ assignedUser?: string;
+ /**
+ * Status for a SessionHost. Possible values include: 'Available', 'Unavailable', 'Shutdown',
+ * 'Disconnected', 'Upgrading', 'UpgradeFailed', 'NoHeartbeat', 'NotJoinedToDomain',
+ * 'DomainTrustRelationshipLost', 'SxSStackListenerNotReady', 'FSLogixNotHealthy',
+ * 'NeedsAssistance'
+ */
+ status?: Status;
+ /**
+ * The timestamp of the status.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly statusTimestamp?: Date;
+ /**
+ * The version of the OS on the session host.
+ */
+ osVersion?: string;
+ /**
+ * The version of the side by side stack on the session host.
+ */
+ sxSStackVersion?: string;
+ /**
+ * Update state of a SessionHost. Possible values include: 'Initial', 'Pending', 'Started',
+ * 'Succeeded', 'Failed'
+ */
+ updateState?: UpdateState;
+ /**
+ * The timestamp of the last update.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly lastUpdateTime?: Date;
+ /**
+ * The error message.
+ */
+ updateErrorMessage?: string;
+ /**
+ * List of SessionHostHealthCheckReports
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly sessionHostHealthCheckResults?: SessionHostHealthCheckReport[];
+}
+
+/**
+ * SessionHost properties that can be patched.
+ */
+export interface SessionHostPatch extends Resource {
+ /**
+ * Allow a new session.
+ */
+ allowNewSession?: boolean;
+ /**
+ * User assigned to SessionHost.
+ */
+ assignedUser?: string;
+}
+
+/**
+ * Represents a UserSession definition.
+ */
+export interface UserSession extends Resource {
+ /**
+ * Metadata pertaining to creation and last modification of the resource.
+ */
+ systemData?: SystemData;
+ /**
+ * ObjectId of user session. (internal use)
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly objectId?: string;
+ /**
+ * The user principal name.
+ */
+ userPrincipalName?: string;
+ /**
+ * Application type of application. Possible values include: 'RemoteApp', 'Desktop'
+ */
+ applicationType?: ApplicationType;
+ /**
+ * State of user session. Possible values include: 'Unknown', 'Active', 'Disconnected',
+ * 'Pending', 'LogOff', 'UserProfileDiskMounted'
+ */
+ sessionState?: SessionState;
+ /**
+ * The active directory user name.
+ */
+ activeDirectoryUserName?: string;
+ /**
+ * The timestamp of the user session create.
+ */
+ createTime?: Date;
+}
+
+/**
+ * The time for a scaling action to occur.
+ */
+export interface Time {
+ /**
+ * The hour.
+ */
+ hour: number;
+ /**
+ * The minute.
+ */
+ minute: number;
+}
+
+/**
+ * Scaling plan schedule.
+ */
+export interface ScalingSchedule {
+ /**
+ * Name of the scaling schedule.
+ */
+ name?: string;
+ /**
+ * Set of days of the week on which this schedule is active.
+ */
+ daysOfWeek?: string[];
+ /**
+ * Starting time for ramp up period.
+ */
+ rampUpStartTime?: Time;
+ /**
+ * Load balancing algorithm for ramp up period. Possible values include: 'BreadthFirst',
+ * 'DepthFirst'
+ */
+ rampUpLoadBalancingAlgorithm?: SessionHostLoadBalancingAlgorithm;
+ /**
+ * Minimum host percentage for ramp up period.
+ */
+ rampUpMinimumHostsPct?: number;
+ /**
+ * Capacity threshold for ramp up period.
+ */
+ rampUpCapacityThresholdPct?: number;
+ /**
+ * Starting time for peak period.
+ */
+ peakStartTime?: Time;
+ /**
+ * Load balancing algorithm for peak period. Possible values include: 'BreadthFirst',
+ * 'DepthFirst'
+ */
+ peakLoadBalancingAlgorithm?: SessionHostLoadBalancingAlgorithm;
+ /**
+ * Starting time for ramp down period.
+ */
+ rampDownStartTime?: Time;
+ /**
+ * Load balancing algorithm for ramp down period. Possible values include: 'BreadthFirst',
+ * 'DepthFirst'
+ */
+ rampDownLoadBalancingAlgorithm?: SessionHostLoadBalancingAlgorithm;
+ /**
+ * Minimum host percentage for ramp down period.
+ */
+ rampDownMinimumHostsPct?: number;
+ /**
+ * Capacity threshold for ramp down period.
+ */
+ rampDownCapacityThresholdPct?: number;
+ /**
+ * Should users be logged off forcefully from hosts.
+ */
+ rampDownForceLogoffUsers?: boolean;
+ /**
+ * Specifies when to stop hosts during ramp down period. Possible values include: 'ZeroSessions',
+ * 'ZeroActiveSessions'
+ */
+ rampDownStopHostsWhen?: StopHostsWhen;
+ /**
+ * Number of minutes to wait to stop hosts during ramp down period.
+ */
+ rampDownWaitTimeMinutes?: number;
+ /**
+ * Notification message for users during ramp down period.
+ */
+ rampDownNotificationMessage?: string;
+ /**
+ * Starting time for off-peak period.
+ */
+ offPeakStartTime?: Time;
+ /**
+ * Load balancing algorithm for off-peak period. Possible values include: 'BreadthFirst',
+ * 'DepthFirst'
+ */
+ offPeakLoadBalancingAlgorithm?: SessionHostLoadBalancingAlgorithm;
+}
+
+/**
+ * Scaling plan reference to hostpool.
+ */
+export interface ScalingHostPoolReference {
+ /**
+ * Arm path of referenced hostpool.
+ */
+ hostPoolArmPath?: string;
+ /**
+ * Is the scaling plan enabled for this hostpool.
+ */
+ scalingPlanEnabled?: boolean;
+}
+
+/**
+ * Represents a scaling plan definition.
+ * @summary ScalingPlan
+ */
+export interface ScalingPlan extends ResourceModelWithAllowedPropertySet {
+ /**
+ * Metadata pertaining to creation and last modification of the resource.
+ */
+ systemData?: SystemData;
+ /**
+ * ObjectId of scaling plan. (internal use)
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly objectId?: string;
+ /**
+ * Description of scaling plan.
+ */
+ description?: string;
+ /**
+ * User friendly name of scaling plan.
+ */
+ friendlyName?: string;
+ /**
+ * Timezone of the scaling plan.
+ */
+ timeZone?: string;
+ /**
+ * HostPool type for desktop. Possible values include: 'Pooled'
+ */
+ hostPoolType?: ScalingHostPoolType;
+ /**
+ * Exclusion tag for scaling plan.
+ */
+ exclusionTag?: string;
+ /**
+ * List of ScalingSchedule definitions.
+ */
+ schedules?: ScalingSchedule[];
+ /**
+ * List of ScalingHostPoolReference definitions.
+ */
+ hostPoolReferences?: ScalingHostPoolReference[];
+}
+
+/**
+ * Scaling plan properties that can be patched.
+ */
+export interface ScalingPlanPatch {
+ /**
+ * tags to be updated
+ */
+ tags?: { [propertyName: string]: string };
+ /**
+ * Description of scaling plan.
+ */
+ description?: string;
+ /**
+ * User friendly name of scaling plan.
+ */
+ friendlyName?: string;
+ /**
+ * Timezone of the scaling plan.
+ */
+ timeZone?: string;
+ /**
+ * Exclusion tag for scaling plan.
+ */
+ exclusionTag?: string;
+ /**
+ * List of ScalingSchedule definitions.
+ */
+ schedules?: ScalingSchedule[];
+ /**
+ * List of ScalingHostPoolReference definitions.
+ */
+ hostPoolReferences?: ScalingHostPoolReference[];
+}
+
+/**
+ * The Private Endpoint Connection resource.
+ */
+export interface PrivateEndpointConnection extends Resource {
+ /**
+ * The resource of private end point.
+ */
+ privateEndpoint?: PrivateEndpoint;
+ /**
+ * A collection of information about the state of the connection between service consumer and
+ * provider.
+ */
+ privateLinkServiceConnectionState: PrivateLinkServiceConnectionState;
+ /**
+ * The provisioning state of the private endpoint connection resource. Possible values include:
+ * 'Succeeded', 'Creating', 'Deleting', 'Failed'
+ */
+ provisioningState?: PrivateEndpointConnectionProvisioningState;
+}
+
+/**
+ * The Private Endpoint Connection resource.
+ */
+export interface PrivateEndpointConnectionWithSystemData extends PrivateEndpointConnection {
+ systemData?: SystemData;
+}
+
+/**
+ * A private link resource
+ */
+export interface PrivateLinkResource extends Resource {
+ /**
+ * The private link resource group id.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly groupId?: string;
+ /**
+ * The private link resource required member names.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly requiredMembers?: string[];
+ /**
+ * The private link resource Private link DNS zone name.
+ */
+ requiredZoneNames?: string[];
+}
+
+/**
+ * The resource model definition for a Azure Resource Manager proxy resource. It will not have tags
+ * and a location
+ * @summary Proxy Resource
+ */
+export interface ProxyResource extends Resource {
+}
+
+/**
+ * The resource model definition for an Azure Resource Manager tracked top level resource which has
+ * 'tags' and a 'location'
+ * @summary Tracked Resource
+ */
+export interface TrackedResource extends Resource {
+ /**
+ * Resource tags.
+ */
+ tags?: { [propertyName: string]: string };
+ /**
+ * The geo-location where the resource lives
+ */
+ location: string;
+}
+
+/**
+ * The resource model definition for an Azure Resource Manager resource with an etag.
+ * @summary Entity Resource
+ */
+export interface AzureEntityResource extends Resource {
+ /**
+ * Resource Etag.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly etag?: string;
+}
+
+/**
+ * A collection of information about the state of the connection between service consumer and
+ * provider.
+ */
+export interface PrivateLinkServiceConnectionState {
+ /**
+ * Indicates whether the connection has been Approved/Rejected/Removed by the owner of the
+ * service. Possible values include: 'Pending', 'Approved', 'Rejected'
+ */
+ status?: PrivateEndpointServiceConnectionStatus;
+ /**
+ * The reason for approval/rejection of the connection.
+ */
+ description?: string;
+ /**
+ * A message indicating if changes on the service provider require any updates on the consumer.
+ */
+ actionsRequired?: string;
+}
+
+/**
+ * The Private Endpoint resource.
+ */
+export interface PrivateEndpoint {
+ /**
+ * The ARM identifier for Private Endpoint
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly id?: string;
+}
+
+/**
+ * Plan for the resource.
+ */
+export interface Plan {
+ /**
+ * A user defined name of the 3rd Party Artifact that is being procured.
+ */
+ name: string;
+ /**
+ * The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic
+ */
+ publisher: string;
+ /**
+ * The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to the OfferID
+ * specified for the artifact at the time of Data Market onboarding.
+ */
+ product: string;
+ /**
+ * A publisher provided promotion code as provisioned in Data Market for the said
+ * product/artifact.
+ */
+ promotionCode?: string;
+ /**
+ * The version of the desired product/artifact.
+ */
+ version?: string;
+}
+
+/**
+ * The resource model definition representing SKU
+ */
+export interface Sku {
+ /**
+ * The name of the SKU. Ex - P3. It is typically a letter+number code
+ */
+ name: string;
+ /**
+ * This field is required to be implemented by the Resource Provider if the service has more than
+ * one tier, but is not required on a PUT. Possible values include: 'Free', 'Basic', 'Standard',
+ * 'Premium'
+ */
+ tier?: SkuTier;
+ /**
+ * The SKU size. When the name field is the combination of tier and some other value, this would
+ * be the standalone code.
+ */
+ size?: string;
+ /**
+ * If the service has different generations of hardware, for the same SKU, then that can be
+ * captured here.
+ */
+ family?: string;
+ /**
+ * If the SKU supports scale out/in then the capacity integer should be included. If scale out/in
+ * is not possible for the resource this may be omitted.
+ */
+ capacity?: number;
+}
+
+/**
+ * Identity for the resource.
+ */
+export interface Identity {
+ /**
+ * The principal ID of resource identity.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly principalId?: string;
+ /**
+ * The tenant ID of resource.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly tenantId?: string;
+ /**
+ * The identity type. Possible values include: 'SystemAssigned'
+ */
+ type?: ResourceIdentityType;
+}
+
+/**
+ * An interface representing ResourceModelWithAllowedPropertySetIdentity.
+ */
+export interface ResourceModelWithAllowedPropertySetIdentity extends Identity {
+}
+
+/**
+ * An interface representing ResourceModelWithAllowedPropertySetSku.
+ */
+export interface ResourceModelWithAllowedPropertySetSku extends Sku {
+}
+
+/**
+ * An interface representing ResourceModelWithAllowedPropertySetPlan.
+ */
+export interface ResourceModelWithAllowedPropertySetPlan extends Plan {
+}
+
+/**
+ * Optional Parameters.
+ */
+export interface WorkspacesUpdateOptionalParams extends msRest.RequestOptionsBase {
+ /**
+ * Object containing Workspace definitions.
+ */
+ workspace?: WorkspacePatch;
+}
+
+/**
+ * Optional Parameters.
+ */
+export interface ScalingPlansUpdateOptionalParams extends msRest.RequestOptionsBase {
+ /**
+ * Object containing scaling plan definitions.
+ */
+ scalingPlan?: ScalingPlanPatch;
+}
+
+/**
+ * Optional Parameters.
+ */
+export interface ApplicationGroupsUpdateOptionalParams extends msRest.RequestOptionsBase {
+ /**
+ * Object containing ApplicationGroup definitions.
+ */
+ applicationGroup?: ApplicationGroupPatch;
+}
+
+/**
+ * Optional Parameters.
+ */
+export interface ApplicationGroupsListByResourceGroupOptionalParams extends msRest.RequestOptionsBase {
+ /**
+ * OData filter expression. Valid properties for filtering are applicationGroupType.
+ */
+ filter?: string;
+}
+
+/**
+ * Optional Parameters.
+ */
+export interface ApplicationGroupsListBySubscriptionOptionalParams extends msRest.RequestOptionsBase {
+ /**
+ * OData filter expression. Valid properties for filtering are applicationGroupType.
+ */
+ filter?: string;
+}
+
+/**
+ * Optional Parameters.
+ */
+export interface ApplicationGroupsListByResourceGroupNextOptionalParams extends msRest.RequestOptionsBase {
+ /**
+ * OData filter expression. Valid properties for filtering are applicationGroupType.
+ */
+ filter?: string;
+}
+
+/**
+ * Optional Parameters.
+ */
+export interface ApplicationGroupsListBySubscriptionNextOptionalParams extends msRest.RequestOptionsBase {
+ /**
+ * OData filter expression. Valid properties for filtering are applicationGroupType.
+ */
+ filter?: string;
+}
+
+/**
+ * Optional Parameters.
+ */
+export interface ApplicationsUpdateOptionalParams extends msRest.RequestOptionsBase {
+ /**
+ * Object containing Application definitions.
+ */
+ application?: ApplicationPatch;
+}
+
+/**
+ * Optional Parameters.
+ */
+export interface DesktopsUpdateOptionalParams extends msRest.RequestOptionsBase {
+ /**
+ * Object containing Desktop definitions.
+ */
+ desktop?: DesktopPatch;
+}
+
+/**
+ * Optional Parameters.
+ */
+export interface HostPoolsDeleteMethodOptionalParams extends msRest.RequestOptionsBase {
+ /**
+ * Force flag to delete sessionHost.
+ */
+ force?: boolean;
+}
+
+/**
+ * Optional Parameters.
+ */
+export interface HostPoolsUpdateOptionalParams extends msRest.RequestOptionsBase {
+ /**
+ * Object containing HostPool definitions.
+ */
+ hostPool?: HostPoolPatch;
+}
+
+/**
+ * Optional Parameters.
+ */
+export interface UserSessionsListByHostPoolOptionalParams extends msRest.RequestOptionsBase {
+ /**
+ * OData filter expression. Valid properties for filtering are userprincipalname and
+ * sessionstate.
+ */
+ filter?: string;
+}
+
+/**
+ * Optional Parameters.
+ */
+export interface UserSessionsDeleteMethodOptionalParams extends msRest.RequestOptionsBase {
+ /**
+ * Force flag to login off userSession.
+ */
+ force?: boolean;
+}
+
+/**
+ * Optional Parameters.
+ */
+export interface UserSessionsSendMessageMethodOptionalParams extends msRest.RequestOptionsBase {
+ /**
+ * Object containing message includes title and message body
+ */
+ sendMessage?: SendMessage;
+}
+
+/**
+ * Optional Parameters.
+ */
+export interface UserSessionsListByHostPoolNextOptionalParams extends msRest.RequestOptionsBase {
+ /**
+ * OData filter expression. Valid properties for filtering are userprincipalname and
+ * sessionstate.
+ */
+ filter?: string;
+}
+
+/**
+ * Optional Parameters.
+ */
+export interface SessionHostsDeleteMethodOptionalParams extends msRest.RequestOptionsBase {
+ /**
+ * Force flag to force sessionHost deletion even when userSession exists.
+ */
+ force?: boolean;
+}
+
+/**
+ * Optional Parameters.
+ */
+export interface SessionHostsUpdateOptionalParams extends msRest.RequestOptionsBase {
+ /**
+ * Object containing SessionHost definitions.
+ */
+ sessionHost?: SessionHostPatch;
+ /**
+ * Force flag to update assign, unassign or reassign personal desktop.
+ */
+ force?: boolean;
+}
+
+/**
+ * Optional Parameters.
+ */
+export interface MSIXPackagesUpdateOptionalParams extends msRest.RequestOptionsBase {
+ /**
+ * Object containing MSIX Package definitions.
+ */
+ msixPackage?: MSIXPackagePatch;
+}
+
+/**
+ * Optional Parameters.
+ */
+export interface MsixImagesExpandOptionalParams extends msRest.RequestOptionsBase {
+ /**
+ * URI to Image
+ */
+ uri?: string;
+}
+
+/**
+ * An interface representing DesktopVirtualizationAPIClientOptions.
+ */
+export interface DesktopVirtualizationAPIClientOptions extends AzureServiceClientOptions {
+ baseUri?: string;
+}
+
+/**
+ * @interface
+ * Result of the request to list operations.
+ * @extends Array
+ */
+export interface ResourceProviderOperationList extends Array {
+ /**
+ * Link to the next page of results.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly nextLink?: string;
+}
+
+/**
+ * @interface
+ * List of Workspace definitions.
+ * @summary WorkspaceList
+ * @extends Array
+ */
+export interface WorkspaceList extends Array {
+ /**
+ * Link to the next page of results.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly nextLink?: string;
+}
+
+/**
+ * @interface
+ * List of scaling plan definitions.
+ * @summary ScalingPlanList
+ * @extends Array
+ */
+export interface ScalingPlanList extends Array {
+ /**
+ * Link to the next page of results.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly nextLink?: string;
+}
+
+/**
+ * @interface
+ * List of ApplicationGroup definitions.
+ * @summary ApplicationGroupList
+ * @extends Array
+ */
+export interface ApplicationGroupList extends Array {
+ /**
+ * Link to the next page of results.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly nextLink?: string;
+}
+
+/**
+ * @interface
+ * List of StartMenuItem definitions.
+ * @summary StartMenuItemList
+ * @extends Array
+ */
+export interface StartMenuItemList extends Array {
+ /**
+ * Link to the next page of results.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly nextLink?: string;
+}
+
+/**
+ * @interface
+ * List of Application definitions.
+ * @summary ApplicationList
+ * @extends Array
+ */
+export interface ApplicationList extends Array {
+ /**
+ * Link to the next page of results.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly nextLink?: string;
+}
+
+/**
+ * @interface
+ * List of Desktop definitions.
+ * @summary DesktopList
+ * @extends Array
+ */
+export interface DesktopList extends Array {
+ /**
+ * Link to the next page of results.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly nextLink?: string;
+}
+
+/**
+ * @interface
+ * List of HostPool definitions.
+ * @summary HostPoolList
+ * @extends Array
+ */
+export interface HostPoolList extends Array {
+ /**
+ * Link to the next page of results.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly nextLink?: string;
+}
+
+/**
+ * @interface
+ * List of UserSession definitions.
+ * @summary UserSessionList
+ * @extends Array
+ */
+export interface UserSessionList extends Array {
+ /**
+ * Link to the next page of results.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly nextLink?: string;
+}
+
+/**
+ * @interface
+ * List of SessionHost definitions.
+ * @summary SessionHostList
+ * @extends Array
+ */
+export interface SessionHostList extends Array {
+ /**
+ * Link to the next page of results.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly nextLink?: string;
+}
+
+/**
+ * @interface
+ * List of MSIX Package definitions.
+ * @summary MsixPackageList
+ * @extends Array
+ */
+export interface MSIXPackageList extends Array {
+ /**
+ * Link to the next page of results.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly nextLink?: string;
+}
+
+/**
+ * @interface
+ * List of MSIX package properties retrieved from MSIX Image expansion.
+ * @summary ExpandMsixImageList
+ * @extends Array
+ */
+export interface ExpandMsixImageList extends Array {
+ /**
+ * Link to the next page of results.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly nextLink?: string;
+}
+
+/**
+ * @interface
+ * List of private endpoint connection associated with the specified storage account
+ * @extends Array
+ */
+export interface PrivateEndpointConnectionListResultWithSystemData extends Array {
+ /**
+ * Link to the next page of results.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly nextLink?: string;
+}
+
+/**
+ * @interface
+ * A list of private link resources
+ * @extends Array
+ */
+export interface PrivateLinkResourceListResult extends Array {
+ /**
+ * Link to the next page of results.
+ * **NOTE: This property will not be serialized. It can only be populated by the server.**
+ */
+ readonly nextLink?: string;
+}
+
+/**
+ * Defines values for CreatedByType.
+ * Possible values include: 'User', 'Application', 'ManagedIdentity', 'Key'
+ * @readonly
+ * @enum {string}
+ */
+export type CreatedByType = 'User' | 'Application' | 'ManagedIdentity' | 'Key';
+
+/**
+ * Defines values for PublicNetworkAccess.
+ * Possible values include: 'Enabled', 'Disabled'
+ * @readonly
+ * @enum {string}
+ */
+export type PublicNetworkAccess = 'Enabled' | 'Disabled';
+
+/**
+ * Defines values for ApplicationGroupType.
+ * Possible values include: 'RemoteApp', 'Desktop'
+ * @readonly
+ * @enum {string}
+ */
+export type ApplicationGroupType = 'RemoteApp' | 'Desktop';
+
+/**
+ * Defines values for Operation.
+ * Possible values include: 'Start', 'Revoke', 'Complete', 'Hide', 'Unhide'
+ * @readonly
+ * @enum {string}
+ */
+export type Operation = 'Start' | 'Revoke' | 'Complete' | 'Hide' | 'Unhide';
+
+/**
+ * Defines values for HostPoolType.
+ * Possible values include: 'Personal', 'Pooled', 'BYODesktop'
+ * @readonly
+ * @enum {string}
+ */
+export type HostPoolType = 'Personal' | 'Pooled' | 'BYODesktop';
+
+/**
+ * Defines values for PersonalDesktopAssignmentType.
+ * Possible values include: 'Automatic', 'Direct'
+ * @readonly
+ * @enum {string}
+ */
+export type PersonalDesktopAssignmentType = 'Automatic' | 'Direct';
+
+/**
+ * Defines values for LoadBalancerType.
+ * Possible values include: 'BreadthFirst', 'DepthFirst', 'Persistent'
+ * @readonly
+ * @enum {string}
+ */
+export type LoadBalancerType = 'BreadthFirst' | 'DepthFirst' | 'Persistent';
+
+/**
+ * Defines values for RegistrationTokenOperation.
+ * Possible values include: 'Delete', 'None', 'Update'
+ * @readonly
+ * @enum {string}
+ */
+export type RegistrationTokenOperation = 'Delete' | 'None' | 'Update';
+
+/**
+ * Defines values for SSOSecretType.
+ * Possible values include: 'SharedKey', 'Certificate', 'SharedKeyInKeyVault',
+ * 'CertificateInKeyVault'
+ * @readonly
+ * @enum {string}
+ */
+export type SSOSecretType = 'SharedKey' | 'Certificate' | 'SharedKeyInKeyVault' | 'CertificateInKeyVault';
+
+/**
+ * Defines values for PreferredAppGroupType.
+ * Possible values include: 'None', 'Desktop', 'RailApplications'
+ * @readonly
+ * @enum {string}
+ */
+export type PreferredAppGroupType = 'None' | 'Desktop' | 'RailApplications';
+
+/**
+ * Defines values for RemoteApplicationType.
+ * Possible values include: 'InBuilt', 'MsixApplication'
+ * @readonly
+ * @enum {string}
+ */
+export type RemoteApplicationType = 'InBuilt' | 'MsixApplication';
+
+/**
+ * Defines values for CommandLineSetting.
+ * Possible values include: 'DoNotAllow', 'Allow', 'Require'
+ * @readonly
+ * @enum {string}
+ */
+export type CommandLineSetting = 'DoNotAllow' | 'Allow' | 'Require';
+
+/**
+ * Defines values for Status.
+ * Possible values include: 'Available', 'Unavailable', 'Shutdown', 'Disconnected', 'Upgrading',
+ * 'UpgradeFailed', 'NoHeartbeat', 'NotJoinedToDomain', 'DomainTrustRelationshipLost',
+ * 'SxSStackListenerNotReady', 'FSLogixNotHealthy', 'NeedsAssistance'
+ * @readonly
+ * @enum {string}
+ */
+export type Status = 'Available' | 'Unavailable' | 'Shutdown' | 'Disconnected' | 'Upgrading' | 'UpgradeFailed' | 'NoHeartbeat' | 'NotJoinedToDomain' | 'DomainTrustRelationshipLost' | 'SxSStackListenerNotReady' | 'FSLogixNotHealthy' | 'NeedsAssistance';
+
+/**
+ * Defines values for UpdateState.
+ * Possible values include: 'Initial', 'Pending', 'Started', 'Succeeded', 'Failed'
+ * @readonly
+ * @enum {string}
+ */
+export type UpdateState = 'Initial' | 'Pending' | 'Started' | 'Succeeded' | 'Failed';
+
+/**
+ * Defines values for HealthCheckName.
+ * Possible values include: 'DomainJoinedCheck', 'DomainTrustCheck', 'FSLogixHealthCheck',
+ * 'SxSStackListenerCheck', 'UrlsAccessibleCheck', 'MonitoringAgentCheck', 'DomainReachable',
+ * 'WebRTCRedirectorCheck', 'SupportedEncryptionCheck', 'MetaDataServiceCheck',
+ * 'AppAttachHealthCheck'
+ * @readonly
+ * @enum {string}
+ */
+export type HealthCheckName = 'DomainJoinedCheck' | 'DomainTrustCheck' | 'FSLogixHealthCheck' | 'SxSStackListenerCheck' | 'UrlsAccessibleCheck' | 'MonitoringAgentCheck' | 'DomainReachable' | 'WebRTCRedirectorCheck' | 'SupportedEncryptionCheck' | 'MetaDataServiceCheck' | 'AppAttachHealthCheck';
+
+/**
+ * Defines values for HealthCheckResult.
+ * Possible values include: 'Unknown', 'HealthCheckSucceeded', 'HealthCheckFailed',
+ * 'SessionHostShutdown'
+ * @readonly
+ * @enum {string}
+ */
+export type HealthCheckResult = 'Unknown' | 'HealthCheckSucceeded' | 'HealthCheckFailed' | 'SessionHostShutdown';
+
+/**
+ * Defines values for ApplicationType.
+ * Possible values include: 'RemoteApp', 'Desktop'
+ * @readonly
+ * @enum {string}
+ */
+export type ApplicationType = 'RemoteApp' | 'Desktop';
+
+/**
+ * Defines values for SessionState.
+ * Possible values include: 'Unknown', 'Active', 'Disconnected', 'Pending', 'LogOff',
+ * 'UserProfileDiskMounted'
+ * @readonly
+ * @enum {string}
+ */
+export type SessionState = 'Unknown' | 'Active' | 'Disconnected' | 'Pending' | 'LogOff' | 'UserProfileDiskMounted';
+
+/**
+ * Defines values for ScalingHostPoolType.
+ * Possible values include: 'Pooled'
+ * @readonly
+ * @enum {string}
+ */
+export type ScalingHostPoolType = 'Pooled';
+
+/**
+ * Defines values for SessionHostLoadBalancingAlgorithm.
+ * Possible values include: 'BreadthFirst', 'DepthFirst'
+ * @readonly
+ * @enum {string}
+ */
+export type SessionHostLoadBalancingAlgorithm = 'BreadthFirst' | 'DepthFirst';
+
+/**
+ * Defines values for StopHostsWhen.
+ * Possible values include: 'ZeroSessions', 'ZeroActiveSessions'
+ * @readonly
+ * @enum {string}
+ */
+export type StopHostsWhen = 'ZeroSessions' | 'ZeroActiveSessions';
+
+/**
+ * Defines values for PrivateEndpointConnectionProvisioningState.
+ * Possible values include: 'Succeeded', 'Creating', 'Deleting', 'Failed'
+ * @readonly
+ * @enum {string}
+ */
+export type PrivateEndpointConnectionProvisioningState = 'Succeeded' | 'Creating' | 'Deleting' | 'Failed';
+
+/**
+ * Defines values for PrivateEndpointServiceConnectionStatus.
+ * Possible values include: 'Pending', 'Approved', 'Rejected'
+ * @readonly
+ * @enum {string}
+ */
+export type PrivateEndpointServiceConnectionStatus = 'Pending' | 'Approved' | 'Rejected';
+
+/**
+ * Defines values for SkuTier.
+ * Possible values include: 'Free', 'Basic', 'Standard', 'Premium'
+ * @readonly
+ * @enum {string}
+ */
+export type SkuTier = 'Free' | 'Basic' | 'Standard' | 'Premium';
+
+/**
+ * Defines values for ResourceIdentityType.
+ * Possible values include: 'SystemAssigned'
+ * @readonly
+ * @enum {string}
+ */
+export type ResourceIdentityType = 'SystemAssigned';
+
+/**
+ * Contains response data for the list operation.
+ */
+export type OperationsListResponse = ResourceProviderOperationList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: ResourceProviderOperationList;
+ };
+};
+
+/**
+ * Contains response data for the listNext operation.
+ */
+export type OperationsListNextResponse = ResourceProviderOperationList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: ResourceProviderOperationList;
+ };
+};
+
+/**
+ * Contains response data for the get operation.
+ */
+export type WorkspacesGetResponse = Workspace & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: Workspace;
+ };
+};
+
+/**
+ * Contains response data for the createOrUpdate operation.
+ */
+export type WorkspacesCreateOrUpdateResponse = Workspace & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: Workspace;
+ };
+};
+
+/**
+ * Contains response data for the update operation.
+ */
+export type WorkspacesUpdateResponse = Workspace & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: Workspace;
+ };
+};
+
+/**
+ * Contains response data for the listByResourceGroup operation.
+ */
+export type WorkspacesListByResourceGroupResponse = WorkspaceList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: WorkspaceList;
+ };
+};
+
+/**
+ * Contains response data for the listBySubscription operation.
+ */
+export type WorkspacesListBySubscriptionResponse = WorkspaceList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: WorkspaceList;
+ };
+};
+
+/**
+ * Contains response data for the listByResourceGroupNext operation.
+ */
+export type WorkspacesListByResourceGroupNextResponse = WorkspaceList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: WorkspaceList;
+ };
+};
+
+/**
+ * Contains response data for the listBySubscriptionNext operation.
+ */
+export type WorkspacesListBySubscriptionNextResponse = WorkspaceList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: WorkspaceList;
+ };
+};
+
+/**
+ * Contains response data for the get operation.
+ */
+export type ScalingPlansGetResponse = ScalingPlan & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: ScalingPlan;
+ };
+};
+
+/**
+ * Contains response data for the create operation.
+ */
+export type ScalingPlansCreateResponse = ScalingPlan & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: ScalingPlan;
+ };
+};
+
+/**
+ * Contains response data for the update operation.
+ */
+export type ScalingPlansUpdateResponse = ScalingPlan & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: ScalingPlan;
+ };
+};
+
+/**
+ * Contains response data for the listByResourceGroup operation.
+ */
+export type ScalingPlansListByResourceGroupResponse = ScalingPlanList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: ScalingPlanList;
+ };
+};
+
+/**
+ * Contains response data for the listBySubscription operation.
+ */
+export type ScalingPlansListBySubscriptionResponse = ScalingPlanList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: ScalingPlanList;
+ };
+};
+
+/**
+ * Contains response data for the listByHostPool operation.
+ */
+export type ScalingPlansListByHostPoolResponse = ScalingPlanList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: ScalingPlanList;
+ };
+};
+
+/**
+ * Contains response data for the listByResourceGroupNext operation.
+ */
+export type ScalingPlansListByResourceGroupNextResponse = ScalingPlanList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: ScalingPlanList;
+ };
+};
+
+/**
+ * Contains response data for the listBySubscriptionNext operation.
+ */
+export type ScalingPlansListBySubscriptionNextResponse = ScalingPlanList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: ScalingPlanList;
+ };
+};
+
+/**
+ * Contains response data for the listByHostPoolNext operation.
+ */
+export type ScalingPlansListByHostPoolNextResponse = ScalingPlanList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: ScalingPlanList;
+ };
+};
+
+/**
+ * Contains response data for the get operation.
+ */
+export type ApplicationGroupsGetResponse = ApplicationGroup & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: ApplicationGroup;
+ };
+};
+
+/**
+ * Contains response data for the createOrUpdate operation.
+ */
+export type ApplicationGroupsCreateOrUpdateResponse = ApplicationGroup & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: ApplicationGroup;
+ };
+};
+
+/**
+ * Contains response data for the update operation.
+ */
+export type ApplicationGroupsUpdateResponse = ApplicationGroup & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: ApplicationGroup;
+ };
+};
+
+/**
+ * Contains response data for the listByResourceGroup operation.
+ */
+export type ApplicationGroupsListByResourceGroupResponse = ApplicationGroupList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: ApplicationGroupList;
+ };
+};
+
+/**
+ * Contains response data for the listBySubscription operation.
+ */
+export type ApplicationGroupsListBySubscriptionResponse = ApplicationGroupList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: ApplicationGroupList;
+ };
+};
+
+/**
+ * Contains response data for the listByResourceGroupNext operation.
+ */
+export type ApplicationGroupsListByResourceGroupNextResponse = ApplicationGroupList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: ApplicationGroupList;
+ };
+};
+
+/**
+ * Contains response data for the listBySubscriptionNext operation.
+ */
+export type ApplicationGroupsListBySubscriptionNextResponse = ApplicationGroupList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: ApplicationGroupList;
+ };
+};
+
+/**
+ * Contains response data for the list operation.
+ */
+export type StartMenuItemsListResponse = StartMenuItemList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: StartMenuItemList;
+ };
+};
+
+/**
+ * Contains response data for the listNext operation.
+ */
+export type StartMenuItemsListNextResponse = StartMenuItemList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: StartMenuItemList;
+ };
+};
+
+/**
+ * Contains response data for the get operation.
+ */
+export type ApplicationsGetResponse = Application & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: Application;
+ };
+};
+
+/**
+ * Contains response data for the createOrUpdate operation.
+ */
+export type ApplicationsCreateOrUpdateResponse = Application & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: Application;
+ };
+};
+
+/**
+ * Contains response data for the update operation.
+ */
+export type ApplicationsUpdateResponse = Application & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: Application;
+ };
+};
+
+/**
+ * Contains response data for the list operation.
+ */
+export type ApplicationsListResponse = ApplicationList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: ApplicationList;
+ };
+};
+
+/**
+ * Contains response data for the listNext operation.
+ */
+export type ApplicationsListNextResponse = ApplicationList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: ApplicationList;
+ };
+};
+
+/**
+ * Contains response data for the get operation.
+ */
+export type DesktopsGetResponse = Desktop & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: Desktop;
+ };
+};
+
+/**
+ * Contains response data for the update operation.
+ */
+export type DesktopsUpdateResponse = Desktop & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: Desktop;
+ };
+};
+
+/**
+ * Contains response data for the list operation.
+ */
+export type DesktopsListResponse = DesktopList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: DesktopList;
+ };
+};
+
+/**
+ * Contains response data for the listNext operation.
+ */
+export type DesktopsListNextResponse = DesktopList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: DesktopList;
+ };
+};
+
+/**
+ * Contains response data for the get operation.
+ */
+export type HostPoolsGetResponse = HostPool & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: HostPool;
+ };
+};
+
+/**
+ * Contains response data for the createOrUpdate operation.
+ */
+export type HostPoolsCreateOrUpdateResponse = HostPool & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: HostPool;
+ };
+};
+
+/**
+ * Contains response data for the update operation.
+ */
+export type HostPoolsUpdateResponse = HostPool & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: HostPool;
+ };
+};
+
+/**
+ * Contains response data for the listByResourceGroup operation.
+ */
+export type HostPoolsListByResourceGroupResponse = HostPoolList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: HostPoolList;
+ };
+};
+
+/**
+ * Contains response data for the list operation.
+ */
+export type HostPoolsListResponse = HostPoolList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: HostPoolList;
+ };
+};
+
+/**
+ * Contains response data for the retrieveRegistrationToken operation.
+ */
+export type HostPoolsRetrieveRegistrationTokenResponse = RegistrationInfo & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: RegistrationInfo;
+ };
+};
+
+/**
+ * Contains response data for the listByResourceGroupNext operation.
+ */
+export type HostPoolsListByResourceGroupNextResponse = HostPoolList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: HostPoolList;
+ };
+};
+
+/**
+ * Contains response data for the listNext operation.
+ */
+export type HostPoolsListNextResponse = HostPoolList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: HostPoolList;
+ };
+};
+
+/**
+ * Contains response data for the listByHostPool operation.
+ */
+export type UserSessionsListByHostPoolResponse = UserSessionList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: UserSessionList;
+ };
+};
+
+/**
+ * Contains response data for the get operation.
+ */
+export type UserSessionsGetResponse = UserSession & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: UserSession;
+ };
+};
+
+/**
+ * Contains response data for the list operation.
+ */
+export type UserSessionsListResponse = UserSessionList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: UserSessionList;
+ };
+};
+
+/**
+ * Contains response data for the listByHostPoolNext operation.
+ */
+export type UserSessionsListByHostPoolNextResponse = UserSessionList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: UserSessionList;
+ };
+};
+
+/**
+ * Contains response data for the listNext operation.
+ */
+export type UserSessionsListNextResponse = UserSessionList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: UserSessionList;
+ };
+};
+
+/**
+ * Contains response data for the get operation.
+ */
+export type SessionHostsGetResponse = SessionHost & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: SessionHost;
+ };
+};
+
+/**
+ * Contains response data for the update operation.
+ */
+export type SessionHostsUpdateResponse = SessionHost & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: SessionHost;
+ };
+};
+
+/**
+ * Contains response data for the list operation.
+ */
+export type SessionHostsListResponse = SessionHostList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: SessionHostList;
+ };
+};
+
+/**
+ * Contains response data for the listNext operation.
+ */
+export type SessionHostsListNextResponse = SessionHostList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: SessionHostList;
+ };
+};
+
+/**
+ * Contains response data for the get operation.
+ */
+export type MSIXPackagesGetResponse = MSIXPackage & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: MSIXPackage;
+ };
+};
+
+/**
+ * Contains response data for the createOrUpdate operation.
+ */
+export type MSIXPackagesCreateOrUpdateResponse = MSIXPackage & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: MSIXPackage;
+ };
+};
+
+/**
+ * Contains response data for the update operation.
+ */
+export type MSIXPackagesUpdateResponse = MSIXPackage & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: MSIXPackage;
+ };
+};
+
+/**
+ * Contains response data for the list operation.
+ */
+export type MSIXPackagesListResponse = MSIXPackageList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: MSIXPackageList;
+ };
+};
+
+/**
+ * Contains response data for the listNext operation.
+ */
+export type MSIXPackagesListNextResponse = MSIXPackageList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: MSIXPackageList;
+ };
+};
+
+/**
+ * Contains response data for the expand operation.
+ */
+export type MsixImagesExpandResponse = ExpandMsixImageList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: ExpandMsixImageList;
+ };
+};
+
+/**
+ * Contains response data for the expandNext operation.
+ */
+export type MsixImagesExpandNextResponse = ExpandMsixImageList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: ExpandMsixImageList;
+ };
+};
+
+/**
+ * Contains response data for the listByHostPool operation.
+ */
+export type PrivateEndpointConnectionsListByHostPoolResponse = PrivateEndpointConnectionListResultWithSystemData & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: PrivateEndpointConnectionListResultWithSystemData;
+ };
+};
+
+/**
+ * Contains response data for the getByHostPool operation.
+ */
+export type PrivateEndpointConnectionsGetByHostPoolResponse = PrivateEndpointConnectionWithSystemData & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: PrivateEndpointConnectionWithSystemData;
+ };
+};
+
+/**
+ * Contains response data for the updateByHostPool operation.
+ */
+export type PrivateEndpointConnectionsUpdateByHostPoolResponse = PrivateEndpointConnectionWithSystemData & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: PrivateEndpointConnectionWithSystemData;
+ };
+};
+
+/**
+ * Contains response data for the listByWorkspace operation.
+ */
+export type PrivateEndpointConnectionsListByWorkspaceResponse = PrivateEndpointConnectionListResultWithSystemData & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: PrivateEndpointConnectionListResultWithSystemData;
+ };
+};
+
+/**
+ * Contains response data for the getByWorkspace operation.
+ */
+export type PrivateEndpointConnectionsGetByWorkspaceResponse = PrivateEndpointConnectionWithSystemData & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: PrivateEndpointConnectionWithSystemData;
+ };
+};
+
+/**
+ * Contains response data for the updateByWorkspace operation.
+ */
+export type PrivateEndpointConnectionsUpdateByWorkspaceResponse = PrivateEndpointConnectionWithSystemData & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: PrivateEndpointConnectionWithSystemData;
+ };
+};
+
+/**
+ * Contains response data for the listByHostPoolNext operation.
+ */
+export type PrivateEndpointConnectionsListByHostPoolNextResponse = PrivateEndpointConnectionListResultWithSystemData & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: PrivateEndpointConnectionListResultWithSystemData;
+ };
+};
+
+/**
+ * Contains response data for the listByWorkspaceNext operation.
+ */
+export type PrivateEndpointConnectionsListByWorkspaceNextResponse = PrivateEndpointConnectionListResultWithSystemData & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: PrivateEndpointConnectionListResultWithSystemData;
+ };
+};
+
+/**
+ * Contains response data for the listByHostPool operation.
+ */
+export type PrivateLinkResourcesListByHostPoolResponse = PrivateLinkResourceListResult & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: PrivateLinkResourceListResult;
+ };
+};
+
+/**
+ * Contains response data for the listByWorkspace operation.
+ */
+export type PrivateLinkResourcesListByWorkspaceResponse = PrivateLinkResourceListResult & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: PrivateLinkResourceListResult;
+ };
+};
+
+/**
+ * Contains response data for the listByHostPoolNext operation.
+ */
+export type PrivateLinkResourcesListByHostPoolNextResponse = PrivateLinkResourceListResult & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: PrivateLinkResourceListResult;
+ };
+};
+
+/**
+ * Contains response data for the listByWorkspaceNext operation.
+ */
+export type PrivateLinkResourcesListByWorkspaceNextResponse = PrivateLinkResourceListResult & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: PrivateLinkResourceListResult;
+ };
+};
diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/mSIXPackagesMappers.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/mSIXPackagesMappers.ts
new file mode 100644
index 000000000000..7656cb1a3d87
--- /dev/null
+++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/mSIXPackagesMappers.ts
@@ -0,0 +1,56 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the MIT License.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is regenerated.
+ */
+
+export {
+ Application,
+ ApplicationGroup,
+ ApplicationGroupPatch,
+ AzureEntityResource,
+ BaseResource,
+ CloudError,
+ CloudErrorProperties,
+ Desktop,
+ ExpandMsixImage,
+ HostPool,
+ HostPoolPatch,
+ Identity,
+ MigrationRequestProperties,
+ MSIXPackage,
+ MsixPackageApplications,
+ MsixPackageDependencies,
+ MSIXPackageList,
+ MSIXPackagePatch,
+ Plan,
+ PrivateEndpoint,
+ PrivateEndpointConnection,
+ PrivateEndpointConnectionWithSystemData,
+ PrivateLinkResource,
+ PrivateLinkServiceConnectionState,
+ ProxyResource,
+ RegistrationInfo,
+ RegistrationInfoPatch,
+ Resource,
+ ResourceModelWithAllowedPropertySet,
+ ResourceModelWithAllowedPropertySetIdentity,
+ ResourceModelWithAllowedPropertySetPlan,
+ ResourceModelWithAllowedPropertySetSku,
+ ScalingHostPoolReference,
+ ScalingPlan,
+ ScalingSchedule,
+ SessionHost,
+ SessionHostHealthCheckFailureDetails,
+ SessionHostHealthCheckReport,
+ SessionHostPatch,
+ Sku,
+ StartMenuItem,
+ SystemData,
+ Time,
+ TrackedResource,
+ UserSession,
+ Workspace
+} from "../models/mappers";
diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/mappers.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/mappers.ts
new file mode 100644
index 000000000000..c36532d102b3
--- /dev/null
+++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/mappers.ts
@@ -0,0 +1,2991 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the MIT License.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is regenerated.
+ */
+
+import { CloudErrorMapper, BaseResourceMapper } from "@azure/ms-rest-azure-js";
+import * as msRest from "@azure/ms-rest-js";
+
+export const CloudError = CloudErrorMapper;
+export const BaseResource = BaseResourceMapper;
+
+export const CloudErrorProperties: msRest.CompositeMapper = {
+ serializedName: "CloudErrorProperties",
+ type: {
+ name: "Composite",
+ className: "CloudErrorProperties",
+ modelProperties: {
+ code: {
+ serializedName: "code",
+ type: {
+ name: "String"
+ }
+ },
+ message: {
+ serializedName: "message",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const ResourceProviderOperationDisplay: msRest.CompositeMapper = {
+ serializedName: "ResourceProviderOperation_display",
+ type: {
+ name: "Composite",
+ className: "ResourceProviderOperationDisplay",
+ modelProperties: {
+ provider: {
+ serializedName: "provider",
+ type: {
+ name: "String"
+ }
+ },
+ resource: {
+ serializedName: "resource",
+ type: {
+ name: "String"
+ }
+ },
+ operation: {
+ serializedName: "operation",
+ type: {
+ name: "String"
+ }
+ },
+ description: {
+ serializedName: "description",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const LogSpecification: msRest.CompositeMapper = {
+ serializedName: "LogSpecification",
+ type: {
+ name: "Composite",
+ className: "LogSpecification",
+ modelProperties: {
+ name: {
+ serializedName: "name",
+ type: {
+ name: "String"
+ }
+ },
+ displayName: {
+ serializedName: "displayName",
+ type: {
+ name: "String"
+ }
+ },
+ blobDuration: {
+ serializedName: "blobDuration",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const ServiceSpecification: msRest.CompositeMapper = {
+ serializedName: "ServiceSpecification",
+ type: {
+ name: "Composite",
+ className: "ServiceSpecification",
+ modelProperties: {
+ logSpecifications: {
+ serializedName: "logSpecifications",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "LogSpecification"
+ }
+ }
+ }
+ }
+ }
+ }
+};
+
+export const OperationProperties: msRest.CompositeMapper = {
+ serializedName: "OperationProperties",
+ type: {
+ name: "Composite",
+ className: "OperationProperties",
+ modelProperties: {
+ serviceSpecification: {
+ serializedName: "serviceSpecification",
+ type: {
+ name: "Composite",
+ className: "ServiceSpecification"
+ }
+ }
+ }
+ }
+};
+
+export const ResourceProviderOperation: msRest.CompositeMapper = {
+ serializedName: "ResourceProviderOperation",
+ type: {
+ name: "Composite",
+ className: "ResourceProviderOperation",
+ modelProperties: {
+ name: {
+ serializedName: "name",
+ type: {
+ name: "String"
+ }
+ },
+ display: {
+ serializedName: "display",
+ type: {
+ name: "Composite",
+ className: "ResourceProviderOperationDisplay"
+ }
+ },
+ isDataAction: {
+ serializedName: "isDataAction",
+ type: {
+ name: "Boolean"
+ }
+ },
+ properties: {
+ serializedName: "properties",
+ type: {
+ name: "Composite",
+ className: "OperationProperties"
+ }
+ }
+ }
+ }
+};
+
+export const SystemData: msRest.CompositeMapper = {
+ serializedName: "systemData",
+ type: {
+ name: "Composite",
+ className: "SystemData",
+ modelProperties: {
+ createdBy: {
+ serializedName: "createdBy",
+ type: {
+ name: "String"
+ }
+ },
+ createdByType: {
+ serializedName: "createdByType",
+ type: {
+ name: "String"
+ }
+ },
+ createdAt: {
+ serializedName: "createdAt",
+ type: {
+ name: "DateTime"
+ }
+ },
+ lastModifiedBy: {
+ serializedName: "lastModifiedBy",
+ type: {
+ name: "String"
+ }
+ },
+ lastModifiedByType: {
+ serializedName: "lastModifiedByType",
+ type: {
+ name: "String"
+ }
+ },
+ lastModifiedAt: {
+ serializedName: "lastModifiedAt",
+ type: {
+ name: "DateTime"
+ }
+ }
+ }
+ }
+};
+
+export const ResourceModelWithAllowedPropertySet: msRest.CompositeMapper = {
+ serializedName: "ResourceModelWithAllowedPropertySet",
+ type: {
+ name: "Composite",
+ className: "ResourceModelWithAllowedPropertySet",
+ modelProperties: {
+ id: {
+ readOnly: true,
+ serializedName: "id",
+ type: {
+ name: "String"
+ }
+ },
+ name: {
+ readOnly: true,
+ serializedName: "name",
+ type: {
+ name: "String"
+ }
+ },
+ type: {
+ readOnly: true,
+ serializedName: "type",
+ type: {
+ name: "String"
+ }
+ },
+ location: {
+ serializedName: "location",
+ type: {
+ name: "String"
+ }
+ },
+ managedBy: {
+ serializedName: "managedBy",
+ type: {
+ name: "String"
+ }
+ },
+ kind: {
+ serializedName: "kind",
+ constraints: {
+ Pattern: /^[-\w\._,\(\)]+$/
+ },
+ type: {
+ name: "String"
+ }
+ },
+ etag: {
+ readOnly: true,
+ serializedName: "etag",
+ type: {
+ name: "String"
+ }
+ },
+ tags: {
+ serializedName: "tags",
+ type: {
+ name: "Dictionary",
+ value: {
+ type: {
+ name: "String"
+ }
+ }
+ }
+ },
+ identity: {
+ serializedName: "identity",
+ type: {
+ name: "Composite",
+ className: "ResourceModelWithAllowedPropertySetIdentity"
+ }
+ },
+ sku: {
+ serializedName: "sku",
+ type: {
+ name: "Composite",
+ className: "ResourceModelWithAllowedPropertySetSku"
+ }
+ },
+ plan: {
+ serializedName: "plan",
+ type: {
+ name: "Composite",
+ className: "ResourceModelWithAllowedPropertySetPlan"
+ }
+ }
+ }
+ }
+};
+
+export const Workspace: msRest.CompositeMapper = {
+ serializedName: "Workspace",
+ type: {
+ name: "Composite",
+ className: "Workspace",
+ modelProperties: {
+ ...ResourceModelWithAllowedPropertySet.type.modelProperties,
+ systemData: {
+ serializedName: "systemData",
+ type: {
+ name: "Composite",
+ className: "SystemData"
+ }
+ },
+ objectId: {
+ readOnly: true,
+ serializedName: "properties.objectId",
+ type: {
+ name: "String"
+ }
+ },
+ description: {
+ serializedName: "properties.description",
+ type: {
+ name: "String"
+ }
+ },
+ friendlyName: {
+ serializedName: "properties.friendlyName",
+ type: {
+ name: "String"
+ }
+ },
+ applicationGroupReferences: {
+ serializedName: "properties.applicationGroupReferences",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "String"
+ }
+ }
+ }
+ },
+ cloudPcResource: {
+ readOnly: true,
+ serializedName: "properties.cloudPcResource",
+ type: {
+ name: "Boolean"
+ }
+ },
+ publicNetworkAccess: {
+ nullable: false,
+ serializedName: "properties.publicNetworkAccess",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const WorkspacePatch: msRest.CompositeMapper = {
+ serializedName: "WorkspacePatch",
+ type: {
+ name: "Composite",
+ className: "WorkspacePatch",
+ modelProperties: {
+ tags: {
+ serializedName: "tags",
+ type: {
+ name: "Dictionary",
+ value: {
+ type: {
+ name: "String"
+ }
+ }
+ }
+ },
+ description: {
+ serializedName: "properties.description",
+ type: {
+ name: "String"
+ }
+ },
+ friendlyName: {
+ serializedName: "properties.friendlyName",
+ type: {
+ name: "String"
+ }
+ },
+ applicationGroupReferences: {
+ serializedName: "properties.applicationGroupReferences",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "String"
+ }
+ }
+ }
+ },
+ publicNetworkAccess: {
+ serializedName: "properties.publicNetworkAccess",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const MigrationRequestProperties: msRest.CompositeMapper = {
+ serializedName: "MigrationRequestProperties",
+ type: {
+ name: "Composite",
+ className: "MigrationRequestProperties",
+ modelProperties: {
+ operation: {
+ serializedName: "operation",
+ type: {
+ name: "String"
+ }
+ },
+ migrationPath: {
+ serializedName: "migrationPath",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const ApplicationGroup: msRest.CompositeMapper = {
+ serializedName: "ApplicationGroup",
+ type: {
+ name: "Composite",
+ className: "ApplicationGroup",
+ modelProperties: {
+ ...ResourceModelWithAllowedPropertySet.type.modelProperties,
+ systemData: {
+ serializedName: "systemData",
+ type: {
+ name: "Composite",
+ className: "SystemData"
+ }
+ },
+ objectId: {
+ readOnly: true,
+ serializedName: "properties.objectId",
+ type: {
+ name: "String"
+ }
+ },
+ description: {
+ serializedName: "properties.description",
+ type: {
+ name: "String"
+ }
+ },
+ friendlyName: {
+ serializedName: "properties.friendlyName",
+ type: {
+ name: "String"
+ }
+ },
+ hostPoolArmPath: {
+ required: true,
+ nullable: false,
+ serializedName: "properties.hostPoolArmPath",
+ type: {
+ name: "String"
+ }
+ },
+ workspaceArmPath: {
+ readOnly: true,
+ serializedName: "properties.workspaceArmPath",
+ type: {
+ name: "String"
+ }
+ },
+ applicationGroupType: {
+ required: true,
+ nullable: false,
+ serializedName: "properties.applicationGroupType",
+ type: {
+ name: "String"
+ }
+ },
+ migrationRequest: {
+ serializedName: "properties.migrationRequest",
+ type: {
+ name: "Composite",
+ className: "MigrationRequestProperties"
+ }
+ },
+ cloudPcResource: {
+ readOnly: true,
+ serializedName: "properties.cloudPcResource",
+ type: {
+ name: "Boolean"
+ }
+ }
+ }
+ }
+};
+
+export const Resource: msRest.CompositeMapper = {
+ serializedName: "Resource",
+ type: {
+ name: "Composite",
+ className: "Resource",
+ modelProperties: {
+ id: {
+ readOnly: true,
+ serializedName: "id",
+ type: {
+ name: "String"
+ }
+ },
+ name: {
+ readOnly: true,
+ serializedName: "name",
+ type: {
+ name: "String"
+ }
+ },
+ type: {
+ readOnly: true,
+ serializedName: "type",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const ApplicationGroupPatch: msRest.CompositeMapper = {
+ serializedName: "ApplicationGroupPatch",
+ type: {
+ name: "Composite",
+ className: "ApplicationGroupPatch",
+ modelProperties: {
+ ...Resource.type.modelProperties,
+ tags: {
+ serializedName: "tags",
+ type: {
+ name: "Dictionary",
+ value: {
+ type: {
+ name: "String"
+ }
+ }
+ }
+ },
+ description: {
+ serializedName: "properties.description",
+ type: {
+ name: "String"
+ }
+ },
+ friendlyName: {
+ serializedName: "properties.friendlyName",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const RegistrationInfo: msRest.CompositeMapper = {
+ serializedName: "RegistrationInfo",
+ type: {
+ name: "Composite",
+ className: "RegistrationInfo",
+ modelProperties: {
+ expirationTime: {
+ serializedName: "expirationTime",
+ type: {
+ name: "DateTime"
+ }
+ },
+ token: {
+ serializedName: "token",
+ type: {
+ name: "String"
+ }
+ },
+ registrationTokenOperation: {
+ nullable: false,
+ serializedName: "registrationTokenOperation",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const HostPool: msRest.CompositeMapper = {
+ serializedName: "HostPool",
+ type: {
+ name: "Composite",
+ className: "HostPool",
+ modelProperties: {
+ ...ResourceModelWithAllowedPropertySet.type.modelProperties,
+ systemData: {
+ serializedName: "systemData",
+ type: {
+ name: "Composite",
+ className: "SystemData"
+ }
+ },
+ objectId: {
+ readOnly: true,
+ serializedName: "properties.objectId",
+ type: {
+ name: "String"
+ }
+ },
+ friendlyName: {
+ serializedName: "properties.friendlyName",
+ type: {
+ name: "String"
+ }
+ },
+ description: {
+ serializedName: "properties.description",
+ type: {
+ name: "String"
+ }
+ },
+ hostPoolType: {
+ required: true,
+ nullable: false,
+ serializedName: "properties.hostPoolType",
+ type: {
+ name: "String"
+ }
+ },
+ personalDesktopAssignmentType: {
+ serializedName: "properties.personalDesktopAssignmentType",
+ type: {
+ name: "String"
+ }
+ },
+ customRdpProperty: {
+ serializedName: "properties.customRdpProperty",
+ type: {
+ name: "String"
+ }
+ },
+ maxSessionLimit: {
+ serializedName: "properties.maxSessionLimit",
+ type: {
+ name: "Number"
+ }
+ },
+ loadBalancerType: {
+ required: true,
+ nullable: false,
+ serializedName: "properties.loadBalancerType",
+ type: {
+ name: "String"
+ }
+ },
+ ring: {
+ serializedName: "properties.ring",
+ type: {
+ name: "Number"
+ }
+ },
+ validationEnvironment: {
+ serializedName: "properties.validationEnvironment",
+ type: {
+ name: "Boolean"
+ }
+ },
+ registrationInfo: {
+ serializedName: "properties.registrationInfo",
+ type: {
+ name: "Composite",
+ className: "RegistrationInfo"
+ }
+ },
+ vmTemplate: {
+ serializedName: "properties.vmTemplate",
+ type: {
+ name: "String"
+ }
+ },
+ applicationGroupReferences: {
+ readOnly: true,
+ serializedName: "properties.applicationGroupReferences",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "String"
+ }
+ }
+ }
+ },
+ ssoadfsAuthority: {
+ serializedName: "properties.ssoadfsAuthority",
+ type: {
+ name: "String"
+ }
+ },
+ ssoClientId: {
+ serializedName: "properties.ssoClientId",
+ type: {
+ name: "String"
+ }
+ },
+ ssoClientSecretKeyVaultPath: {
+ serializedName: "properties.ssoClientSecretKeyVaultPath",
+ type: {
+ name: "String"
+ }
+ },
+ ssoSecretType: {
+ serializedName: "properties.ssoSecretType",
+ type: {
+ name: "String"
+ }
+ },
+ preferredAppGroupType: {
+ required: true,
+ nullable: false,
+ serializedName: "properties.preferredAppGroupType",
+ type: {
+ name: "String"
+ }
+ },
+ startVMOnConnect: {
+ serializedName: "properties.startVMOnConnect",
+ type: {
+ name: "Boolean"
+ }
+ },
+ migrationRequest: {
+ serializedName: "properties.migrationRequest",
+ type: {
+ name: "Composite",
+ className: "MigrationRequestProperties"
+ }
+ },
+ cloudPcResource: {
+ readOnly: true,
+ serializedName: "properties.cloudPcResource",
+ type: {
+ name: "Boolean"
+ }
+ },
+ publicNetworkAccess: {
+ nullable: false,
+ serializedName: "properties.publicNetworkAccess",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const RegistrationInfoPatch: msRest.CompositeMapper = {
+ serializedName: "RegistrationInfoPatch",
+ type: {
+ name: "Composite",
+ className: "RegistrationInfoPatch",
+ modelProperties: {
+ expirationTime: {
+ serializedName: "expirationTime",
+ type: {
+ name: "DateTime"
+ }
+ },
+ registrationTokenOperation: {
+ serializedName: "registrationTokenOperation",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const HostPoolPatch: msRest.CompositeMapper = {
+ serializedName: "HostPoolPatch",
+ type: {
+ name: "Composite",
+ className: "HostPoolPatch",
+ modelProperties: {
+ ...Resource.type.modelProperties,
+ tags: {
+ serializedName: "tags",
+ type: {
+ name: "Dictionary",
+ value: {
+ type: {
+ name: "String"
+ }
+ }
+ }
+ },
+ friendlyName: {
+ serializedName: "properties.friendlyName",
+ type: {
+ name: "String"
+ }
+ },
+ description: {
+ serializedName: "properties.description",
+ type: {
+ name: "String"
+ }
+ },
+ customRdpProperty: {
+ serializedName: "properties.customRdpProperty",
+ type: {
+ name: "String"
+ }
+ },
+ maxSessionLimit: {
+ serializedName: "properties.maxSessionLimit",
+ type: {
+ name: "Number"
+ }
+ },
+ personalDesktopAssignmentType: {
+ serializedName: "properties.personalDesktopAssignmentType",
+ type: {
+ name: "String"
+ }
+ },
+ loadBalancerType: {
+ serializedName: "properties.loadBalancerType",
+ type: {
+ name: "String"
+ }
+ },
+ ring: {
+ serializedName: "properties.ring",
+ type: {
+ name: "Number"
+ }
+ },
+ validationEnvironment: {
+ serializedName: "properties.validationEnvironment",
+ type: {
+ name: "Boolean"
+ }
+ },
+ registrationInfo: {
+ serializedName: "properties.registrationInfo",
+ type: {
+ name: "Composite",
+ className: "RegistrationInfoPatch"
+ }
+ },
+ vmTemplate: {
+ serializedName: "properties.vmTemplate",
+ type: {
+ name: "String"
+ }
+ },
+ ssoadfsAuthority: {
+ serializedName: "properties.ssoadfsAuthority",
+ type: {
+ name: "String"
+ }
+ },
+ ssoClientId: {
+ serializedName: "properties.ssoClientId",
+ type: {
+ name: "String"
+ }
+ },
+ ssoClientSecretKeyVaultPath: {
+ serializedName: "properties.ssoClientSecretKeyVaultPath",
+ type: {
+ name: "String"
+ }
+ },
+ ssoSecretType: {
+ serializedName: "properties.ssoSecretType",
+ type: {
+ name: "String"
+ }
+ },
+ preferredAppGroupType: {
+ serializedName: "properties.preferredAppGroupType",
+ type: {
+ name: "String"
+ }
+ },
+ startVMOnConnect: {
+ serializedName: "properties.startVMOnConnect",
+ type: {
+ name: "Boolean"
+ }
+ },
+ publicNetworkAccess: {
+ serializedName: "properties.publicNetworkAccess",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const SendMessage: msRest.CompositeMapper = {
+ serializedName: "SendMessage",
+ type: {
+ name: "Composite",
+ className: "SendMessage",
+ modelProperties: {
+ messageTitle: {
+ serializedName: "messageTitle",
+ type: {
+ name: "String"
+ }
+ },
+ messageBody: {
+ serializedName: "messageBody",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const MsixPackageDependencies: msRest.CompositeMapper = {
+ serializedName: "MsixPackageDependencies",
+ type: {
+ name: "Composite",
+ className: "MsixPackageDependencies",
+ modelProperties: {
+ dependencyName: {
+ nullable: false,
+ serializedName: "dependencyName",
+ type: {
+ name: "String"
+ }
+ },
+ publisher: {
+ nullable: false,
+ serializedName: "publisher",
+ type: {
+ name: "String"
+ }
+ },
+ minVersion: {
+ nullable: false,
+ serializedName: "minVersion",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const MsixPackageApplications: msRest.CompositeMapper = {
+ serializedName: "MsixPackageApplications",
+ type: {
+ name: "Composite",
+ className: "MsixPackageApplications",
+ modelProperties: {
+ appId: {
+ nullable: false,
+ serializedName: "appId",
+ type: {
+ name: "String"
+ }
+ },
+ description: {
+ nullable: false,
+ serializedName: "description",
+ type: {
+ name: "String"
+ }
+ },
+ appUserModelID: {
+ nullable: false,
+ serializedName: "appUserModelID",
+ type: {
+ name: "String"
+ }
+ },
+ friendlyName: {
+ nullable: false,
+ serializedName: "friendlyName",
+ type: {
+ name: "String"
+ }
+ },
+ iconImageName: {
+ nullable: false,
+ serializedName: "iconImageName",
+ type: {
+ name: "String"
+ }
+ },
+ rawIcon: {
+ serializedName: "rawIcon",
+ type: {
+ name: "ByteArray"
+ }
+ },
+ rawPng: {
+ serializedName: "rawPng",
+ type: {
+ name: "ByteArray"
+ }
+ }
+ }
+ }
+};
+
+export const MSIXPackage: msRest.CompositeMapper = {
+ serializedName: "MSIXPackage",
+ type: {
+ name: "Composite",
+ className: "MSIXPackage",
+ modelProperties: {
+ ...Resource.type.modelProperties,
+ systemData: {
+ serializedName: "systemData",
+ type: {
+ name: "Composite",
+ className: "SystemData"
+ }
+ },
+ imagePath: {
+ nullable: false,
+ serializedName: "properties.imagePath",
+ type: {
+ name: "String"
+ }
+ },
+ packageName: {
+ nullable: false,
+ serializedName: "properties.packageName",
+ type: {
+ name: "String"
+ }
+ },
+ packageFamilyName: {
+ nullable: false,
+ serializedName: "properties.packageFamilyName",
+ type: {
+ name: "String"
+ }
+ },
+ displayName: {
+ nullable: true,
+ serializedName: "properties.displayName",
+ type: {
+ name: "String"
+ }
+ },
+ packageRelativePath: {
+ nullable: false,
+ serializedName: "properties.packageRelativePath",
+ type: {
+ name: "String"
+ }
+ },
+ isRegularRegistration: {
+ nullable: false,
+ serializedName: "properties.isRegularRegistration",
+ type: {
+ name: "Boolean"
+ }
+ },
+ isActive: {
+ nullable: false,
+ serializedName: "properties.isActive",
+ type: {
+ name: "Boolean"
+ }
+ },
+ packageDependencies: {
+ serializedName: "properties.packageDependencies",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "MsixPackageDependencies"
+ }
+ }
+ }
+ },
+ version: {
+ nullable: false,
+ serializedName: "properties.version",
+ type: {
+ name: "String"
+ }
+ },
+ lastUpdated: {
+ nullable: false,
+ serializedName: "properties.lastUpdated",
+ type: {
+ name: "DateTime"
+ }
+ },
+ packageApplications: {
+ nullable: false,
+ serializedName: "properties.packageApplications",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "MsixPackageApplications"
+ }
+ }
+ }
+ }
+ }
+ }
+};
+
+export const MSIXPackagePatch: msRest.CompositeMapper = {
+ serializedName: "MSIXPackagePatch",
+ type: {
+ name: "Composite",
+ className: "MSIXPackagePatch",
+ modelProperties: {
+ ...Resource.type.modelProperties,
+ isActive: {
+ serializedName: "properties.isActive",
+ type: {
+ name: "Boolean"
+ }
+ },
+ isRegularRegistration: {
+ serializedName: "properties.isRegularRegistration",
+ type: {
+ name: "Boolean"
+ }
+ },
+ displayName: {
+ serializedName: "properties.displayName",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const Application: msRest.CompositeMapper = {
+ serializedName: "Application",
+ type: {
+ name: "Composite",
+ className: "Application",
+ modelProperties: {
+ ...Resource.type.modelProperties,
+ systemData: {
+ serializedName: "systemData",
+ type: {
+ name: "Composite",
+ className: "SystemData"
+ }
+ },
+ objectId: {
+ readOnly: true,
+ serializedName: "properties.objectId",
+ type: {
+ name: "String"
+ }
+ },
+ description: {
+ serializedName: "properties.description",
+ type: {
+ name: "String"
+ }
+ },
+ friendlyName: {
+ serializedName: "properties.friendlyName",
+ type: {
+ name: "String"
+ }
+ },
+ filePath: {
+ serializedName: "properties.filePath",
+ type: {
+ name: "String"
+ }
+ },
+ msixPackageFamilyName: {
+ nullable: true,
+ serializedName: "properties.msixPackageFamilyName",
+ type: {
+ name: "String"
+ }
+ },
+ msixPackageApplicationId: {
+ nullable: true,
+ serializedName: "properties.msixPackageApplicationId",
+ type: {
+ name: "String"
+ }
+ },
+ applicationType: {
+ serializedName: "properties.applicationType",
+ type: {
+ name: "String"
+ }
+ },
+ commandLineSetting: {
+ required: true,
+ nullable: false,
+ serializedName: "properties.commandLineSetting",
+ type: {
+ name: "String"
+ }
+ },
+ commandLineArguments: {
+ serializedName: "properties.commandLineArguments",
+ type: {
+ name: "String"
+ }
+ },
+ showInPortal: {
+ serializedName: "properties.showInPortal",
+ type: {
+ name: "Boolean"
+ }
+ },
+ iconPath: {
+ serializedName: "properties.iconPath",
+ type: {
+ name: "String"
+ }
+ },
+ iconIndex: {
+ serializedName: "properties.iconIndex",
+ type: {
+ name: "Number"
+ }
+ },
+ iconHash: {
+ readOnly: true,
+ serializedName: "properties.iconHash",
+ type: {
+ name: "String"
+ }
+ },
+ iconContent: {
+ readOnly: true,
+ serializedName: "properties.iconContent",
+ type: {
+ name: "ByteArray"
+ }
+ }
+ }
+ }
+};
+
+export const ApplicationPatch: msRest.CompositeMapper = {
+ serializedName: "ApplicationPatch",
+ type: {
+ name: "Composite",
+ className: "ApplicationPatch",
+ modelProperties: {
+ tags: {
+ serializedName: "tags",
+ type: {
+ name: "Dictionary",
+ value: {
+ type: {
+ name: "String"
+ }
+ }
+ }
+ },
+ description: {
+ serializedName: "properties.description",
+ type: {
+ name: "String"
+ }
+ },
+ friendlyName: {
+ serializedName: "properties.friendlyName",
+ type: {
+ name: "String"
+ }
+ },
+ filePath: {
+ serializedName: "properties.filePath",
+ type: {
+ name: "String"
+ }
+ },
+ commandLineSetting: {
+ serializedName: "properties.commandLineSetting",
+ type: {
+ name: "String"
+ }
+ },
+ commandLineArguments: {
+ serializedName: "properties.commandLineArguments",
+ type: {
+ name: "String"
+ }
+ },
+ showInPortal: {
+ serializedName: "properties.showInPortal",
+ type: {
+ name: "Boolean"
+ }
+ },
+ iconPath: {
+ serializedName: "properties.iconPath",
+ type: {
+ name: "String"
+ }
+ },
+ iconIndex: {
+ serializedName: "properties.iconIndex",
+ type: {
+ name: "Number"
+ }
+ },
+ msixPackageFamilyName: {
+ nullable: true,
+ serializedName: "properties.msixPackageFamilyName",
+ type: {
+ name: "String"
+ }
+ },
+ msixPackageApplicationId: {
+ nullable: true,
+ serializedName: "properties.msixPackageApplicationId",
+ type: {
+ name: "String"
+ }
+ },
+ applicationType: {
+ serializedName: "properties.applicationType",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const Desktop: msRest.CompositeMapper = {
+ serializedName: "Desktop",
+ type: {
+ name: "Composite",
+ className: "Desktop",
+ modelProperties: {
+ ...Resource.type.modelProperties,
+ systemData: {
+ serializedName: "systemData",
+ type: {
+ name: "Composite",
+ className: "SystemData"
+ }
+ },
+ objectId: {
+ readOnly: true,
+ serializedName: "properties.objectId",
+ type: {
+ name: "String"
+ }
+ },
+ description: {
+ serializedName: "properties.description",
+ type: {
+ name: "String"
+ }
+ },
+ friendlyName: {
+ serializedName: "properties.friendlyName",
+ type: {
+ name: "String"
+ }
+ },
+ iconHash: {
+ readOnly: true,
+ serializedName: "properties.iconHash",
+ type: {
+ name: "String"
+ }
+ },
+ iconContent: {
+ readOnly: true,
+ serializedName: "properties.iconContent",
+ type: {
+ name: "ByteArray"
+ }
+ }
+ }
+ }
+};
+
+export const DesktopPatch: msRest.CompositeMapper = {
+ serializedName: "DesktopPatch",
+ type: {
+ name: "Composite",
+ className: "DesktopPatch",
+ modelProperties: {
+ tags: {
+ serializedName: "tags",
+ type: {
+ name: "Dictionary",
+ value: {
+ type: {
+ name: "String"
+ }
+ }
+ }
+ },
+ description: {
+ serializedName: "properties.description",
+ type: {
+ name: "String"
+ }
+ },
+ friendlyName: {
+ serializedName: "properties.friendlyName",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const StartMenuItem: msRest.CompositeMapper = {
+ serializedName: "StartMenuItem",
+ type: {
+ name: "Composite",
+ className: "StartMenuItem",
+ modelProperties: {
+ ...Resource.type.modelProperties,
+ appAlias: {
+ serializedName: "properties.appAlias",
+ type: {
+ name: "String"
+ }
+ },
+ filePath: {
+ serializedName: "properties.filePath",
+ type: {
+ name: "String"
+ }
+ },
+ commandLineArguments: {
+ serializedName: "properties.commandLineArguments",
+ type: {
+ name: "String"
+ }
+ },
+ iconPath: {
+ serializedName: "properties.iconPath",
+ type: {
+ name: "String"
+ }
+ },
+ iconIndex: {
+ serializedName: "properties.iconIndex",
+ type: {
+ name: "Number"
+ }
+ }
+ }
+ }
+};
+
+export const ExpandMsixImage: msRest.CompositeMapper = {
+ serializedName: "ExpandMsixImage",
+ type: {
+ name: "Composite",
+ className: "ExpandMsixImage",
+ modelProperties: {
+ ...Resource.type.modelProperties,
+ packageAlias: {
+ serializedName: "properties.packageAlias",
+ type: {
+ name: "String"
+ }
+ },
+ imagePath: {
+ nullable: false,
+ serializedName: "properties.imagePath",
+ type: {
+ name: "String"
+ }
+ },
+ packageName: {
+ nullable: false,
+ serializedName: "properties.packageName",
+ type: {
+ name: "String"
+ }
+ },
+ packageFamilyName: {
+ nullable: false,
+ serializedName: "properties.packageFamilyName",
+ type: {
+ name: "String"
+ }
+ },
+ packageFullName: {
+ nullable: false,
+ serializedName: "properties.packageFullName",
+ type: {
+ name: "String"
+ }
+ },
+ displayName: {
+ nullable: true,
+ serializedName: "properties.displayName",
+ type: {
+ name: "String"
+ }
+ },
+ packageRelativePath: {
+ nullable: false,
+ serializedName: "properties.packageRelativePath",
+ type: {
+ name: "String"
+ }
+ },
+ isRegularRegistration: {
+ nullable: false,
+ serializedName: "properties.isRegularRegistration",
+ type: {
+ name: "Boolean"
+ }
+ },
+ isActive: {
+ nullable: false,
+ serializedName: "properties.isActive",
+ type: {
+ name: "Boolean"
+ }
+ },
+ packageDependencies: {
+ nullable: true,
+ serializedName: "properties.packageDependencies",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "MsixPackageDependencies"
+ }
+ }
+ }
+ },
+ version: {
+ nullable: false,
+ serializedName: "properties.version",
+ type: {
+ name: "String"
+ }
+ },
+ lastUpdated: {
+ nullable: false,
+ serializedName: "properties.lastUpdated",
+ type: {
+ name: "DateTime"
+ }
+ },
+ packageApplications: {
+ nullable: false,
+ serializedName: "properties.packageApplications",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "MsixPackageApplications"
+ }
+ }
+ }
+ }
+ }
+ }
+};
+
+export const MSIXImageURI: msRest.CompositeMapper = {
+ serializedName: "MSIXImageURI",
+ type: {
+ name: "Composite",
+ className: "MSIXImageURI",
+ modelProperties: {
+ uri: {
+ serializedName: "uri",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const SessionHostHealthCheckFailureDetails: msRest.CompositeMapper = {
+ serializedName: "SessionHostHealthCheckFailureDetails",
+ type: {
+ name: "Composite",
+ className: "SessionHostHealthCheckFailureDetails",
+ modelProperties: {
+ message: {
+ readOnly: true,
+ serializedName: "message",
+ type: {
+ name: "String"
+ }
+ },
+ errorCode: {
+ readOnly: true,
+ serializedName: "errorCode",
+ type: {
+ name: "Number"
+ }
+ },
+ lastHealthCheckDateTime: {
+ readOnly: true,
+ serializedName: "lastHealthCheckDateTime",
+ type: {
+ name: "DateTime"
+ }
+ }
+ }
+ }
+};
+
+export const SessionHostHealthCheckReport: msRest.CompositeMapper = {
+ serializedName: "SessionHostHealthCheckReport",
+ type: {
+ name: "Composite",
+ className: "SessionHostHealthCheckReport",
+ modelProperties: {
+ healthCheckName: {
+ readOnly: true,
+ serializedName: "healthCheckName",
+ type: {
+ name: "String"
+ }
+ },
+ healthCheckResult: {
+ readOnly: true,
+ serializedName: "healthCheckResult",
+ type: {
+ name: "String"
+ }
+ },
+ additionalFailureDetails: {
+ readOnly: true,
+ serializedName: "additionalFailureDetails",
+ type: {
+ name: "Composite",
+ className: "SessionHostHealthCheckFailureDetails"
+ }
+ }
+ }
+ }
+};
+
+export const SessionHost: msRest.CompositeMapper = {
+ serializedName: "SessionHost",
+ type: {
+ name: "Composite",
+ className: "SessionHost",
+ modelProperties: {
+ ...Resource.type.modelProperties,
+ systemData: {
+ serializedName: "systemData",
+ type: {
+ name: "Composite",
+ className: "SystemData"
+ }
+ },
+ objectId: {
+ readOnly: true,
+ serializedName: "properties.objectId",
+ type: {
+ name: "String"
+ }
+ },
+ lastHeartBeat: {
+ serializedName: "properties.lastHeartBeat",
+ type: {
+ name: "DateTime"
+ }
+ },
+ sessions: {
+ serializedName: "properties.sessions",
+ type: {
+ name: "Number"
+ }
+ },
+ agentVersion: {
+ serializedName: "properties.agentVersion",
+ type: {
+ name: "String"
+ }
+ },
+ allowNewSession: {
+ serializedName: "properties.allowNewSession",
+ type: {
+ name: "Boolean"
+ }
+ },
+ virtualMachineId: {
+ readOnly: true,
+ serializedName: "properties.virtualMachineId",
+ type: {
+ name: "String"
+ }
+ },
+ resourceId: {
+ readOnly: true,
+ serializedName: "properties.resourceId",
+ type: {
+ name: "String"
+ }
+ },
+ assignedUser: {
+ serializedName: "properties.assignedUser",
+ type: {
+ name: "String"
+ }
+ },
+ status: {
+ serializedName: "properties.status",
+ type: {
+ name: "String"
+ }
+ },
+ statusTimestamp: {
+ readOnly: true,
+ serializedName: "properties.statusTimestamp",
+ type: {
+ name: "DateTime"
+ }
+ },
+ osVersion: {
+ serializedName: "properties.osVersion",
+ type: {
+ name: "String"
+ }
+ },
+ sxSStackVersion: {
+ serializedName: "properties.sxSStackVersion",
+ type: {
+ name: "String"
+ }
+ },
+ updateState: {
+ serializedName: "properties.updateState",
+ type: {
+ name: "String"
+ }
+ },
+ lastUpdateTime: {
+ readOnly: true,
+ serializedName: "properties.lastUpdateTime",
+ type: {
+ name: "DateTime"
+ }
+ },
+ updateErrorMessage: {
+ serializedName: "properties.updateErrorMessage",
+ type: {
+ name: "String"
+ }
+ },
+ sessionHostHealthCheckResults: {
+ readOnly: true,
+ serializedName: "properties.sessionHostHealthCheckResults",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "SessionHostHealthCheckReport"
+ }
+ }
+ }
+ }
+ }
+ }
+};
+
+export const SessionHostPatch: msRest.CompositeMapper = {
+ serializedName: "SessionHostPatch",
+ type: {
+ name: "Composite",
+ className: "SessionHostPatch",
+ modelProperties: {
+ ...Resource.type.modelProperties,
+ allowNewSession: {
+ serializedName: "properties.allowNewSession",
+ type: {
+ name: "Boolean"
+ }
+ },
+ assignedUser: {
+ serializedName: "properties.assignedUser",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const UserSession: msRest.CompositeMapper = {
+ serializedName: "UserSession",
+ type: {
+ name: "Composite",
+ className: "UserSession",
+ modelProperties: {
+ ...Resource.type.modelProperties,
+ systemData: {
+ serializedName: "systemData",
+ type: {
+ name: "Composite",
+ className: "SystemData"
+ }
+ },
+ objectId: {
+ readOnly: true,
+ serializedName: "properties.objectId",
+ type: {
+ name: "String"
+ }
+ },
+ userPrincipalName: {
+ serializedName: "properties.userPrincipalName",
+ type: {
+ name: "String"
+ }
+ },
+ applicationType: {
+ serializedName: "properties.applicationType",
+ type: {
+ name: "String"
+ }
+ },
+ sessionState: {
+ serializedName: "properties.sessionState",
+ type: {
+ name: "String"
+ }
+ },
+ activeDirectoryUserName: {
+ serializedName: "properties.activeDirectoryUserName",
+ type: {
+ name: "String"
+ }
+ },
+ createTime: {
+ serializedName: "properties.createTime",
+ type: {
+ name: "DateTime"
+ }
+ }
+ }
+ }
+};
+
+export const Time: msRest.CompositeMapper = {
+ serializedName: "Time",
+ type: {
+ name: "Composite",
+ className: "Time",
+ modelProperties: {
+ hour: {
+ required: true,
+ serializedName: "hour",
+ constraints: {
+ InclusiveMaximum: 23,
+ InclusiveMinimum: 0
+ },
+ type: {
+ name: "Number"
+ }
+ },
+ minute: {
+ required: true,
+ serializedName: "minute",
+ constraints: {
+ InclusiveMaximum: 59,
+ InclusiveMinimum: 0
+ },
+ type: {
+ name: "Number"
+ }
+ }
+ }
+ }
+};
+
+export const ScalingSchedule: msRest.CompositeMapper = {
+ serializedName: "ScalingSchedule",
+ type: {
+ name: "Composite",
+ className: "ScalingSchedule",
+ modelProperties: {
+ name: {
+ serializedName: "name",
+ type: {
+ name: "String"
+ }
+ },
+ daysOfWeek: {
+ serializedName: "daysOfWeek",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "String"
+ }
+ }
+ }
+ },
+ rampUpStartTime: {
+ serializedName: "rampUpStartTime",
+ type: {
+ name: "Composite",
+ className: "Time"
+ }
+ },
+ rampUpLoadBalancingAlgorithm: {
+ serializedName: "rampUpLoadBalancingAlgorithm",
+ type: {
+ name: "String"
+ }
+ },
+ rampUpMinimumHostsPct: {
+ serializedName: "rampUpMinimumHostsPct",
+ constraints: {
+ InclusiveMaximum: 100,
+ InclusiveMinimum: 0
+ },
+ type: {
+ name: "Number"
+ }
+ },
+ rampUpCapacityThresholdPct: {
+ serializedName: "rampUpCapacityThresholdPct",
+ constraints: {
+ InclusiveMaximum: 100,
+ InclusiveMinimum: 1
+ },
+ type: {
+ name: "Number"
+ }
+ },
+ peakStartTime: {
+ serializedName: "peakStartTime",
+ type: {
+ name: "Composite",
+ className: "Time"
+ }
+ },
+ peakLoadBalancingAlgorithm: {
+ serializedName: "peakLoadBalancingAlgorithm",
+ type: {
+ name: "String"
+ }
+ },
+ rampDownStartTime: {
+ serializedName: "rampDownStartTime",
+ type: {
+ name: "Composite",
+ className: "Time"
+ }
+ },
+ rampDownLoadBalancingAlgorithm: {
+ serializedName: "rampDownLoadBalancingAlgorithm",
+ type: {
+ name: "String"
+ }
+ },
+ rampDownMinimumHostsPct: {
+ serializedName: "rampDownMinimumHostsPct",
+ constraints: {
+ InclusiveMaximum: 100,
+ InclusiveMinimum: 0
+ },
+ type: {
+ name: "Number"
+ }
+ },
+ rampDownCapacityThresholdPct: {
+ serializedName: "rampDownCapacityThresholdPct",
+ constraints: {
+ InclusiveMaximum: 100,
+ InclusiveMinimum: 0
+ },
+ type: {
+ name: "Number"
+ }
+ },
+ rampDownForceLogoffUsers: {
+ serializedName: "rampDownForceLogoffUsers",
+ type: {
+ name: "Boolean"
+ }
+ },
+ rampDownStopHostsWhen: {
+ serializedName: "rampDownStopHostsWhen",
+ type: {
+ name: "String"
+ }
+ },
+ rampDownWaitTimeMinutes: {
+ serializedName: "rampDownWaitTimeMinutes",
+ type: {
+ name: "Number"
+ }
+ },
+ rampDownNotificationMessage: {
+ serializedName: "rampDownNotificationMessage",
+ type: {
+ name: "String"
+ }
+ },
+ offPeakStartTime: {
+ serializedName: "offPeakStartTime",
+ type: {
+ name: "Composite",
+ className: "Time"
+ }
+ },
+ offPeakLoadBalancingAlgorithm: {
+ serializedName: "offPeakLoadBalancingAlgorithm",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const ScalingHostPoolReference: msRest.CompositeMapper = {
+ serializedName: "ScalingHostPoolReference",
+ type: {
+ name: "Composite",
+ className: "ScalingHostPoolReference",
+ modelProperties: {
+ hostPoolArmPath: {
+ serializedName: "hostPoolArmPath",
+ type: {
+ name: "String"
+ }
+ },
+ scalingPlanEnabled: {
+ serializedName: "scalingPlanEnabled",
+ type: {
+ name: "Boolean"
+ }
+ }
+ }
+ }
+};
+
+export const ScalingPlan: msRest.CompositeMapper = {
+ serializedName: "ScalingPlan",
+ type: {
+ name: "Composite",
+ className: "ScalingPlan",
+ modelProperties: {
+ ...ResourceModelWithAllowedPropertySet.type.modelProperties,
+ systemData: {
+ serializedName: "systemData",
+ type: {
+ name: "Composite",
+ className: "SystemData"
+ }
+ },
+ objectId: {
+ readOnly: true,
+ serializedName: "properties.objectId",
+ type: {
+ name: "String"
+ }
+ },
+ description: {
+ serializedName: "properties.description",
+ type: {
+ name: "String"
+ }
+ },
+ friendlyName: {
+ serializedName: "properties.friendlyName",
+ type: {
+ name: "String"
+ }
+ },
+ timeZone: {
+ serializedName: "properties.timeZone",
+ type: {
+ name: "String"
+ }
+ },
+ hostPoolType: {
+ nullable: false,
+ serializedName: "properties.hostPoolType",
+ type: {
+ name: "String"
+ }
+ },
+ exclusionTag: {
+ serializedName: "properties.exclusionTag",
+ type: {
+ name: "String"
+ }
+ },
+ schedules: {
+ serializedName: "properties.schedules",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "ScalingSchedule"
+ }
+ }
+ }
+ },
+ hostPoolReferences: {
+ serializedName: "properties.hostPoolReferences",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "ScalingHostPoolReference"
+ }
+ }
+ }
+ }
+ }
+ }
+};
+
+export const ScalingPlanPatch: msRest.CompositeMapper = {
+ serializedName: "ScalingPlanPatch",
+ type: {
+ name: "Composite",
+ className: "ScalingPlanPatch",
+ modelProperties: {
+ tags: {
+ serializedName: "tags",
+ type: {
+ name: "Dictionary",
+ value: {
+ type: {
+ name: "String"
+ }
+ }
+ }
+ },
+ description: {
+ serializedName: "properties.description",
+ type: {
+ name: "String"
+ }
+ },
+ friendlyName: {
+ serializedName: "properties.friendlyName",
+ type: {
+ name: "String"
+ }
+ },
+ timeZone: {
+ serializedName: "properties.timeZone",
+ type: {
+ name: "String"
+ }
+ },
+ exclusionTag: {
+ serializedName: "properties.exclusionTag",
+ type: {
+ name: "String"
+ }
+ },
+ schedules: {
+ serializedName: "properties.schedules",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "ScalingSchedule"
+ }
+ }
+ }
+ },
+ hostPoolReferences: {
+ serializedName: "properties.hostPoolReferences",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "ScalingHostPoolReference"
+ }
+ }
+ }
+ }
+ }
+ }
+};
+
+export const PrivateEndpointConnection: msRest.CompositeMapper = {
+ serializedName: "PrivateEndpointConnection",
+ type: {
+ name: "Composite",
+ className: "PrivateEndpointConnection",
+ modelProperties: {
+ ...Resource.type.modelProperties,
+ privateEndpoint: {
+ serializedName: "properties.privateEndpoint",
+ type: {
+ name: "Composite",
+ className: "PrivateEndpoint"
+ }
+ },
+ privateLinkServiceConnectionState: {
+ required: true,
+ serializedName: "properties.privateLinkServiceConnectionState",
+ type: {
+ name: "Composite",
+ className: "PrivateLinkServiceConnectionState"
+ }
+ },
+ provisioningState: {
+ serializedName: "properties.provisioningState",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const PrivateEndpointConnectionWithSystemData: msRest.CompositeMapper = {
+ serializedName: "PrivateEndpointConnectionWithSystemData",
+ type: {
+ name: "Composite",
+ className: "PrivateEndpointConnectionWithSystemData",
+ modelProperties: {
+ ...PrivateEndpointConnection.type.modelProperties,
+ systemData: {
+ serializedName: "systemData",
+ type: {
+ name: "Composite",
+ className: "SystemData"
+ }
+ }
+ }
+ }
+};
+
+export const PrivateLinkResource: msRest.CompositeMapper = {
+ serializedName: "PrivateLinkResource",
+ type: {
+ name: "Composite",
+ className: "PrivateLinkResource",
+ modelProperties: {
+ ...Resource.type.modelProperties,
+ groupId: {
+ readOnly: true,
+ serializedName: "properties.groupId",
+ type: {
+ name: "String"
+ }
+ },
+ requiredMembers: {
+ readOnly: true,
+ serializedName: "properties.requiredMembers",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "String"
+ }
+ }
+ }
+ },
+ requiredZoneNames: {
+ serializedName: "properties.requiredZoneNames",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+ }
+ }
+};
+
+export const ProxyResource: msRest.CompositeMapper = {
+ serializedName: "ProxyResource",
+ type: {
+ name: "Composite",
+ className: "ProxyResource",
+ modelProperties: {
+ ...Resource.type.modelProperties
+ }
+ }
+};
+
+export const TrackedResource: msRest.CompositeMapper = {
+ serializedName: "TrackedResource",
+ type: {
+ name: "Composite",
+ className: "TrackedResource",
+ modelProperties: {
+ ...Resource.type.modelProperties,
+ tags: {
+ serializedName: "tags",
+ type: {
+ name: "Dictionary",
+ value: {
+ type: {
+ name: "String"
+ }
+ }
+ }
+ },
+ location: {
+ required: true,
+ serializedName: "location",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const AzureEntityResource: msRest.CompositeMapper = {
+ serializedName: "AzureEntityResource",
+ type: {
+ name: "Composite",
+ className: "AzureEntityResource",
+ modelProperties: {
+ ...Resource.type.modelProperties,
+ etag: {
+ readOnly: true,
+ serializedName: "etag",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const PrivateLinkServiceConnectionState: msRest.CompositeMapper = {
+ serializedName: "PrivateLinkServiceConnectionState",
+ type: {
+ name: "Composite",
+ className: "PrivateLinkServiceConnectionState",
+ modelProperties: {
+ status: {
+ serializedName: "status",
+ type: {
+ name: "String"
+ }
+ },
+ description: {
+ serializedName: "description",
+ type: {
+ name: "String"
+ }
+ },
+ actionsRequired: {
+ serializedName: "actionsRequired",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const PrivateEndpoint: msRest.CompositeMapper = {
+ serializedName: "PrivateEndpoint",
+ type: {
+ name: "Composite",
+ className: "PrivateEndpoint",
+ modelProperties: {
+ id: {
+ readOnly: true,
+ serializedName: "id",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const Plan: msRest.CompositeMapper = {
+ serializedName: "Plan",
+ type: {
+ name: "Composite",
+ className: "Plan",
+ modelProperties: {
+ name: {
+ required: true,
+ serializedName: "name",
+ type: {
+ name: "String"
+ }
+ },
+ publisher: {
+ required: true,
+ serializedName: "publisher",
+ type: {
+ name: "String"
+ }
+ },
+ product: {
+ required: true,
+ serializedName: "product",
+ type: {
+ name: "String"
+ }
+ },
+ promotionCode: {
+ serializedName: "promotionCode",
+ type: {
+ name: "String"
+ }
+ },
+ version: {
+ serializedName: "version",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const Sku: msRest.CompositeMapper = {
+ serializedName: "Sku",
+ type: {
+ name: "Composite",
+ className: "Sku",
+ modelProperties: {
+ name: {
+ required: true,
+ serializedName: "name",
+ type: {
+ name: "String"
+ }
+ },
+ tier: {
+ serializedName: "tier",
+ type: {
+ name: "Enum",
+ allowedValues: [
+ "Free",
+ "Basic",
+ "Standard",
+ "Premium"
+ ]
+ }
+ },
+ size: {
+ serializedName: "size",
+ type: {
+ name: "String"
+ }
+ },
+ family: {
+ serializedName: "family",
+ type: {
+ name: "String"
+ }
+ },
+ capacity: {
+ serializedName: "capacity",
+ type: {
+ name: "Number"
+ }
+ }
+ }
+ }
+};
+
+export const Identity: msRest.CompositeMapper = {
+ serializedName: "Identity",
+ type: {
+ name: "Composite",
+ className: "Identity",
+ modelProperties: {
+ principalId: {
+ readOnly: true,
+ serializedName: "principalId",
+ type: {
+ name: "String"
+ }
+ },
+ tenantId: {
+ readOnly: true,
+ serializedName: "tenantId",
+ type: {
+ name: "String"
+ }
+ },
+ type: {
+ serializedName: "type",
+ type: {
+ name: "Enum",
+ allowedValues: [
+ "SystemAssigned"
+ ]
+ }
+ }
+ }
+ }
+};
+
+export const ResourceModelWithAllowedPropertySetIdentity: msRest.CompositeMapper = {
+ serializedName: "ResourceModelWithAllowedPropertySet_identity",
+ type: {
+ name: "Composite",
+ className: "ResourceModelWithAllowedPropertySetIdentity",
+ modelProperties: {
+ ...Identity.type.modelProperties
+ }
+ }
+};
+
+export const ResourceModelWithAllowedPropertySetSku: msRest.CompositeMapper = {
+ serializedName: "ResourceModelWithAllowedPropertySet_sku",
+ type: {
+ name: "Composite",
+ className: "ResourceModelWithAllowedPropertySetSku",
+ modelProperties: {
+ ...Sku.type.modelProperties
+ }
+ }
+};
+
+export const ResourceModelWithAllowedPropertySetPlan: msRest.CompositeMapper = {
+ serializedName: "ResourceModelWithAllowedPropertySet_plan",
+ type: {
+ name: "Composite",
+ className: "ResourceModelWithAllowedPropertySetPlan",
+ modelProperties: {
+ ...Plan.type.modelProperties
+ }
+ }
+};
+
+export const ResourceProviderOperationList: msRest.CompositeMapper = {
+ serializedName: "ResourceProviderOperationList",
+ type: {
+ name: "Composite",
+ className: "ResourceProviderOperationList",
+ modelProperties: {
+ value: {
+ serializedName: "",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "ResourceProviderOperation"
+ }
+ }
+ }
+ },
+ nextLink: {
+ readOnly: true,
+ serializedName: "nextLink",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const WorkspaceList: msRest.CompositeMapper = {
+ serializedName: "WorkspaceList",
+ type: {
+ name: "Composite",
+ className: "WorkspaceList",
+ modelProperties: {
+ value: {
+ serializedName: "",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "Workspace"
+ }
+ }
+ }
+ },
+ nextLink: {
+ readOnly: true,
+ serializedName: "nextLink",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const ScalingPlanList: msRest.CompositeMapper = {
+ serializedName: "ScalingPlanList",
+ type: {
+ name: "Composite",
+ className: "ScalingPlanList",
+ modelProperties: {
+ value: {
+ serializedName: "",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "ScalingPlan"
+ }
+ }
+ }
+ },
+ nextLink: {
+ readOnly: true,
+ serializedName: "nextLink",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const ApplicationGroupList: msRest.CompositeMapper = {
+ serializedName: "ApplicationGroupList",
+ type: {
+ name: "Composite",
+ className: "ApplicationGroupList",
+ modelProperties: {
+ value: {
+ serializedName: "",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "ApplicationGroup"
+ }
+ }
+ }
+ },
+ nextLink: {
+ readOnly: true,
+ serializedName: "nextLink",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const StartMenuItemList: msRest.CompositeMapper = {
+ serializedName: "StartMenuItemList",
+ type: {
+ name: "Composite",
+ className: "StartMenuItemList",
+ modelProperties: {
+ value: {
+ serializedName: "",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "StartMenuItem"
+ }
+ }
+ }
+ },
+ nextLink: {
+ readOnly: true,
+ serializedName: "nextLink",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const ApplicationList: msRest.CompositeMapper = {
+ serializedName: "ApplicationList",
+ type: {
+ name: "Composite",
+ className: "ApplicationList",
+ modelProperties: {
+ value: {
+ serializedName: "",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "Application"
+ }
+ }
+ }
+ },
+ nextLink: {
+ readOnly: true,
+ serializedName: "nextLink",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const DesktopList: msRest.CompositeMapper = {
+ serializedName: "DesktopList",
+ type: {
+ name: "Composite",
+ className: "DesktopList",
+ modelProperties: {
+ value: {
+ serializedName: "",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "Desktop"
+ }
+ }
+ }
+ },
+ nextLink: {
+ readOnly: true,
+ serializedName: "nextLink",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const HostPoolList: msRest.CompositeMapper = {
+ serializedName: "HostPoolList",
+ type: {
+ name: "Composite",
+ className: "HostPoolList",
+ modelProperties: {
+ value: {
+ serializedName: "",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "HostPool"
+ }
+ }
+ }
+ },
+ nextLink: {
+ readOnly: true,
+ serializedName: "nextLink",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const UserSessionList: msRest.CompositeMapper = {
+ serializedName: "UserSessionList",
+ type: {
+ name: "Composite",
+ className: "UserSessionList",
+ modelProperties: {
+ value: {
+ serializedName: "",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "UserSession"
+ }
+ }
+ }
+ },
+ nextLink: {
+ readOnly: true,
+ serializedName: "nextLink",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const SessionHostList: msRest.CompositeMapper = {
+ serializedName: "SessionHostList",
+ type: {
+ name: "Composite",
+ className: "SessionHostList",
+ modelProperties: {
+ value: {
+ serializedName: "",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "SessionHost"
+ }
+ }
+ }
+ },
+ nextLink: {
+ readOnly: true,
+ serializedName: "nextLink",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const MSIXPackageList: msRest.CompositeMapper = {
+ serializedName: "MSIXPackageList",
+ type: {
+ name: "Composite",
+ className: "MSIXPackageList",
+ modelProperties: {
+ value: {
+ serializedName: "",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "MSIXPackage"
+ }
+ }
+ }
+ },
+ nextLink: {
+ readOnly: true,
+ serializedName: "nextLink",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const ExpandMsixImageList: msRest.CompositeMapper = {
+ serializedName: "ExpandMsixImageList",
+ type: {
+ name: "Composite",
+ className: "ExpandMsixImageList",
+ modelProperties: {
+ value: {
+ serializedName: "",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "ExpandMsixImage"
+ }
+ }
+ }
+ },
+ nextLink: {
+ readOnly: true,
+ serializedName: "nextLink",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const PrivateEndpointConnectionListResultWithSystemData: msRest.CompositeMapper = {
+ serializedName: "PrivateEndpointConnectionListResultWithSystemData",
+ type: {
+ name: "Composite",
+ className: "PrivateEndpointConnectionListResultWithSystemData",
+ modelProperties: {
+ value: {
+ serializedName: "",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "PrivateEndpointConnectionWithSystemData"
+ }
+ }
+ }
+ },
+ nextLink: {
+ readOnly: true,
+ serializedName: "nextLink",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const PrivateLinkResourceListResult: msRest.CompositeMapper = {
+ serializedName: "PrivateLinkResourceListResult",
+ type: {
+ name: "Composite",
+ className: "PrivateLinkResourceListResult",
+ modelProperties: {
+ value: {
+ serializedName: "",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "PrivateLinkResource"
+ }
+ }
+ }
+ },
+ nextLink: {
+ readOnly: true,
+ serializedName: "nextLink",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/msixImagesMappers.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/msixImagesMappers.ts
new file mode 100644
index 000000000000..acca1c55f2c0
--- /dev/null
+++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/msixImagesMappers.ts
@@ -0,0 +1,57 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the MIT License.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is regenerated.
+ */
+
+export {
+ Application,
+ ApplicationGroup,
+ ApplicationGroupPatch,
+ AzureEntityResource,
+ BaseResource,
+ CloudError,
+ CloudErrorProperties,
+ Desktop,
+ ExpandMsixImage,
+ ExpandMsixImageList,
+ HostPool,
+ HostPoolPatch,
+ Identity,
+ MigrationRequestProperties,
+ MSIXImageURI,
+ MSIXPackage,
+ MsixPackageApplications,
+ MsixPackageDependencies,
+ MSIXPackagePatch,
+ Plan,
+ PrivateEndpoint,
+ PrivateEndpointConnection,
+ PrivateEndpointConnectionWithSystemData,
+ PrivateLinkResource,
+ PrivateLinkServiceConnectionState,
+ ProxyResource,
+ RegistrationInfo,
+ RegistrationInfoPatch,
+ Resource,
+ ResourceModelWithAllowedPropertySet,
+ ResourceModelWithAllowedPropertySetIdentity,
+ ResourceModelWithAllowedPropertySetPlan,
+ ResourceModelWithAllowedPropertySetSku,
+ ScalingHostPoolReference,
+ ScalingPlan,
+ ScalingSchedule,
+ SessionHost,
+ SessionHostHealthCheckFailureDetails,
+ SessionHostHealthCheckReport,
+ SessionHostPatch,
+ Sku,
+ StartMenuItem,
+ SystemData,
+ Time,
+ TrackedResource,
+ UserSession,
+ Workspace
+} from "../models/mappers";
diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/operationsMappers.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/operationsMappers.ts
new file mode 100644
index 000000000000..f6e2ee935489
--- /dev/null
+++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/operationsMappers.ts
@@ -0,0 +1,18 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the MIT License.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is regenerated.
+ */
+
+export {
+ CloudError,
+ CloudErrorProperties,
+ LogSpecification,
+ OperationProperties,
+ ResourceProviderOperation,
+ ResourceProviderOperationDisplay,
+ ResourceProviderOperationList,
+ ServiceSpecification
+} from "../models/mappers";
diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/parameters.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/parameters.ts
new file mode 100644
index 000000000000..1f8fd2f0935d
--- /dev/null
+++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/parameters.ts
@@ -0,0 +1,232 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the MIT License.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is
+ * regenerated.
+ */
+
+import * as msRest from "@azure/ms-rest-js";
+
+export const acceptLanguage: msRest.OperationParameter = {
+ parameterPath: "acceptLanguage",
+ mapper: {
+ serializedName: "accept-language",
+ defaultValue: 'en-US',
+ type: {
+ name: "String"
+ }
+ }
+};
+export const apiVersion: msRest.OperationQueryParameter = {
+ parameterPath: "apiVersion",
+ mapper: {
+ required: true,
+ serializedName: "api-version",
+ constraints: {
+ MinLength: 1
+ },
+ type: {
+ name: "String"
+ }
+ }
+};
+export const applicationGroupName: msRest.OperationURLParameter = {
+ parameterPath: "applicationGroupName",
+ mapper: {
+ required: true,
+ serializedName: "applicationGroupName",
+ constraints: {
+ MaxLength: 64,
+ MinLength: 3
+ },
+ type: {
+ name: "String"
+ }
+ }
+};
+export const applicationName: msRest.OperationURLParameter = {
+ parameterPath: "applicationName",
+ mapper: {
+ required: true,
+ serializedName: "applicationName",
+ constraints: {
+ MaxLength: 24,
+ MinLength: 3
+ },
+ type: {
+ name: "String"
+ }
+ }
+};
+export const desktopName: msRest.OperationURLParameter = {
+ parameterPath: "desktopName",
+ mapper: {
+ required: true,
+ serializedName: "desktopName",
+ constraints: {
+ MaxLength: 24,
+ MinLength: 3
+ },
+ type: {
+ name: "String"
+ }
+ }
+};
+export const filter: msRest.OperationQueryParameter = {
+ parameterPath: [
+ "options",
+ "filter"
+ ],
+ mapper: {
+ serializedName: "$filter",
+ type: {
+ name: "String"
+ }
+ }
+};
+export const force: msRest.OperationQueryParameter = {
+ parameterPath: [
+ "options",
+ "force"
+ ],
+ mapper: {
+ serializedName: "force",
+ type: {
+ name: "Boolean"
+ }
+ }
+};
+export const hostPoolName: msRest.OperationURLParameter = {
+ parameterPath: "hostPoolName",
+ mapper: {
+ required: true,
+ serializedName: "hostPoolName",
+ constraints: {
+ MaxLength: 64,
+ MinLength: 3
+ },
+ type: {
+ name: "String"
+ }
+ }
+};
+export const msixPackageFullName: msRest.OperationURLParameter = {
+ parameterPath: "msixPackageFullName",
+ mapper: {
+ required: true,
+ serializedName: "msixPackageFullName",
+ constraints: {
+ MaxLength: 100,
+ MinLength: 3
+ },
+ type: {
+ name: "String"
+ }
+ }
+};
+export const nextPageLink: msRest.OperationURLParameter = {
+ parameterPath: "nextPageLink",
+ mapper: {
+ required: true,
+ serializedName: "nextLink",
+ type: {
+ name: "String"
+ }
+ },
+ skipEncoding: true
+};
+export const privateEndpointConnectionName: msRest.OperationURLParameter = {
+ parameterPath: "privateEndpointConnectionName",
+ mapper: {
+ required: true,
+ serializedName: "privateEndpointConnectionName",
+ type: {
+ name: "String"
+ }
+ }
+};
+export const resourceGroupName: msRest.OperationURLParameter = {
+ parameterPath: "resourceGroupName",
+ mapper: {
+ required: true,
+ serializedName: "resourceGroupName",
+ constraints: {
+ MaxLength: 90,
+ MinLength: 1
+ },
+ type: {
+ name: "String"
+ }
+ }
+};
+export const scalingPlanName: msRest.OperationURLParameter = {
+ parameterPath: "scalingPlanName",
+ mapper: {
+ required: true,
+ serializedName: "scalingPlanName",
+ constraints: {
+ MaxLength: 64,
+ MinLength: 3
+ },
+ type: {
+ name: "String"
+ }
+ }
+};
+export const sessionHostName: msRest.OperationURLParameter = {
+ parameterPath: "sessionHostName",
+ mapper: {
+ required: true,
+ serializedName: "sessionHostName",
+ constraints: {
+ MaxLength: 48,
+ MinLength: 3
+ },
+ type: {
+ name: "String"
+ }
+ }
+};
+export const subscriptionId: msRest.OperationURLParameter = {
+ parameterPath: "subscriptionId",
+ mapper: {
+ required: true,
+ serializedName: "subscriptionId",
+ constraints: {
+ MinLength: 1
+ },
+ type: {
+ name: "String"
+ }
+ }
+};
+export const userSessionId: msRest.OperationURLParameter = {
+ parameterPath: "userSessionId",
+ mapper: {
+ required: true,
+ serializedName: "userSessionId",
+ constraints: {
+ MaxLength: 24,
+ MinLength: 1
+ },
+ type: {
+ name: "String"
+ }
+ }
+};
+export const workspaceName: msRest.OperationURLParameter = {
+ parameterPath: "workspaceName",
+ mapper: {
+ required: true,
+ serializedName: "workspaceName",
+ constraints: {
+ MaxLength: 64,
+ MinLength: 3
+ },
+ type: {
+ name: "String"
+ }
+ }
+};
diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/privateEndpointConnectionsMappers.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/privateEndpointConnectionsMappers.ts
new file mode 100644
index 000000000000..65ffd40ddbe6
--- /dev/null
+++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/privateEndpointConnectionsMappers.ts
@@ -0,0 +1,56 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the MIT License.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is regenerated.
+ */
+
+export {
+ Application,
+ ApplicationGroup,
+ ApplicationGroupPatch,
+ AzureEntityResource,
+ BaseResource,
+ CloudError,
+ CloudErrorProperties,
+ Desktop,
+ ExpandMsixImage,
+ HostPool,
+ HostPoolPatch,
+ Identity,
+ MigrationRequestProperties,
+ MSIXPackage,
+ MsixPackageApplications,
+ MsixPackageDependencies,
+ MSIXPackagePatch,
+ Plan,
+ PrivateEndpoint,
+ PrivateEndpointConnection,
+ PrivateEndpointConnectionListResultWithSystemData,
+ PrivateEndpointConnectionWithSystemData,
+ PrivateLinkResource,
+ PrivateLinkServiceConnectionState,
+ ProxyResource,
+ RegistrationInfo,
+ RegistrationInfoPatch,
+ Resource,
+ ResourceModelWithAllowedPropertySet,
+ ResourceModelWithAllowedPropertySetIdentity,
+ ResourceModelWithAllowedPropertySetPlan,
+ ResourceModelWithAllowedPropertySetSku,
+ ScalingHostPoolReference,
+ ScalingPlan,
+ ScalingSchedule,
+ SessionHost,
+ SessionHostHealthCheckFailureDetails,
+ SessionHostHealthCheckReport,
+ SessionHostPatch,
+ Sku,
+ StartMenuItem,
+ SystemData,
+ Time,
+ TrackedResource,
+ UserSession,
+ Workspace
+} from "../models/mappers";
diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/privateLinkResourcesMappers.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/privateLinkResourcesMappers.ts
new file mode 100644
index 000000000000..12da66a5c269
--- /dev/null
+++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/privateLinkResourcesMappers.ts
@@ -0,0 +1,56 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the MIT License.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is regenerated.
+ */
+
+export {
+ Application,
+ ApplicationGroup,
+ ApplicationGroupPatch,
+ AzureEntityResource,
+ BaseResource,
+ CloudError,
+ CloudErrorProperties,
+ Desktop,
+ ExpandMsixImage,
+ HostPool,
+ HostPoolPatch,
+ Identity,
+ MigrationRequestProperties,
+ MSIXPackage,
+ MsixPackageApplications,
+ MsixPackageDependencies,
+ MSIXPackagePatch,
+ Plan,
+ PrivateEndpoint,
+ PrivateEndpointConnection,
+ PrivateEndpointConnectionWithSystemData,
+ PrivateLinkResource,
+ PrivateLinkResourceListResult,
+ PrivateLinkServiceConnectionState,
+ ProxyResource,
+ RegistrationInfo,
+ RegistrationInfoPatch,
+ Resource,
+ ResourceModelWithAllowedPropertySet,
+ ResourceModelWithAllowedPropertySetIdentity,
+ ResourceModelWithAllowedPropertySetPlan,
+ ResourceModelWithAllowedPropertySetSku,
+ ScalingHostPoolReference,
+ ScalingPlan,
+ ScalingSchedule,
+ SessionHost,
+ SessionHostHealthCheckFailureDetails,
+ SessionHostHealthCheckReport,
+ SessionHostPatch,
+ Sku,
+ StartMenuItem,
+ SystemData,
+ Time,
+ TrackedResource,
+ UserSession,
+ Workspace
+} from "../models/mappers";
diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/scalingPlansMappers.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/scalingPlansMappers.ts
new file mode 100644
index 000000000000..4da477f6b3fe
--- /dev/null
+++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/scalingPlansMappers.ts
@@ -0,0 +1,57 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the MIT License.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is regenerated.
+ */
+
+export {
+ Application,
+ ApplicationGroup,
+ ApplicationGroupPatch,
+ AzureEntityResource,
+ BaseResource,
+ CloudError,
+ CloudErrorProperties,
+ Desktop,
+ ExpandMsixImage,
+ HostPool,
+ HostPoolPatch,
+ Identity,
+ MigrationRequestProperties,
+ MSIXPackage,
+ MsixPackageApplications,
+ MsixPackageDependencies,
+ MSIXPackagePatch,
+ Plan,
+ PrivateEndpoint,
+ PrivateEndpointConnection,
+ PrivateEndpointConnectionWithSystemData,
+ PrivateLinkResource,
+ PrivateLinkServiceConnectionState,
+ ProxyResource,
+ RegistrationInfo,
+ RegistrationInfoPatch,
+ Resource,
+ ResourceModelWithAllowedPropertySet,
+ ResourceModelWithAllowedPropertySetIdentity,
+ ResourceModelWithAllowedPropertySetPlan,
+ ResourceModelWithAllowedPropertySetSku,
+ ScalingHostPoolReference,
+ ScalingPlan,
+ ScalingPlanList,
+ ScalingPlanPatch,
+ ScalingSchedule,
+ SessionHost,
+ SessionHostHealthCheckFailureDetails,
+ SessionHostHealthCheckReport,
+ SessionHostPatch,
+ Sku,
+ StartMenuItem,
+ SystemData,
+ Time,
+ TrackedResource,
+ UserSession,
+ Workspace
+} from "../models/mappers";
diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/sessionHostsMappers.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/sessionHostsMappers.ts
new file mode 100644
index 000000000000..3f87dcbb3c59
--- /dev/null
+++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/sessionHostsMappers.ts
@@ -0,0 +1,56 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the MIT License.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is regenerated.
+ */
+
+export {
+ Application,
+ ApplicationGroup,
+ ApplicationGroupPatch,
+ AzureEntityResource,
+ BaseResource,
+ CloudError,
+ CloudErrorProperties,
+ Desktop,
+ ExpandMsixImage,
+ HostPool,
+ HostPoolPatch,
+ Identity,
+ MigrationRequestProperties,
+ MSIXPackage,
+ MsixPackageApplications,
+ MsixPackageDependencies,
+ MSIXPackagePatch,
+ Plan,
+ PrivateEndpoint,
+ PrivateEndpointConnection,
+ PrivateEndpointConnectionWithSystemData,
+ PrivateLinkResource,
+ PrivateLinkServiceConnectionState,
+ ProxyResource,
+ RegistrationInfo,
+ RegistrationInfoPatch,
+ Resource,
+ ResourceModelWithAllowedPropertySet,
+ ResourceModelWithAllowedPropertySetIdentity,
+ ResourceModelWithAllowedPropertySetPlan,
+ ResourceModelWithAllowedPropertySetSku,
+ ScalingHostPoolReference,
+ ScalingPlan,
+ ScalingSchedule,
+ SessionHost,
+ SessionHostHealthCheckFailureDetails,
+ SessionHostHealthCheckReport,
+ SessionHostList,
+ SessionHostPatch,
+ Sku,
+ StartMenuItem,
+ SystemData,
+ Time,
+ TrackedResource,
+ UserSession,
+ Workspace
+} from "../models/mappers";
diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/startMenuItemsMappers.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/startMenuItemsMappers.ts
new file mode 100644
index 000000000000..a19540521c9f
--- /dev/null
+++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/startMenuItemsMappers.ts
@@ -0,0 +1,56 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the MIT License.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is regenerated.
+ */
+
+export {
+ Application,
+ ApplicationGroup,
+ ApplicationGroupPatch,
+ AzureEntityResource,
+ BaseResource,
+ CloudError,
+ CloudErrorProperties,
+ Desktop,
+ ExpandMsixImage,
+ HostPool,
+ HostPoolPatch,
+ Identity,
+ MigrationRequestProperties,
+ MSIXPackage,
+ MsixPackageApplications,
+ MsixPackageDependencies,
+ MSIXPackagePatch,
+ Plan,
+ PrivateEndpoint,
+ PrivateEndpointConnection,
+ PrivateEndpointConnectionWithSystemData,
+ PrivateLinkResource,
+ PrivateLinkServiceConnectionState,
+ ProxyResource,
+ RegistrationInfo,
+ RegistrationInfoPatch,
+ Resource,
+ ResourceModelWithAllowedPropertySet,
+ ResourceModelWithAllowedPropertySetIdentity,
+ ResourceModelWithAllowedPropertySetPlan,
+ ResourceModelWithAllowedPropertySetSku,
+ ScalingHostPoolReference,
+ ScalingPlan,
+ ScalingSchedule,
+ SessionHost,
+ SessionHostHealthCheckFailureDetails,
+ SessionHostHealthCheckReport,
+ SessionHostPatch,
+ Sku,
+ StartMenuItem,
+ StartMenuItemList,
+ SystemData,
+ Time,
+ TrackedResource,
+ UserSession,
+ Workspace
+} from "../models/mappers";
diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/userSessionsMappers.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/userSessionsMappers.ts
new file mode 100644
index 000000000000..80aa658dee1b
--- /dev/null
+++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/userSessionsMappers.ts
@@ -0,0 +1,57 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the MIT License.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is regenerated.
+ */
+
+export {
+ Application,
+ ApplicationGroup,
+ ApplicationGroupPatch,
+ AzureEntityResource,
+ BaseResource,
+ CloudError,
+ CloudErrorProperties,
+ Desktop,
+ ExpandMsixImage,
+ HostPool,
+ HostPoolPatch,
+ Identity,
+ MigrationRequestProperties,
+ MSIXPackage,
+ MsixPackageApplications,
+ MsixPackageDependencies,
+ MSIXPackagePatch,
+ Plan,
+ PrivateEndpoint,
+ PrivateEndpointConnection,
+ PrivateEndpointConnectionWithSystemData,
+ PrivateLinkResource,
+ PrivateLinkServiceConnectionState,
+ ProxyResource,
+ RegistrationInfo,
+ RegistrationInfoPatch,
+ Resource,
+ ResourceModelWithAllowedPropertySet,
+ ResourceModelWithAllowedPropertySetIdentity,
+ ResourceModelWithAllowedPropertySetPlan,
+ ResourceModelWithAllowedPropertySetSku,
+ ScalingHostPoolReference,
+ ScalingPlan,
+ ScalingSchedule,
+ SendMessage,
+ SessionHost,
+ SessionHostHealthCheckFailureDetails,
+ SessionHostHealthCheckReport,
+ SessionHostPatch,
+ Sku,
+ StartMenuItem,
+ SystemData,
+ Time,
+ TrackedResource,
+ UserSession,
+ UserSessionList,
+ Workspace
+} from "../models/mappers";
diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/workspacesMappers.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/workspacesMappers.ts
new file mode 100644
index 000000000000..bde999a7e8b7
--- /dev/null
+++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/workspacesMappers.ts
@@ -0,0 +1,57 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the MIT License.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is regenerated.
+ */
+
+export {
+ Application,
+ ApplicationGroup,
+ ApplicationGroupPatch,
+ AzureEntityResource,
+ BaseResource,
+ CloudError,
+ CloudErrorProperties,
+ Desktop,
+ ExpandMsixImage,
+ HostPool,
+ HostPoolPatch,
+ Identity,
+ MigrationRequestProperties,
+ MSIXPackage,
+ MsixPackageApplications,
+ MsixPackageDependencies,
+ MSIXPackagePatch,
+ Plan,
+ PrivateEndpoint,
+ PrivateEndpointConnection,
+ PrivateEndpointConnectionWithSystemData,
+ PrivateLinkResource,
+ PrivateLinkServiceConnectionState,
+ ProxyResource,
+ RegistrationInfo,
+ RegistrationInfoPatch,
+ Resource,
+ ResourceModelWithAllowedPropertySet,
+ ResourceModelWithAllowedPropertySetIdentity,
+ ResourceModelWithAllowedPropertySetPlan,
+ ResourceModelWithAllowedPropertySetSku,
+ ScalingHostPoolReference,
+ ScalingPlan,
+ ScalingSchedule,
+ SessionHost,
+ SessionHostHealthCheckFailureDetails,
+ SessionHostHealthCheckReport,
+ SessionHostPatch,
+ Sku,
+ StartMenuItem,
+ SystemData,
+ Time,
+ TrackedResource,
+ UserSession,
+ Workspace,
+ WorkspaceList,
+ WorkspacePatch
+} from "../models/mappers";
diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/applicationGroups.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/applicationGroups.ts
new file mode 100644
index 000000000000..8fd08d43f89a
--- /dev/null
+++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/applicationGroups.ts
@@ -0,0 +1,484 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the MIT License.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is
+ * regenerated.
+ */
+
+import * as msRest from "@azure/ms-rest-js";
+import * as Models from "../models";
+import * as Mappers from "../models/applicationGroupsMappers";
+import * as Parameters from "../models/parameters";
+import { DesktopVirtualizationAPIClientContext } from "../desktopVirtualizationAPIClientContext";
+
+/** Class representing a ApplicationGroups. */
+export class ApplicationGroups {
+ private readonly client: DesktopVirtualizationAPIClientContext;
+
+ /**
+ * Create a ApplicationGroups.
+ * @param {DesktopVirtualizationAPIClientContext} client Reference to the service client.
+ */
+ constructor(client: DesktopVirtualizationAPIClientContext) {
+ this.client = client;
+ }
+
+ /**
+ * Get an application group.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ get(resourceGroupName: string, applicationGroupName: string, options?: msRest.RequestOptionsBase): Promise;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param callback The callback
+ */
+ get(resourceGroupName: string, applicationGroupName: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ get(resourceGroupName: string, applicationGroupName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void;
+ get(resourceGroupName: string, applicationGroupName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroupName,
+ applicationGroupName,
+ options
+ },
+ getOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * Create or update an applicationGroup.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param applicationGroup Object containing ApplicationGroup definitions.
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ createOrUpdate(resourceGroupName: string, applicationGroupName: string, applicationGroup: Models.ApplicationGroup, options?: msRest.RequestOptionsBase): Promise;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param applicationGroup Object containing ApplicationGroup definitions.
+ * @param callback The callback
+ */
+ createOrUpdate(resourceGroupName: string, applicationGroupName: string, applicationGroup: Models.ApplicationGroup, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param applicationGroup Object containing ApplicationGroup definitions.
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ createOrUpdate(resourceGroupName: string, applicationGroupName: string, applicationGroup: Models.ApplicationGroup, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void;
+ createOrUpdate(resourceGroupName: string, applicationGroupName: string, applicationGroup: Models.ApplicationGroup, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroupName,
+ applicationGroupName,
+ applicationGroup,
+ options
+ },
+ createOrUpdateOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * Remove an applicationGroup.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ deleteMethod(resourceGroupName: string, applicationGroupName: string, options?: msRest.RequestOptionsBase): Promise;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param callback The callback
+ */
+ deleteMethod(resourceGroupName: string, applicationGroupName: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ deleteMethod(resourceGroupName: string, applicationGroupName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void;
+ deleteMethod(resourceGroupName: string, applicationGroupName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroupName,
+ applicationGroupName,
+ options
+ },
+ deleteMethodOperationSpec,
+ callback);
+ }
+
+ /**
+ * Update an applicationGroup.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ update(resourceGroupName: string, applicationGroupName: string, options?: Models.ApplicationGroupsUpdateOptionalParams): Promise;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param callback The callback
+ */
+ update(resourceGroupName: string, applicationGroupName: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ update(resourceGroupName: string, applicationGroupName: string, options: Models.ApplicationGroupsUpdateOptionalParams, callback: msRest.ServiceCallback): void;
+ update(resourceGroupName: string, applicationGroupName: string, options?: Models.ApplicationGroupsUpdateOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroupName,
+ applicationGroupName,
+ options
+ },
+ updateOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * List applicationGroups.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ listByResourceGroup(resourceGroupName: string, options?: Models.ApplicationGroupsListByResourceGroupOptionalParams): Promise;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param callback The callback
+ */
+ listByResourceGroup(resourceGroupName: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ listByResourceGroup(resourceGroupName: string, options: Models.ApplicationGroupsListByResourceGroupOptionalParams, callback: msRest.ServiceCallback): void;
+ listByResourceGroup(resourceGroupName: string, options?: Models.ApplicationGroupsListByResourceGroupOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroupName,
+ options
+ },
+ listByResourceGroupOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * List applicationGroups in subscription.
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ listBySubscription(options?: Models.ApplicationGroupsListBySubscriptionOptionalParams): Promise;
+ /**
+ * @param callback The callback
+ */
+ listBySubscription(callback: msRest.ServiceCallback): void;
+ /**
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ listBySubscription(options: Models.ApplicationGroupsListBySubscriptionOptionalParams, callback: msRest.ServiceCallback): void;
+ listBySubscription(options?: Models.ApplicationGroupsListBySubscriptionOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ options
+ },
+ listBySubscriptionOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * List applicationGroups.
+ * @param nextPageLink The NextLink from the previous successful call to List operation.
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ listByResourceGroupNext(nextPageLink: string, options?: Models.ApplicationGroupsListByResourceGroupNextOptionalParams): Promise;
+ /**
+ * @param nextPageLink The NextLink from the previous successful call to List operation.
+ * @param callback The callback
+ */
+ listByResourceGroupNext(nextPageLink: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param nextPageLink The NextLink from the previous successful call to List operation.
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ listByResourceGroupNext(nextPageLink: string, options: Models.ApplicationGroupsListByResourceGroupNextOptionalParams, callback: msRest.ServiceCallback): void;
+ listByResourceGroupNext(nextPageLink: string, options?: Models.ApplicationGroupsListByResourceGroupNextOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ nextPageLink,
+ options
+ },
+ listByResourceGroupNextOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * List applicationGroups in subscription.
+ * @param nextPageLink The NextLink from the previous successful call to List operation.
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ listBySubscriptionNext(nextPageLink: string, options?: Models.ApplicationGroupsListBySubscriptionNextOptionalParams): Promise;
+ /**
+ * @param nextPageLink The NextLink from the previous successful call to List operation.
+ * @param callback The callback
+ */
+ listBySubscriptionNext(nextPageLink: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param nextPageLink The NextLink from the previous successful call to List operation.
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ listBySubscriptionNext(nextPageLink: string, options: Models.ApplicationGroupsListBySubscriptionNextOptionalParams, callback: msRest.ServiceCallback): void;
+ listBySubscriptionNext(nextPageLink: string, options?: Models.ApplicationGroupsListBySubscriptionNextOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ nextPageLink,
+ options
+ },
+ listBySubscriptionNextOperationSpec,
+ callback) as Promise;
+ }
+}
+
+// Operation Specifications
+const serializer = new msRest.Serializer(Mappers);
+const getOperationSpec: msRest.OperationSpec = {
+ httpMethod: "GET",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroupName,
+ Parameters.applicationGroupName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 200: {
+ bodyMapper: Mappers.ApplicationGroup
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ serializer
+};
+
+const createOrUpdateOperationSpec: msRest.OperationSpec = {
+ httpMethod: "PUT",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroupName,
+ Parameters.applicationGroupName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ requestBody: {
+ parameterPath: "applicationGroup",
+ mapper: {
+ ...Mappers.ApplicationGroup,
+ required: true
+ }
+ },
+ responses: {
+ 200: {
+ bodyMapper: Mappers.ApplicationGroup
+ },
+ 201: {
+ bodyMapper: Mappers.ApplicationGroup
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ serializer
+};
+
+const deleteMethodOperationSpec: msRest.OperationSpec = {
+ httpMethod: "DELETE",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroupName,
+ Parameters.applicationGroupName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 200: {},
+ 204: {},
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ serializer
+};
+
+const updateOperationSpec: msRest.OperationSpec = {
+ httpMethod: "PATCH",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroupName,
+ Parameters.applicationGroupName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ requestBody: {
+ parameterPath: [
+ "options",
+ "applicationGroup"
+ ],
+ mapper: Mappers.ApplicationGroupPatch
+ },
+ responses: {
+ 200: {
+ bodyMapper: Mappers.ApplicationGroup
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ serializer
+};
+
+const listByResourceGroupOperationSpec: msRest.OperationSpec = {
+ httpMethod: "GET",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroupName
+ ],
+ queryParameters: [
+ Parameters.apiVersion,
+ Parameters.filter
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 200: {
+ bodyMapper: Mappers.ApplicationGroupList
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ serializer
+};
+
+const listBySubscriptionOperationSpec: msRest.OperationSpec = {
+ httpMethod: "GET",
+ path: "subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/applicationGroups",
+ urlParameters: [
+ Parameters.subscriptionId
+ ],
+ queryParameters: [
+ Parameters.apiVersion,
+ Parameters.filter
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 200: {
+ bodyMapper: Mappers.ApplicationGroupList
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ serializer
+};
+
+const listByResourceGroupNextOperationSpec: msRest.OperationSpec = {
+ httpMethod: "GET",
+ baseUrl: "https://management.azure.com",
+ path: "{nextLink}",
+ urlParameters: [
+ Parameters.nextPageLink
+ ],
+ queryParameters: [
+ Parameters.apiVersion,
+ Parameters.filter
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 200: {
+ bodyMapper: Mappers.ApplicationGroupList
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ serializer
+};
+
+const listBySubscriptionNextOperationSpec: msRest.OperationSpec = {
+ httpMethod: "GET",
+ baseUrl: "https://management.azure.com",
+ path: "{nextLink}",
+ urlParameters: [
+ Parameters.nextPageLink
+ ],
+ queryParameters: [
+ Parameters.apiVersion,
+ Parameters.filter
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 200: {
+ bodyMapper: Mappers.ApplicationGroupList
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ serializer
+};
diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/applications.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/applications.ts
new file mode 100644
index 000000000000..755e640f2c0e
--- /dev/null
+++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/applications.ts
@@ -0,0 +1,406 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the MIT License.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is
+ * regenerated.
+ */
+
+import * as msRest from "@azure/ms-rest-js";
+import * as Models from "../models";
+import * as Mappers from "../models/applicationsMappers";
+import * as Parameters from "../models/parameters";
+import { DesktopVirtualizationAPIClientContext } from "../desktopVirtualizationAPIClientContext";
+
+/** Class representing a Applications. */
+export class Applications {
+ private readonly client: DesktopVirtualizationAPIClientContext;
+
+ /**
+ * Create a Applications.
+ * @param {DesktopVirtualizationAPIClientContext} client Reference to the service client.
+ */
+ constructor(client: DesktopVirtualizationAPIClientContext) {
+ this.client = client;
+ }
+
+ /**
+ * Get an application.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param applicationName The name of the application within the specified application group
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ get(resourceGroupName: string, applicationGroupName: string, applicationName: string, options?: msRest.RequestOptionsBase): Promise;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param applicationName The name of the application within the specified application group
+ * @param callback The callback
+ */
+ get(resourceGroupName: string, applicationGroupName: string, applicationName: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param applicationName The name of the application within the specified application group
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ get(resourceGroupName: string, applicationGroupName: string, applicationName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void;
+ get(resourceGroupName: string, applicationGroupName: string, applicationName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroupName,
+ applicationGroupName,
+ applicationName,
+ options
+ },
+ getOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * Create or update an application.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param applicationName The name of the application within the specified application group
+ * @param application Object containing Application definitions.
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ createOrUpdate(resourceGroupName: string, applicationGroupName: string, applicationName: string, application: Models.Application, options?: msRest.RequestOptionsBase): Promise;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param applicationName The name of the application within the specified application group
+ * @param application Object containing Application definitions.
+ * @param callback The callback
+ */
+ createOrUpdate(resourceGroupName: string, applicationGroupName: string, applicationName: string, application: Models.Application, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param applicationName The name of the application within the specified application group
+ * @param application Object containing Application definitions.
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ createOrUpdate(resourceGroupName: string, applicationGroupName: string, applicationName: string, application: Models.Application, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void;
+ createOrUpdate(resourceGroupName: string, applicationGroupName: string, applicationName: string, application: Models.Application, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroupName,
+ applicationGroupName,
+ applicationName,
+ application,
+ options
+ },
+ createOrUpdateOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * Remove an application.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param applicationName The name of the application within the specified application group
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ deleteMethod(resourceGroupName: string, applicationGroupName: string, applicationName: string, options?: msRest.RequestOptionsBase): Promise;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param applicationName The name of the application within the specified application group
+ * @param callback The callback
+ */
+ deleteMethod(resourceGroupName: string, applicationGroupName: string, applicationName: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param applicationName The name of the application within the specified application group
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ deleteMethod(resourceGroupName: string, applicationGroupName: string, applicationName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void;
+ deleteMethod(resourceGroupName: string, applicationGroupName: string, applicationName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroupName,
+ applicationGroupName,
+ applicationName,
+ options
+ },
+ deleteMethodOperationSpec,
+ callback);
+ }
+
+ /**
+ * Update an application.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param applicationName The name of the application within the specified application group
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ update(resourceGroupName: string, applicationGroupName: string, applicationName: string, options?: Models.ApplicationsUpdateOptionalParams): Promise;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param applicationName The name of the application within the specified application group
+ * @param callback The callback
+ */
+ update(resourceGroupName: string, applicationGroupName: string, applicationName: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param applicationName The name of the application within the specified application group
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ update(resourceGroupName: string, applicationGroupName: string, applicationName: string, options: Models.ApplicationsUpdateOptionalParams, callback: msRest.ServiceCallback): void;
+ update(resourceGroupName: string, applicationGroupName: string, applicationName: string, options?: Models.ApplicationsUpdateOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroupName,
+ applicationGroupName,
+ applicationName,
+ options
+ },
+ updateOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * List applications.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ list(resourceGroupName: string, applicationGroupName: string, options?: msRest.RequestOptionsBase): Promise;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param callback The callback
+ */
+ list(resourceGroupName: string, applicationGroupName: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ list(resourceGroupName: string, applicationGroupName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void;
+ list(resourceGroupName: string, applicationGroupName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroupName,
+ applicationGroupName,
+ options
+ },
+ listOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * List applications.
+ * @param nextPageLink The NextLink from the previous successful call to List operation.
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ listNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise;
+ /**
+ * @param nextPageLink The NextLink from the previous successful call to List operation.
+ * @param callback The callback
+ */
+ listNext(nextPageLink: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param nextPageLink The NextLink from the previous successful call to List operation.
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ listNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void;
+ listNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ nextPageLink,
+ options
+ },
+ listNextOperationSpec,
+ callback) as Promise;
+ }
+}
+
+// Operation Specifications
+const serializer = new msRest.Serializer(Mappers);
+const getOperationSpec: msRest.OperationSpec = {
+ httpMethod: "GET",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/applications/{applicationName}",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroupName,
+ Parameters.applicationGroupName,
+ Parameters.applicationName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 200: {
+ bodyMapper: Mappers.Application
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ serializer
+};
+
+const createOrUpdateOperationSpec: msRest.OperationSpec = {
+ httpMethod: "PUT",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/applications/{applicationName}",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroupName,
+ Parameters.applicationGroupName,
+ Parameters.applicationName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ requestBody: {
+ parameterPath: "application",
+ mapper: {
+ ...Mappers.Application,
+ required: true
+ }
+ },
+ responses: {
+ 200: {
+ bodyMapper: Mappers.Application
+ },
+ 201: {
+ bodyMapper: Mappers.Application
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ serializer
+};
+
+const deleteMethodOperationSpec: msRest.OperationSpec = {
+ httpMethod: "DELETE",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/applications/{applicationName}",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroupName,
+ Parameters.applicationGroupName,
+ Parameters.applicationName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 200: {},
+ 204: {},
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ serializer
+};
+
+const updateOperationSpec: msRest.OperationSpec = {
+ httpMethod: "PATCH",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/applications/{applicationName}",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroupName,
+ Parameters.applicationGroupName,
+ Parameters.applicationName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ requestBody: {
+ parameterPath: [
+ "options",
+ "application"
+ ],
+ mapper: Mappers.ApplicationPatch
+ },
+ responses: {
+ 200: {
+ bodyMapper: Mappers.Application
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ serializer
+};
+
+const listOperationSpec: msRest.OperationSpec = {
+ httpMethod: "GET",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/applications",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroupName,
+ Parameters.applicationGroupName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 200: {
+ bodyMapper: Mappers.ApplicationList
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ serializer
+};
+
+const listNextOperationSpec: msRest.OperationSpec = {
+ httpMethod: "GET",
+ baseUrl: "https://management.azure.com",
+ path: "{nextLink}",
+ urlParameters: [
+ Parameters.nextPageLink
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 200: {
+ bodyMapper: Mappers.ApplicationList
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ serializer
+};
diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/desktops.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/desktops.ts
new file mode 100644
index 000000000000..07fb879a616d
--- /dev/null
+++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/desktops.ts
@@ -0,0 +1,269 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the MIT License.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is
+ * regenerated.
+ */
+
+import * as msRest from "@azure/ms-rest-js";
+import * as Models from "../models";
+import * as Mappers from "../models/desktopsMappers";
+import * as Parameters from "../models/parameters";
+import { DesktopVirtualizationAPIClientContext } from "../desktopVirtualizationAPIClientContext";
+
+/** Class representing a Desktops. */
+export class Desktops {
+ private readonly client: DesktopVirtualizationAPIClientContext;
+
+ /**
+ * Create a Desktops.
+ * @param {DesktopVirtualizationAPIClientContext} client Reference to the service client.
+ */
+ constructor(client: DesktopVirtualizationAPIClientContext) {
+ this.client = client;
+ }
+
+ /**
+ * Get a desktop.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param desktopName The name of the desktop within the specified desktop group
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ get(resourceGroupName: string, applicationGroupName: string, desktopName: string, options?: msRest.RequestOptionsBase): Promise;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param desktopName The name of the desktop within the specified desktop group
+ * @param callback The callback
+ */
+ get(resourceGroupName: string, applicationGroupName: string, desktopName: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param desktopName The name of the desktop within the specified desktop group
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ get(resourceGroupName: string, applicationGroupName: string, desktopName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void;
+ get(resourceGroupName: string, applicationGroupName: string, desktopName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroupName,
+ applicationGroupName,
+ desktopName,
+ options
+ },
+ getOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * Update a desktop.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param desktopName The name of the desktop within the specified desktop group
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ update(resourceGroupName: string, applicationGroupName: string, desktopName: string, options?: Models.DesktopsUpdateOptionalParams): Promise;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param desktopName The name of the desktop within the specified desktop group
+ * @param callback The callback
+ */
+ update(resourceGroupName: string, applicationGroupName: string, desktopName: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param desktopName The name of the desktop within the specified desktop group
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ update(resourceGroupName: string, applicationGroupName: string, desktopName: string, options: Models.DesktopsUpdateOptionalParams, callback: msRest.ServiceCallback): void;
+ update(resourceGroupName: string, applicationGroupName: string, desktopName: string, options?: Models.DesktopsUpdateOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroupName,
+ applicationGroupName,
+ desktopName,
+ options
+ },
+ updateOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * List desktops.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ list(resourceGroupName: string, applicationGroupName: string, options?: msRest.RequestOptionsBase): Promise;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param callback The callback
+ */
+ list(resourceGroupName: string, applicationGroupName: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param applicationGroupName The name of the application group
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ list(resourceGroupName: string, applicationGroupName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void;
+ list(resourceGroupName: string, applicationGroupName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroupName,
+ applicationGroupName,
+ options
+ },
+ listOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * List desktops.
+ * @param nextPageLink The NextLink from the previous successful call to List operation.
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ listNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise;
+ /**
+ * @param nextPageLink The NextLink from the previous successful call to List operation.
+ * @param callback The callback
+ */
+ listNext(nextPageLink: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param nextPageLink The NextLink from the previous successful call to List operation.
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ listNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void;
+ listNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ nextPageLink,
+ options
+ },
+ listNextOperationSpec,
+ callback) as Promise;
+ }
+}
+
+// Operation Specifications
+const serializer = new msRest.Serializer(Mappers);
+const getOperationSpec: msRest.OperationSpec = {
+ httpMethod: "GET",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/desktops/{desktopName}",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroupName,
+ Parameters.applicationGroupName,
+ Parameters.desktopName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 200: {
+ bodyMapper: Mappers.Desktop
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ serializer
+};
+
+const updateOperationSpec: msRest.OperationSpec = {
+ httpMethod: "PATCH",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/desktops/{desktopName}",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroupName,
+ Parameters.applicationGroupName,
+ Parameters.desktopName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ requestBody: {
+ parameterPath: [
+ "options",
+ "desktop"
+ ],
+ mapper: Mappers.DesktopPatch
+ },
+ responses: {
+ 200: {
+ bodyMapper: Mappers.Desktop
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ serializer
+};
+
+const listOperationSpec: msRest.OperationSpec = {
+ httpMethod: "GET",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/desktops",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroupName,
+ Parameters.applicationGroupName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 200: {
+ bodyMapper: Mappers.DesktopList
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ serializer
+};
+
+const listNextOperationSpec: msRest.OperationSpec = {
+ httpMethod: "GET",
+ baseUrl: "https://management.azure.com",
+ path: "{nextLink}",
+ urlParameters: [
+ Parameters.nextPageLink
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 200: {
+ bodyMapper: Mappers.DesktopList
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ serializer
+};
diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/hostPools.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/hostPools.ts
new file mode 100644
index 000000000000..4d435e973eb1
--- /dev/null
+++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/hostPools.ts
@@ -0,0 +1,538 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the MIT License.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is
+ * regenerated.
+ */
+
+import * as msRest from "@azure/ms-rest-js";
+import * as Models from "../models";
+import * as Mappers from "../models/hostPoolsMappers";
+import * as Parameters from "../models/parameters";
+import { DesktopVirtualizationAPIClientContext } from "../desktopVirtualizationAPIClientContext";
+
+/** Class representing a HostPools. */
+export class HostPools {
+ private readonly client: DesktopVirtualizationAPIClientContext;
+
+ /**
+ * Create a HostPools.
+ * @param {DesktopVirtualizationAPIClientContext} client Reference to the service client.
+ */
+ constructor(client: DesktopVirtualizationAPIClientContext) {
+ this.client = client;
+ }
+
+ /**
+ * Get a host pool.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param hostPoolName The name of the host pool within the specified resource group
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ get(resourceGroupName: string, hostPoolName: string, options?: msRest.RequestOptionsBase): Promise;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param hostPoolName The name of the host pool within the specified resource group
+ * @param callback The callback
+ */
+ get(resourceGroupName: string, hostPoolName: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param hostPoolName The name of the host pool within the specified resource group
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ get(resourceGroupName: string, hostPoolName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void;
+ get(resourceGroupName: string, hostPoolName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroupName,
+ hostPoolName,
+ options
+ },
+ getOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * Create or update a host pool.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param hostPoolName The name of the host pool within the specified resource group
+ * @param hostPool Object containing HostPool definitions.
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ createOrUpdate(resourceGroupName: string, hostPoolName: string, hostPool: Models.HostPool, options?: msRest.RequestOptionsBase): Promise;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param hostPoolName The name of the host pool within the specified resource group
+ * @param hostPool Object containing HostPool definitions.
+ * @param callback The callback
+ */
+ createOrUpdate(resourceGroupName: string, hostPoolName: string, hostPool: Models.HostPool, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param hostPoolName The name of the host pool within the specified resource group
+ * @param hostPool Object containing HostPool definitions.
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ createOrUpdate(resourceGroupName: string, hostPoolName: string, hostPool: Models.HostPool, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void;
+ createOrUpdate(resourceGroupName: string, hostPoolName: string, hostPool: Models.HostPool, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroupName,
+ hostPoolName,
+ hostPool,
+ options
+ },
+ createOrUpdateOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * Remove a host pool.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param hostPoolName The name of the host pool within the specified resource group
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ deleteMethod(resourceGroupName: string, hostPoolName: string, options?: Models.HostPoolsDeleteMethodOptionalParams): Promise;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param hostPoolName The name of the host pool within the specified resource group
+ * @param callback The callback
+ */
+ deleteMethod(resourceGroupName: string, hostPoolName: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param hostPoolName The name of the host pool within the specified resource group
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ deleteMethod(resourceGroupName: string, hostPoolName: string, options: Models.HostPoolsDeleteMethodOptionalParams, callback: msRest.ServiceCallback): void;
+ deleteMethod(resourceGroupName: string, hostPoolName: string, options?: Models.HostPoolsDeleteMethodOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroupName,
+ hostPoolName,
+ options
+ },
+ deleteMethodOperationSpec,
+ callback);
+ }
+
+ /**
+ * Update a host pool.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param hostPoolName The name of the host pool within the specified resource group
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ update(resourceGroupName: string, hostPoolName: string, options?: Models.HostPoolsUpdateOptionalParams): Promise;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param hostPoolName The name of the host pool within the specified resource group
+ * @param callback The callback
+ */
+ update(resourceGroupName: string, hostPoolName: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param hostPoolName The name of the host pool within the specified resource group
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ update(resourceGroupName: string, hostPoolName: string, options: Models.HostPoolsUpdateOptionalParams, callback: msRest.ServiceCallback): void;
+ update(resourceGroupName: string, hostPoolName: string, options?: Models.HostPoolsUpdateOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroupName,
+ hostPoolName,
+ options
+ },
+ updateOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * List hostPools.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ listByResourceGroup(resourceGroupName: string, options?: msRest.RequestOptionsBase): Promise;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param callback The callback
+ */
+ listByResourceGroup(resourceGroupName: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ listByResourceGroup(resourceGroupName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void;
+ listByResourceGroup(resourceGroupName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroupName,
+ options
+ },
+ listByResourceGroupOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * List hostPools in subscription.
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ list(options?: msRest.RequestOptionsBase): Promise;
+ /**
+ * @param callback The callback
+ */
+ list(callback: msRest.ServiceCallback): void;
+ /**
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ list(options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void;
+ list(options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ options
+ },
+ listOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * Registration token of the host pool.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param hostPoolName The name of the host pool within the specified resource group
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ retrieveRegistrationToken(resourceGroupName: string, hostPoolName: string, options?: msRest.RequestOptionsBase): Promise;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param hostPoolName The name of the host pool within the specified resource group
+ * @param callback The callback
+ */
+ retrieveRegistrationToken(resourceGroupName: string, hostPoolName: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param hostPoolName The name of the host pool within the specified resource group
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ retrieveRegistrationToken(resourceGroupName: string, hostPoolName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void;
+ retrieveRegistrationToken(resourceGroupName: string, hostPoolName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroupName,
+ hostPoolName,
+ options
+ },
+ retrieveRegistrationTokenOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * List hostPools.
+ * @param nextPageLink The NextLink from the previous successful call to List operation.
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ listByResourceGroupNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise;
+ /**
+ * @param nextPageLink The NextLink from the previous successful call to List operation.
+ * @param callback The callback
+ */
+ listByResourceGroupNext(nextPageLink: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param nextPageLink The NextLink from the previous successful call to List operation.
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ listByResourceGroupNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void;
+ listByResourceGroupNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ nextPageLink,
+ options
+ },
+ listByResourceGroupNextOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * List hostPools in subscription.
+ * @param nextPageLink The NextLink from the previous successful call to List operation.
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ listNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise;
+ /**
+ * @param nextPageLink The NextLink from the previous successful call to List operation.
+ * @param callback The callback
+ */
+ listNext(nextPageLink: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param nextPageLink The NextLink from the previous successful call to List operation.
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ listNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void;
+ listNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ nextPageLink,
+ options
+ },
+ listNextOperationSpec,
+ callback) as Promise;
+ }
+}
+
+// Operation Specifications
+const serializer = new msRest.Serializer(Mappers);
+const getOperationSpec: msRest.OperationSpec = {
+ httpMethod: "GET",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroupName,
+ Parameters.hostPoolName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 200: {
+ bodyMapper: Mappers.HostPool
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ serializer
+};
+
+const createOrUpdateOperationSpec: msRest.OperationSpec = {
+ httpMethod: "PUT",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroupName,
+ Parameters.hostPoolName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ requestBody: {
+ parameterPath: "hostPool",
+ mapper: {
+ ...Mappers.HostPool,
+ required: true
+ }
+ },
+ responses: {
+ 200: {
+ bodyMapper: Mappers.HostPool
+ },
+ 201: {
+ bodyMapper: Mappers.HostPool
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ serializer
+};
+
+const deleteMethodOperationSpec: msRest.OperationSpec = {
+ httpMethod: "DELETE",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroupName,
+ Parameters.hostPoolName
+ ],
+ queryParameters: [
+ Parameters.apiVersion,
+ Parameters.force
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 200: {},
+ 204: {},
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ serializer
+};
+
+const updateOperationSpec: msRest.OperationSpec = {
+ httpMethod: "PATCH",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroupName,
+ Parameters.hostPoolName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ requestBody: {
+ parameterPath: [
+ "options",
+ "hostPool"
+ ],
+ mapper: Mappers.HostPoolPatch
+ },
+ responses: {
+ 200: {
+ bodyMapper: Mappers.HostPool
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ serializer
+};
+
+const listByResourceGroupOperationSpec: msRest.OperationSpec = {
+ httpMethod: "GET",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroupName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 200: {
+ bodyMapper: Mappers.HostPoolList
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ serializer
+};
+
+const listOperationSpec: msRest.OperationSpec = {
+ httpMethod: "GET",
+ path: "subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/hostPools",
+ urlParameters: [
+ Parameters.subscriptionId
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 200: {
+ bodyMapper: Mappers.HostPoolList
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ serializer
+};
+
+const retrieveRegistrationTokenOperationSpec: msRest.OperationSpec = {
+ httpMethod: "POST",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/retrieveRegistrationToken",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroupName,
+ Parameters.hostPoolName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 200: {
+ bodyMapper: Mappers.RegistrationInfo
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ serializer
+};
+
+const listByResourceGroupNextOperationSpec: msRest.OperationSpec = {
+ httpMethod: "GET",
+ baseUrl: "https://management.azure.com",
+ path: "{nextLink}",
+ urlParameters: [
+ Parameters.nextPageLink
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 200: {
+ bodyMapper: Mappers.HostPoolList
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ serializer
+};
+
+const listNextOperationSpec: msRest.OperationSpec = {
+ httpMethod: "GET",
+ baseUrl: "https://management.azure.com",
+ path: "{nextLink}",
+ urlParameters: [
+ Parameters.nextPageLink
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 200: {
+ bodyMapper: Mappers.HostPoolList
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ serializer
+};
diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/index.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/index.ts
new file mode 100644
index 000000000000..45a45f52fb3d
--- /dev/null
+++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/index.ts
@@ -0,0 +1,23 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the MIT License.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is
+ * regenerated.
+ */
+
+export * from "./operations";
+export * from "./workspaces";
+export * from "./scalingPlans";
+export * from "./applicationGroups";
+export * from "./startMenuItems";
+export * from "./applications";
+export * from "./desktops";
+export * from "./hostPools";
+export * from "./userSessions";
+export * from "./sessionHosts";
+export * from "./mSIXPackages";
+export * from "./msixImages";
+export * from "./privateEndpointConnections";
+export * from "./privateLinkResources";
diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/mSIXPackages.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/mSIXPackages.ts
new file mode 100644
index 000000000000..f6a9e3e02faa
--- /dev/null
+++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/mSIXPackages.ts
@@ -0,0 +1,418 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the MIT License.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is
+ * regenerated.
+ */
+
+import * as msRest from "@azure/ms-rest-js";
+import * as Models from "../models";
+import * as Mappers from "../models/mSIXPackagesMappers";
+import * as Parameters from "../models/parameters";
+import { DesktopVirtualizationAPIClientContext } from "../desktopVirtualizationAPIClientContext";
+
+/** Class representing a MSIXPackages. */
+export class MSIXPackages {
+ private readonly client: DesktopVirtualizationAPIClientContext;
+
+ /**
+ * Create a MSIXPackages.
+ * @param {DesktopVirtualizationAPIClientContext} client Reference to the service client.
+ */
+ constructor(client: DesktopVirtualizationAPIClientContext) {
+ this.client = client;
+ }
+
+ /**
+ * Get a msixpackage.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param hostPoolName The name of the host pool within the specified resource group
+ * @param msixPackageFullName The version specific package full name of the MSIX package within
+ * specified hostpool
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ get(resourceGroupName: string, hostPoolName: string, msixPackageFullName: string, options?: msRest.RequestOptionsBase): Promise;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param hostPoolName The name of the host pool within the specified resource group
+ * @param msixPackageFullName The version specific package full name of the MSIX package within
+ * specified hostpool
+ * @param callback The callback
+ */
+ get(resourceGroupName: string, hostPoolName: string, msixPackageFullName: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param hostPoolName The name of the host pool within the specified resource group
+ * @param msixPackageFullName The version specific package full name of the MSIX package within
+ * specified hostpool
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ get(resourceGroupName: string, hostPoolName: string, msixPackageFullName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void;
+ get(resourceGroupName: string, hostPoolName: string, msixPackageFullName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroupName,
+ hostPoolName,
+ msixPackageFullName,
+ options
+ },
+ getOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * Create or update a MSIX package.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param hostPoolName The name of the host pool within the specified resource group
+ * @param msixPackageFullName The version specific package full name of the MSIX package within
+ * specified hostpool
+ * @param msixPackage Object containing MSIX Package definitions.
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ createOrUpdate(resourceGroupName: string, hostPoolName: string, msixPackageFullName: string, msixPackage: Models.MSIXPackage, options?: msRest.RequestOptionsBase): Promise;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param hostPoolName The name of the host pool within the specified resource group
+ * @param msixPackageFullName The version specific package full name of the MSIX package within
+ * specified hostpool
+ * @param msixPackage Object containing MSIX Package definitions.
+ * @param callback The callback
+ */
+ createOrUpdate(resourceGroupName: string, hostPoolName: string, msixPackageFullName: string, msixPackage: Models.MSIXPackage, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param hostPoolName The name of the host pool within the specified resource group
+ * @param msixPackageFullName The version specific package full name of the MSIX package within
+ * specified hostpool
+ * @param msixPackage Object containing MSIX Package definitions.
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ createOrUpdate(resourceGroupName: string, hostPoolName: string, msixPackageFullName: string, msixPackage: Models.MSIXPackage, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void;
+ createOrUpdate(resourceGroupName: string, hostPoolName: string, msixPackageFullName: string, msixPackage: Models.MSIXPackage, options?: msRest.RequestOptionsBase | msRest.ServiceCallback