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) + +![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js/sdk/desktopvirtualization/arm-desktopvirtualization/README.png) 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, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + hostPoolName, + msixPackageFullName, + msixPackage, + options + }, + createOrUpdateOperationSpec, + callback) as Promise; + } + + /** + * Remove an 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 [options] The optional parameters + * @returns Promise + */ + deleteMethod(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 + */ + deleteMethod(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 + */ + deleteMethod(resourceGroupName: string, hostPoolName: string, msixPackageFullName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + deleteMethod(resourceGroupName: string, hostPoolName: string, msixPackageFullName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + hostPoolName, + msixPackageFullName, + options + }, + deleteMethodOperationSpec, + callback); + } + + /** + * Update an 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 [options] The optional parameters + * @returns Promise + */ + update(resourceGroupName: string, hostPoolName: string, msixPackageFullName: string, options?: Models.MSIXPackagesUpdateOptionalParams): 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 + */ + update(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 + */ + update(resourceGroupName: string, hostPoolName: string, msixPackageFullName: string, options: Models.MSIXPackagesUpdateOptionalParams, callback: msRest.ServiceCallback): void; + update(resourceGroupName: string, hostPoolName: string, msixPackageFullName: string, options?: Models.MSIXPackagesUpdateOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + hostPoolName, + msixPackageFullName, + options + }, + updateOperationSpec, + callback) as Promise; + } + + /** + * List MSIX packages in hostpool. + * @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 + */ + list(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 + */ + list(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 + */ + list(resourceGroupName: string, hostPoolName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + list(resourceGroupName: string, hostPoolName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + hostPoolName, + options + }, + listOperationSpec, + callback) as Promise; + } + + /** + * List MSIX packages in hostpool. + * @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}/msixPackages/{msixPackageFullName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + Parameters.msixPackageFullName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.MSIXPackage + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const createOrUpdateOperationSpec: msRest.OperationSpec = { + httpMethod: "PUT", + path: "subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/msixPackages/{msixPackageFullName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + Parameters.msixPackageFullName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: "msixPackage", + mapper: { + ...Mappers.MSIXPackage, + required: true + } + }, + responses: { + 200: { + bodyMapper: Mappers.MSIXPackage + }, + 201: { + bodyMapper: Mappers.MSIXPackage + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const deleteMethodOperationSpec: msRest.OperationSpec = { + httpMethod: "DELETE", + path: "subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/msixPackages/{msixPackageFullName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + Parameters.msixPackageFullName + ], + 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/hostPools/{hostPoolName}/msixPackages/{msixPackageFullName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + Parameters.msixPackageFullName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: [ + "options", + "msixPackage" + ], + mapper: Mappers.MSIXPackagePatch + }, + responses: { + 200: { + bodyMapper: Mappers.MSIXPackage + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/msixPackages", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.MSIXPackageList + }, + 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.MSIXPackageList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/msixImages.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/msixImages.ts new file mode 100644 index 000000000000..bd777817f2fe --- /dev/null +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/msixImages.ts @@ -0,0 +1,150 @@ +/* + * 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/msixImagesMappers"; +import * as Parameters from "../models/parameters"; +import { DesktopVirtualizationAPIClientContext } from "../desktopVirtualizationAPIClientContext"; + +/** Class representing a MsixImages. */ +export class MsixImages { + private readonly client: DesktopVirtualizationAPIClientContext; + + /** + * Create a MsixImages. + * @param {DesktopVirtualizationAPIClientContext} client Reference to the service client. + */ + constructor(client: DesktopVirtualizationAPIClientContext) { + this.client = client; + } + + /** + * Expands and Lists MSIX packages in an Image, given the Image Path. + * @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 + */ + expand(resourceGroupName: string, hostPoolName: string, options?: Models.MsixImagesExpandOptionalParams): 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 + */ + expand(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 + */ + expand(resourceGroupName: string, hostPoolName: string, options: Models.MsixImagesExpandOptionalParams, callback: msRest.ServiceCallback): void; + expand(resourceGroupName: string, hostPoolName: string, options?: Models.MsixImagesExpandOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + hostPoolName, + options + }, + expandOperationSpec, + callback) as Promise; + } + + /** + * Expands and Lists MSIX packages in an Image, given the Image Path. + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + expandNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + expandNext(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 + */ + expandNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + expandNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + expandNextOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const expandOperationSpec: msRest.OperationSpec = { + httpMethod: "POST", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/expandMsixImage", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: { + uri: [ + "options", + "uri" + ] + }, + mapper: { + ...Mappers.MSIXImageURI, + required: true + } + }, + responses: { + 200: { + bodyMapper: Mappers.ExpandMsixImageList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const expandNextOperationSpec: msRest.OperationSpec = { + httpMethod: "POST", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ExpandMsixImageList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/operations.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/operations.ts new file mode 100644 index 000000000000..3338de9a4610 --- /dev/null +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/operations.ts @@ -0,0 +1,125 @@ +/* + * 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/operationsMappers"; +import * as Parameters from "../models/parameters"; +import { DesktopVirtualizationAPIClientContext } from "../desktopVirtualizationAPIClientContext"; + +/** Class representing a Operations. */ +export class Operations { + private readonly client: DesktopVirtualizationAPIClientContext; + + /** + * Create a Operations. + * @param {DesktopVirtualizationAPIClientContext} client Reference to the service client. + */ + constructor(client: DesktopVirtualizationAPIClientContext) { + this.client = client; + } + + /** + * List all of the available operations the Desktop Virtualization resource provider supports. + * @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; + } + + /** + * List all of the available operations the Desktop Virtualization resource provider supports. + * @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 listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "providers/Microsoft.DesktopVirtualization/operations", + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ResourceProviderOperationList + }, + 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.ResourceProviderOperationList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/privateEndpointConnections.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/privateEndpointConnections.ts new file mode 100644 index 000000000000..15c6c2099a71 --- /dev/null +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/privateEndpointConnections.ts @@ -0,0 +1,657 @@ +/* + * 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/privateEndpointConnectionsMappers"; +import * as Parameters from "../models/parameters"; +import { DesktopVirtualizationAPIClientContext } from "../desktopVirtualizationAPIClientContext"; + +/** Class representing a PrivateEndpointConnections. */ +export class PrivateEndpointConnections { + private readonly client: DesktopVirtualizationAPIClientContext; + + /** + * Create a PrivateEndpointConnections. + * @param {DesktopVirtualizationAPIClientContext} client Reference to the service client. + */ + constructor(client: DesktopVirtualizationAPIClientContext) { + this.client = client; + } + + /** + * List private endpoint connections associated with hostpool. + * @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 + */ + listByHostPool(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 + */ + listByHostPool(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 + */ + listByHostPool(resourceGroupName: string, hostPoolName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listByHostPool(resourceGroupName: string, hostPoolName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + hostPoolName, + options + }, + listByHostPoolOperationSpec, + callback) as Promise; + } + + /** + * Get a private endpoint connection. + * @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 privateEndpointConnectionName The name of the private endpoint connection associated with + * the Azure resource + * @param [options] The optional parameters + * @returns Promise + */ + getByHostPool(resourceGroupName: string, hostPoolName: string, privateEndpointConnectionName: 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 privateEndpointConnectionName The name of the private endpoint connection associated with + * the Azure resource + * @param callback The callback + */ + getByHostPool(resourceGroupName: string, hostPoolName: string, privateEndpointConnectionName: 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 privateEndpointConnectionName The name of the private endpoint connection associated with + * the Azure resource + * @param options The optional parameters + * @param callback The callback + */ + getByHostPool(resourceGroupName: string, hostPoolName: string, privateEndpointConnectionName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + getByHostPool(resourceGroupName: string, hostPoolName: string, privateEndpointConnectionName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + hostPoolName, + privateEndpointConnectionName, + options + }, + getByHostPoolOperationSpec, + callback) as Promise; + } + + /** + * Remove a connection. + * @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 privateEndpointConnectionName The name of the private endpoint connection associated with + * the Azure resource + * @param [options] The optional parameters + * @returns Promise + */ + deleteByHostPool(resourceGroupName: string, hostPoolName: string, privateEndpointConnectionName: 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 privateEndpointConnectionName The name of the private endpoint connection associated with + * the Azure resource + * @param callback The callback + */ + deleteByHostPool(resourceGroupName: string, hostPoolName: string, privateEndpointConnectionName: 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 privateEndpointConnectionName The name of the private endpoint connection associated with + * the Azure resource + * @param options The optional parameters + * @param callback The callback + */ + deleteByHostPool(resourceGroupName: string, hostPoolName: string, privateEndpointConnectionName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + deleteByHostPool(resourceGroupName: string, hostPoolName: string, privateEndpointConnectionName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + hostPoolName, + privateEndpointConnectionName, + options + }, + deleteByHostPoolOperationSpec, + callback); + } + + /** + * Approve or reject a private endpoint connection. + * @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 privateEndpointConnectionName The name of the private endpoint connection associated with + * the Azure resource + * @param connection Object containing the updated connection. + * @param [options] The optional parameters + * @returns Promise + */ + updateByHostPool(resourceGroupName: string, hostPoolName: string, privateEndpointConnectionName: string, connection: Models.PrivateEndpointConnection, 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 privateEndpointConnectionName The name of the private endpoint connection associated with + * the Azure resource + * @param connection Object containing the updated connection. + * @param callback The callback + */ + updateByHostPool(resourceGroupName: string, hostPoolName: string, privateEndpointConnectionName: string, connection: Models.PrivateEndpointConnection, 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 privateEndpointConnectionName The name of the private endpoint connection associated with + * the Azure resource + * @param connection Object containing the updated connection. + * @param options The optional parameters + * @param callback The callback + */ + updateByHostPool(resourceGroupName: string, hostPoolName: string, privateEndpointConnectionName: string, connection: Models.PrivateEndpointConnection, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + updateByHostPool(resourceGroupName: string, hostPoolName: string, privateEndpointConnectionName: string, connection: Models.PrivateEndpointConnection, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + hostPoolName, + privateEndpointConnectionName, + connection, + options + }, + updateByHostPoolOperationSpec, + callback) as Promise; + } + + /** + * List private endpoint connections. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param workspaceName The name of the workspace + * @param [options] The optional parameters + * @returns Promise + */ + listByWorkspace(resourceGroupName: string, workspaceName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param workspaceName The name of the workspace + * @param callback The callback + */ + listByWorkspace(resourceGroupName: string, workspaceName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param workspaceName The name of the workspace + * @param options The optional parameters + * @param callback The callback + */ + listByWorkspace(resourceGroupName: string, workspaceName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listByWorkspace(resourceGroupName: string, workspaceName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + workspaceName, + options + }, + listByWorkspaceOperationSpec, + callback) as Promise; + } + + /** + * Get a private endpoint connection. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param workspaceName The name of the workspace + * @param privateEndpointConnectionName The name of the private endpoint connection associated with + * the Azure resource + * @param [options] The optional parameters + * @returns Promise + */ + getByWorkspace(resourceGroupName: string, workspaceName: string, privateEndpointConnectionName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param workspaceName The name of the workspace + * @param privateEndpointConnectionName The name of the private endpoint connection associated with + * the Azure resource + * @param callback The callback + */ + getByWorkspace(resourceGroupName: string, workspaceName: string, privateEndpointConnectionName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param workspaceName The name of the workspace + * @param privateEndpointConnectionName The name of the private endpoint connection associated with + * the Azure resource + * @param options The optional parameters + * @param callback The callback + */ + getByWorkspace(resourceGroupName: string, workspaceName: string, privateEndpointConnectionName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + getByWorkspace(resourceGroupName: string, workspaceName: string, privateEndpointConnectionName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + workspaceName, + privateEndpointConnectionName, + options + }, + getByWorkspaceOperationSpec, + callback) as Promise; + } + + /** + * Remove a connection. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param workspaceName The name of the workspace + * @param privateEndpointConnectionName The name of the private endpoint connection associated with + * the Azure resource + * @param [options] The optional parameters + * @returns Promise + */ + deleteByWorkspace(resourceGroupName: string, workspaceName: string, privateEndpointConnectionName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param workspaceName The name of the workspace + * @param privateEndpointConnectionName The name of the private endpoint connection associated with + * the Azure resource + * @param callback The callback + */ + deleteByWorkspace(resourceGroupName: string, workspaceName: string, privateEndpointConnectionName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param workspaceName The name of the workspace + * @param privateEndpointConnectionName The name of the private endpoint connection associated with + * the Azure resource + * @param options The optional parameters + * @param callback The callback + */ + deleteByWorkspace(resourceGroupName: string, workspaceName: string, privateEndpointConnectionName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + deleteByWorkspace(resourceGroupName: string, workspaceName: string, privateEndpointConnectionName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + workspaceName, + privateEndpointConnectionName, + options + }, + deleteByWorkspaceOperationSpec, + callback); + } + + /** + * Approve or reject a private endpoint connection. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param workspaceName The name of the workspace + * @param privateEndpointConnectionName The name of the private endpoint connection associated with + * the Azure resource + * @param connection Object containing the updated connection. + * @param [options] The optional parameters + * @returns Promise + */ + updateByWorkspace(resourceGroupName: string, workspaceName: string, privateEndpointConnectionName: string, connection: Models.PrivateEndpointConnection, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param workspaceName The name of the workspace + * @param privateEndpointConnectionName The name of the private endpoint connection associated with + * the Azure resource + * @param connection Object containing the updated connection. + * @param callback The callback + */ + updateByWorkspace(resourceGroupName: string, workspaceName: string, privateEndpointConnectionName: string, connection: Models.PrivateEndpointConnection, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param workspaceName The name of the workspace + * @param privateEndpointConnectionName The name of the private endpoint connection associated with + * the Azure resource + * @param connection Object containing the updated connection. + * @param options The optional parameters + * @param callback The callback + */ + updateByWorkspace(resourceGroupName: string, workspaceName: string, privateEndpointConnectionName: string, connection: Models.PrivateEndpointConnection, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + updateByWorkspace(resourceGroupName: string, workspaceName: string, privateEndpointConnectionName: string, connection: Models.PrivateEndpointConnection, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + workspaceName, + privateEndpointConnectionName, + connection, + options + }, + updateByWorkspaceOperationSpec, + callback) as Promise; + } + + /** + * List private endpoint connections associated with hostpool. + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listByHostPoolNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + listByHostPoolNext(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 + */ + listByHostPoolNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listByHostPoolNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listByHostPoolNextOperationSpec, + callback) as Promise; + } + + /** + * List private endpoint connections. + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listByWorkspaceNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + listByWorkspaceNext(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 + */ + listByWorkspaceNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listByWorkspaceNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listByWorkspaceNextOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listByHostPoolOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/privateEndpointConnections", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.PrivateEndpointConnectionListResultWithSystemData + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const getByHostPoolOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/privateEndpointConnections/{privateEndpointConnectionName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + Parameters.privateEndpointConnectionName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.PrivateEndpointConnectionWithSystemData + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const deleteByHostPoolOperationSpec: msRest.OperationSpec = { + httpMethod: "DELETE", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/privateEndpointConnections/{privateEndpointConnectionName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + Parameters.privateEndpointConnectionName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: {}, + 204: {}, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const updateByHostPoolOperationSpec: msRest.OperationSpec = { + httpMethod: "PUT", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/privateEndpointConnections/{privateEndpointConnectionName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + Parameters.privateEndpointConnectionName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: "connection", + mapper: { + ...Mappers.PrivateEndpointConnection, + required: true + } + }, + responses: { + 200: { + bodyMapper: Mappers.PrivateEndpointConnectionWithSystemData + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listByWorkspaceOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}/privateEndpointConnections", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.workspaceName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.PrivateEndpointConnectionListResultWithSystemData + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const getByWorkspaceOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}/privateEndpointConnections/{privateEndpointConnectionName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.workspaceName, + Parameters.privateEndpointConnectionName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.PrivateEndpointConnectionWithSystemData + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const deleteByWorkspaceOperationSpec: msRest.OperationSpec = { + httpMethod: "DELETE", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}/privateEndpointConnections/{privateEndpointConnectionName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.workspaceName, + Parameters.privateEndpointConnectionName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: {}, + 204: {}, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const updateByWorkspaceOperationSpec: msRest.OperationSpec = { + httpMethod: "PUT", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}/privateEndpointConnections/{privateEndpointConnectionName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.workspaceName, + Parameters.privateEndpointConnectionName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: "connection", + mapper: { + ...Mappers.PrivateEndpointConnection, + required: true + } + }, + responses: { + 200: { + bodyMapper: Mappers.PrivateEndpointConnectionWithSystemData + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listByHostPoolNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.PrivateEndpointConnectionListResultWithSystemData + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listByWorkspaceNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.PrivateEndpointConnectionListResultWithSystemData + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/privateLinkResources.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/privateLinkResources.ts new file mode 100644 index 000000000000..e3f5b1fdf018 --- /dev/null +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/privateLinkResources.ts @@ -0,0 +1,247 @@ +/* + * 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/privateLinkResourcesMappers"; +import * as Parameters from "../models/parameters"; +import { DesktopVirtualizationAPIClientContext } from "../desktopVirtualizationAPIClientContext"; + +/** Class representing a PrivateLinkResources. */ +export class PrivateLinkResources { + private readonly client: DesktopVirtualizationAPIClientContext; + + /** + * Create a PrivateLinkResources. + * @param {DesktopVirtualizationAPIClientContext} client Reference to the service client. + */ + constructor(client: DesktopVirtualizationAPIClientContext) { + this.client = client; + } + + /** + * List the private link resources available for this hostpool. + * @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 + */ + listByHostPool(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 + */ + listByHostPool(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 + */ + listByHostPool(resourceGroupName: string, hostPoolName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listByHostPool(resourceGroupName: string, hostPoolName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + hostPoolName, + options + }, + listByHostPoolOperationSpec, + callback) as Promise; + } + + /** + * List the private link resources available for this workspace. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param workspaceName The name of the workspace + * @param [options] The optional parameters + * @returns Promise + */ + listByWorkspace(resourceGroupName: string, workspaceName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param workspaceName The name of the workspace + * @param callback The callback + */ + listByWorkspace(resourceGroupName: string, workspaceName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param workspaceName The name of the workspace + * @param options The optional parameters + * @param callback The callback + */ + listByWorkspace(resourceGroupName: string, workspaceName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listByWorkspace(resourceGroupName: string, workspaceName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + workspaceName, + options + }, + listByWorkspaceOperationSpec, + callback) as Promise; + } + + /** + * List the private link resources available for this hostpool. + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listByHostPoolNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + listByHostPoolNext(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 + */ + listByHostPoolNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listByHostPoolNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listByHostPoolNextOperationSpec, + callback) as Promise; + } + + /** + * List the private link resources available for this workspace. + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listByWorkspaceNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + listByWorkspaceNext(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 + */ + listByWorkspaceNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listByWorkspaceNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listByWorkspaceNextOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listByHostPoolOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/privateLinkResources", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.PrivateLinkResourceListResult + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listByWorkspaceOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}/privateLinkResources", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.workspaceName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.PrivateLinkResourceListResult + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listByHostPoolNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.PrivateLinkResourceListResult + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listByWorkspaceNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.PrivateLinkResourceListResult + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/scalingPlans.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/scalingPlans.ts new file mode 100644 index 000000000000..2ffb3cd8bd7c --- /dev/null +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/scalingPlans.ts @@ -0,0 +1,589 @@ +/* + * 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/scalingPlansMappers"; +import * as Parameters from "../models/parameters"; +import { DesktopVirtualizationAPIClientContext } from "../desktopVirtualizationAPIClientContext"; + +/** Class representing a ScalingPlans. */ +export class ScalingPlans { + private readonly client: DesktopVirtualizationAPIClientContext; + + /** + * Create a ScalingPlans. + * @param {DesktopVirtualizationAPIClientContext} client Reference to the service client. + */ + constructor(client: DesktopVirtualizationAPIClientContext) { + this.client = client; + } + + /** + * Get a scaling plan. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param scalingPlanName The name of the scaling plan. + * @param [options] The optional parameters + * @returns Promise + */ + get(resourceGroupName: string, scalingPlanName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param scalingPlanName The name of the scaling plan. + * @param callback The callback + */ + get(resourceGroupName: string, scalingPlanName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param scalingPlanName The name of the scaling plan. + * @param options The optional parameters + * @param callback The callback + */ + get(resourceGroupName: string, scalingPlanName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(resourceGroupName: string, scalingPlanName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + scalingPlanName, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * Create or update a scaling plan. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param scalingPlanName The name of the scaling plan. + * @param scalingPlan Object containing scaling plan definitions. + * @param [options] The optional parameters + * @returns Promise + */ + create(resourceGroupName: string, scalingPlanName: string, scalingPlan: Models.ScalingPlan, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param scalingPlanName The name of the scaling plan. + * @param scalingPlan Object containing scaling plan definitions. + * @param callback The callback + */ + create(resourceGroupName: string, scalingPlanName: string, scalingPlan: Models.ScalingPlan, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param scalingPlanName The name of the scaling plan. + * @param scalingPlan Object containing scaling plan definitions. + * @param options The optional parameters + * @param callback The callback + */ + create(resourceGroupName: string, scalingPlanName: string, scalingPlan: Models.ScalingPlan, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + create(resourceGroupName: string, scalingPlanName: string, scalingPlan: Models.ScalingPlan, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + scalingPlanName, + scalingPlan, + options + }, + createOperationSpec, + callback) as Promise; + } + + /** + * Remove a scaling plan. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param scalingPlanName The name of the scaling plan. + * @param [options] The optional parameters + * @returns Promise + */ + deleteMethod(resourceGroupName: string, scalingPlanName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param scalingPlanName The name of the scaling plan. + * @param callback The callback + */ + deleteMethod(resourceGroupName: string, scalingPlanName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param scalingPlanName The name of the scaling plan. + * @param options The optional parameters + * @param callback The callback + */ + deleteMethod(resourceGroupName: string, scalingPlanName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + deleteMethod(resourceGroupName: string, scalingPlanName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + scalingPlanName, + options + }, + deleteMethodOperationSpec, + callback); + } + + /** + * Update a scaling plan. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param scalingPlanName The name of the scaling plan. + * @param [options] The optional parameters + * @returns Promise + */ + update(resourceGroupName: string, scalingPlanName: string, options?: Models.ScalingPlansUpdateOptionalParams): Promise; + /** + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param scalingPlanName The name of the scaling plan. + * @param callback The callback + */ + update(resourceGroupName: string, scalingPlanName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param scalingPlanName The name of the scaling plan. + * @param options The optional parameters + * @param callback The callback + */ + update(resourceGroupName: string, scalingPlanName: string, options: Models.ScalingPlansUpdateOptionalParams, callback: msRest.ServiceCallback): void; + update(resourceGroupName: string, scalingPlanName: string, options?: Models.ScalingPlansUpdateOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + scalingPlanName, + options + }, + updateOperationSpec, + callback) as Promise; + } + + /** + * List scaling plans. + * @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 scaling plans in subscription. + * @param [options] The optional parameters + * @returns Promise + */ + listBySubscription(options?: msRest.RequestOptionsBase): Promise; + /** + * @param callback The callback + */ + listBySubscription(callback: msRest.ServiceCallback): void; + /** + * @param options The optional parameters + * @param callback The callback + */ + listBySubscription(options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listBySubscription(options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + options + }, + listBySubscriptionOperationSpec, + callback) as Promise; + } + + /** + * List scaling plan associated with hostpool. + * @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 + */ + listByHostPool(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 + */ + listByHostPool(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 + */ + listByHostPool(resourceGroupName: string, hostPoolName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listByHostPool(resourceGroupName: string, hostPoolName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + hostPoolName, + options + }, + listByHostPoolOperationSpec, + callback) as Promise; + } + + /** + * List scaling plans. + * @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 scaling plans 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?: msRest.RequestOptionsBase): 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: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listBySubscriptionNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listBySubscriptionNextOperationSpec, + callback) as Promise; + } + + /** + * List scaling plan associated with hostpool. + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listByHostPoolNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + listByHostPoolNext(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 + */ + listByHostPoolNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listByHostPoolNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listByHostPoolNextOperationSpec, + 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/scalingPlans/{scalingPlanName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.scalingPlanName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ScalingPlan + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const createOperationSpec: msRest.OperationSpec = { + httpMethod: "PUT", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/scalingPlans/{scalingPlanName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.scalingPlanName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: "scalingPlan", + mapper: { + ...Mappers.ScalingPlan, + required: true + } + }, + responses: { + 200: { + bodyMapper: Mappers.ScalingPlan + }, + 201: { + bodyMapper: Mappers.ScalingPlan + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const deleteMethodOperationSpec: msRest.OperationSpec = { + httpMethod: "DELETE", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/scalingPlans/{scalingPlanName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.scalingPlanName + ], + 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/scalingPlans/{scalingPlanName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.scalingPlanName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: [ + "options", + "scalingPlan" + ], + mapper: Mappers.ScalingPlanPatch + }, + responses: { + 200: { + bodyMapper: Mappers.ScalingPlan + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listByResourceGroupOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/scalingPlans", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ScalingPlanList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listBySubscriptionOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/scalingPlans", + urlParameters: [ + Parameters.subscriptionId + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ScalingPlanList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listByHostPoolOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/scalingPlans", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ScalingPlanList + }, + 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.ScalingPlanList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listBySubscriptionNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ScalingPlanList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listByHostPoolNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ScalingPlanList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/sessionHosts.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/sessionHosts.ts new file mode 100644 index 000000000000..bf4da89a8e37 --- /dev/null +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/sessionHosts.ts @@ -0,0 +1,332 @@ +/* + * 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/sessionHostsMappers"; +import * as Parameters from "../models/parameters"; +import { DesktopVirtualizationAPIClientContext } from "../desktopVirtualizationAPIClientContext"; + +/** Class representing a SessionHosts. */ +export class SessionHosts { + private readonly client: DesktopVirtualizationAPIClientContext; + + /** + * Create a SessionHosts. + * @param {DesktopVirtualizationAPIClientContext} client Reference to the service client. + */ + constructor(client: DesktopVirtualizationAPIClientContext) { + this.client = client; + } + + /** + * Get a session host. + * @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 sessionHostName The name of the session host within the specified host pool + * @param [options] The optional parameters + * @returns Promise + */ + get(resourceGroupName: string, hostPoolName: string, sessionHostName: 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 sessionHostName The name of the session host within the specified host pool + * @param callback The callback + */ + get(resourceGroupName: string, hostPoolName: string, sessionHostName: 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 sessionHostName The name of the session host within the specified host pool + * @param options The optional parameters + * @param callback The callback + */ + get(resourceGroupName: string, hostPoolName: string, sessionHostName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(resourceGroupName: string, hostPoolName: string, sessionHostName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + hostPoolName, + sessionHostName, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * Remove a SessionHost. + * @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 sessionHostName The name of the session host within the specified host pool + * @param [options] The optional parameters + * @returns Promise + */ + deleteMethod(resourceGroupName: string, hostPoolName: string, sessionHostName: string, options?: Models.SessionHostsDeleteMethodOptionalParams): 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 sessionHostName The name of the session host within the specified host pool + * @param callback The callback + */ + deleteMethod(resourceGroupName: string, hostPoolName: string, sessionHostName: 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 sessionHostName The name of the session host within the specified host pool + * @param options The optional parameters + * @param callback The callback + */ + deleteMethod(resourceGroupName: string, hostPoolName: string, sessionHostName: string, options: Models.SessionHostsDeleteMethodOptionalParams, callback: msRest.ServiceCallback): void; + deleteMethod(resourceGroupName: string, hostPoolName: string, sessionHostName: string, options?: Models.SessionHostsDeleteMethodOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + hostPoolName, + sessionHostName, + options + }, + deleteMethodOperationSpec, + callback); + } + + /** + * Update a session host. + * @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 sessionHostName The name of the session host within the specified host pool + * @param [options] The optional parameters + * @returns Promise + */ + update(resourceGroupName: string, hostPoolName: string, sessionHostName: string, options?: Models.SessionHostsUpdateOptionalParams): 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 sessionHostName The name of the session host within the specified host pool + * @param callback The callback + */ + update(resourceGroupName: string, hostPoolName: string, sessionHostName: 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 sessionHostName The name of the session host within the specified host pool + * @param options The optional parameters + * @param callback The callback + */ + update(resourceGroupName: string, hostPoolName: string, sessionHostName: string, options: Models.SessionHostsUpdateOptionalParams, callback: msRest.ServiceCallback): void; + update(resourceGroupName: string, hostPoolName: string, sessionHostName: string, options?: Models.SessionHostsUpdateOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + hostPoolName, + sessionHostName, + options + }, + updateOperationSpec, + callback) as Promise; + } + + /** + * List sessionHosts. + * @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 + */ + list(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 + */ + list(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 + */ + list(resourceGroupName: string, hostPoolName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + list(resourceGroupName: string, hostPoolName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + hostPoolName, + options + }, + listOperationSpec, + callback) as Promise; + } + + /** + * List sessionHosts. + * @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}/sessionHosts/{sessionHostName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + Parameters.sessionHostName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.SessionHost + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const deleteMethodOperationSpec: msRest.OperationSpec = { + httpMethod: "DELETE", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + Parameters.sessionHostName + ], + 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}/sessionHosts/{sessionHostName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + Parameters.sessionHostName + ], + queryParameters: [ + Parameters.apiVersion, + Parameters.force + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: [ + "options", + "sessionHost" + ], + mapper: Mappers.SessionHostPatch + }, + responses: { + 200: { + bodyMapper: Mappers.SessionHost + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.SessionHostList + }, + 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.SessionHostList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/startMenuItems.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/startMenuItems.ts new file mode 100644 index 000000000000..7d31882896f7 --- /dev/null +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/startMenuItems.ts @@ -0,0 +1,138 @@ +/* + * 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/startMenuItemsMappers"; +import * as Parameters from "../models/parameters"; +import { DesktopVirtualizationAPIClientContext } from "../desktopVirtualizationAPIClientContext"; + +/** Class representing a StartMenuItems. */ +export class StartMenuItems { + private readonly client: DesktopVirtualizationAPIClientContext; + + /** + * Create a StartMenuItems. + * @param {DesktopVirtualizationAPIClientContext} client Reference to the service client. + */ + constructor(client: DesktopVirtualizationAPIClientContext) { + this.client = client; + } + + /** + * List start menu items in the given 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 + */ + 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 start menu items in the given application group. + * @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 listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/startMenuItems", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.applicationGroupName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.StartMenuItemList + }, + 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.StartMenuItemList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/userSessions.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/userSessions.ts new file mode 100644 index 000000000000..74993bdb36d7 --- /dev/null +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/userSessions.ts @@ -0,0 +1,525 @@ +/* + * 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/userSessionsMappers"; +import * as Parameters from "../models/parameters"; +import { DesktopVirtualizationAPIClientContext } from "../desktopVirtualizationAPIClientContext"; + +/** Class representing a UserSessions. */ +export class UserSessions { + private readonly client: DesktopVirtualizationAPIClientContext; + + /** + * Create a UserSessions. + * @param {DesktopVirtualizationAPIClientContext} client Reference to the service client. + */ + constructor(client: DesktopVirtualizationAPIClientContext) { + this.client = client; + } + + /** + * List userSessions. + * @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 + */ + listByHostPool(resourceGroupName: string, hostPoolName: string, options?: Models.UserSessionsListByHostPoolOptionalParams): 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 + */ + listByHostPool(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 + */ + listByHostPool(resourceGroupName: string, hostPoolName: string, options: Models.UserSessionsListByHostPoolOptionalParams, callback: msRest.ServiceCallback): void; + listByHostPool(resourceGroupName: string, hostPoolName: string, options?: Models.UserSessionsListByHostPoolOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + hostPoolName, + options + }, + listByHostPoolOperationSpec, + callback) as Promise; + } + + /** + * Get a userSession. + * @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 sessionHostName The name of the session host within the specified host pool + * @param userSessionId The name of the user session within the specified session host + * @param [options] The optional parameters + * @returns Promise + */ + get(resourceGroupName: string, hostPoolName: string, sessionHostName: string, userSessionId: 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 sessionHostName The name of the session host within the specified host pool + * @param userSessionId The name of the user session within the specified session host + * @param callback The callback + */ + get(resourceGroupName: string, hostPoolName: string, sessionHostName: string, userSessionId: 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 sessionHostName The name of the session host within the specified host pool + * @param userSessionId The name of the user session within the specified session host + * @param options The optional parameters + * @param callback The callback + */ + get(resourceGroupName: string, hostPoolName: string, sessionHostName: string, userSessionId: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(resourceGroupName: string, hostPoolName: string, sessionHostName: string, userSessionId: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + hostPoolName, + sessionHostName, + userSessionId, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * Remove a userSession. + * @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 sessionHostName The name of the session host within the specified host pool + * @param userSessionId The name of the user session within the specified session host + * @param [options] The optional parameters + * @returns Promise + */ + deleteMethod(resourceGroupName: string, hostPoolName: string, sessionHostName: string, userSessionId: string, options?: Models.UserSessionsDeleteMethodOptionalParams): 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 sessionHostName The name of the session host within the specified host pool + * @param userSessionId The name of the user session within the specified session host + * @param callback The callback + */ + deleteMethod(resourceGroupName: string, hostPoolName: string, sessionHostName: string, userSessionId: 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 sessionHostName The name of the session host within the specified host pool + * @param userSessionId The name of the user session within the specified session host + * @param options The optional parameters + * @param callback The callback + */ + deleteMethod(resourceGroupName: string, hostPoolName: string, sessionHostName: string, userSessionId: string, options: Models.UserSessionsDeleteMethodOptionalParams, callback: msRest.ServiceCallback): void; + deleteMethod(resourceGroupName: string, hostPoolName: string, sessionHostName: string, userSessionId: string, options?: Models.UserSessionsDeleteMethodOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + hostPoolName, + sessionHostName, + userSessionId, + options + }, + deleteMethodOperationSpec, + callback); + } + + /** + * List userSessions. + * @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 sessionHostName The name of the session host within the specified host pool + * @param [options] The optional parameters + * @returns Promise + */ + list(resourceGroupName: string, hostPoolName: string, sessionHostName: 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 sessionHostName The name of the session host within the specified host pool + * @param callback The callback + */ + list(resourceGroupName: string, hostPoolName: string, sessionHostName: 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 sessionHostName The name of the session host within the specified host pool + * @param options The optional parameters + * @param callback The callback + */ + list(resourceGroupName: string, hostPoolName: string, sessionHostName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + list(resourceGroupName: string, hostPoolName: string, sessionHostName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + hostPoolName, + sessionHostName, + options + }, + listOperationSpec, + callback) as Promise; + } + + /** + * Disconnect a userSession. + * @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 sessionHostName The name of the session host within the specified host pool + * @param userSessionId The name of the user session within the specified session host + * @param [options] The optional parameters + * @returns Promise + */ + disconnect(resourceGroupName: string, hostPoolName: string, sessionHostName: string, userSessionId: 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 sessionHostName The name of the session host within the specified host pool + * @param userSessionId The name of the user session within the specified session host + * @param callback The callback + */ + disconnect(resourceGroupName: string, hostPoolName: string, sessionHostName: string, userSessionId: 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 sessionHostName The name of the session host within the specified host pool + * @param userSessionId The name of the user session within the specified session host + * @param options The optional parameters + * @param callback The callback + */ + disconnect(resourceGroupName: string, hostPoolName: string, sessionHostName: string, userSessionId: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + disconnect(resourceGroupName: string, hostPoolName: string, sessionHostName: string, userSessionId: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + hostPoolName, + sessionHostName, + userSessionId, + options + }, + disconnectOperationSpec, + callback); + } + + /** + * Send a message to a user. + * @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 sessionHostName The name of the session host within the specified host pool + * @param userSessionId The name of the user session within the specified session host + * @param [options] The optional parameters + * @returns Promise + */ + sendMessageMethod(resourceGroupName: string, hostPoolName: string, sessionHostName: string, userSessionId: string, options?: Models.UserSessionsSendMessageMethodOptionalParams): 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 sessionHostName The name of the session host within the specified host pool + * @param userSessionId The name of the user session within the specified session host + * @param callback The callback + */ + sendMessageMethod(resourceGroupName: string, hostPoolName: string, sessionHostName: string, userSessionId: 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 sessionHostName The name of the session host within the specified host pool + * @param userSessionId The name of the user session within the specified session host + * @param options The optional parameters + * @param callback The callback + */ + sendMessageMethod(resourceGroupName: string, hostPoolName: string, sessionHostName: string, userSessionId: string, options: Models.UserSessionsSendMessageMethodOptionalParams, callback: msRest.ServiceCallback): void; + sendMessageMethod(resourceGroupName: string, hostPoolName: string, sessionHostName: string, userSessionId: string, options?: Models.UserSessionsSendMessageMethodOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + hostPoolName, + sessionHostName, + userSessionId, + options + }, + sendMessageMethodOperationSpec, + callback); + } + + /** + * List userSessions. + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listByHostPoolNext(nextPageLink: string, options?: Models.UserSessionsListByHostPoolNextOptionalParams): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + listByHostPoolNext(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 + */ + listByHostPoolNext(nextPageLink: string, options: Models.UserSessionsListByHostPoolNextOptionalParams, callback: msRest.ServiceCallback): void; + listByHostPoolNext(nextPageLink: string, options?: Models.UserSessionsListByHostPoolNextOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listByHostPoolNextOperationSpec, + callback) as Promise; + } + + /** + * List userSessions. + * @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 listByHostPoolOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/userSessions", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName + ], + queryParameters: [ + Parameters.apiVersion, + Parameters.filter + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.UserSessionList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions/{userSessionId}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + Parameters.sessionHostName, + Parameters.userSessionId + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.UserSession + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const deleteMethodOperationSpec: msRest.OperationSpec = { + httpMethod: "DELETE", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions/{userSessionId}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + Parameters.sessionHostName, + Parameters.userSessionId + ], + queryParameters: [ + Parameters.apiVersion, + Parameters.force + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: {}, + 204: {}, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + Parameters.sessionHostName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.UserSessionList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const disconnectOperationSpec: msRest.OperationSpec = { + httpMethod: "POST", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions/{userSessionId}/disconnect", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + Parameters.sessionHostName, + Parameters.userSessionId + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: {}, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const sendMessageMethodOperationSpec: msRest.OperationSpec = { + httpMethod: "POST", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions/{userSessionId}/sendMessage", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + Parameters.sessionHostName, + Parameters.userSessionId + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: [ + "options", + "sendMessage" + ], + mapper: Mappers.SendMessage + }, + responses: { + 200: {}, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listByHostPoolNextOperationSpec: 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.UserSessionList + }, + 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.UserSessionList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/workspaces.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/workspaces.ts new file mode 100644 index 000000000000..c665f41ad5a3 --- /dev/null +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/workspaces.ts @@ -0,0 +1,480 @@ +/* + * 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/workspacesMappers"; +import * as Parameters from "../models/parameters"; +import { DesktopVirtualizationAPIClientContext } from "../desktopVirtualizationAPIClientContext"; + +/** Class representing a Workspaces. */ +export class Workspaces { + private readonly client: DesktopVirtualizationAPIClientContext; + + /** + * Create a Workspaces. + * @param {DesktopVirtualizationAPIClientContext} client Reference to the service client. + */ + constructor(client: DesktopVirtualizationAPIClientContext) { + this.client = client; + } + + /** + * Get a workspace. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param workspaceName The name of the workspace + * @param [options] The optional parameters + * @returns Promise + */ + get(resourceGroupName: string, workspaceName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param workspaceName The name of the workspace + * @param callback The callback + */ + get(resourceGroupName: string, workspaceName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param workspaceName The name of the workspace + * @param options The optional parameters + * @param callback The callback + */ + get(resourceGroupName: string, workspaceName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(resourceGroupName: string, workspaceName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + workspaceName, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * Create or update a workspace. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param workspaceName The name of the workspace + * @param workspace Object containing Workspace definitions. + * @param [options] The optional parameters + * @returns Promise + */ + createOrUpdate(resourceGroupName: string, workspaceName: string, workspace: Models.Workspace, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param workspaceName The name of the workspace + * @param workspace Object containing Workspace definitions. + * @param callback The callback + */ + createOrUpdate(resourceGroupName: string, workspaceName: string, workspace: Models.Workspace, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param workspaceName The name of the workspace + * @param workspace Object containing Workspace definitions. + * @param options The optional parameters + * @param callback The callback + */ + createOrUpdate(resourceGroupName: string, workspaceName: string, workspace: Models.Workspace, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + createOrUpdate(resourceGroupName: string, workspaceName: string, workspace: Models.Workspace, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + workspaceName, + workspace, + options + }, + createOrUpdateOperationSpec, + callback) as Promise; + } + + /** + * Remove a workspace. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param workspaceName The name of the workspace + * @param [options] The optional parameters + * @returns Promise + */ + deleteMethod(resourceGroupName: string, workspaceName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param workspaceName The name of the workspace + * @param callback The callback + */ + deleteMethod(resourceGroupName: string, workspaceName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param workspaceName The name of the workspace + * @param options The optional parameters + * @param callback The callback + */ + deleteMethod(resourceGroupName: string, workspaceName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + deleteMethod(resourceGroupName: string, workspaceName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + workspaceName, + options + }, + deleteMethodOperationSpec, + callback); + } + + /** + * Update a workspace. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param workspaceName The name of the workspace + * @param [options] The optional parameters + * @returns Promise + */ + update(resourceGroupName: string, workspaceName: string, options?: Models.WorkspacesUpdateOptionalParams): Promise; + /** + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param workspaceName The name of the workspace + * @param callback The callback + */ + update(resourceGroupName: string, workspaceName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param workspaceName The name of the workspace + * @param options The optional parameters + * @param callback The callback + */ + update(resourceGroupName: string, workspaceName: string, options: Models.WorkspacesUpdateOptionalParams, callback: msRest.ServiceCallback): void; + update(resourceGroupName: string, workspaceName: string, options?: Models.WorkspacesUpdateOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + workspaceName, + options + }, + updateOperationSpec, + callback) as Promise; + } + + /** + * List workspaces. + * @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 workspaces in subscription. + * @param [options] The optional parameters + * @returns Promise + */ + listBySubscription(options?: msRest.RequestOptionsBase): Promise; + /** + * @param callback The callback + */ + listBySubscription(callback: msRest.ServiceCallback): void; + /** + * @param options The optional parameters + * @param callback The callback + */ + listBySubscription(options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listBySubscription(options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + options + }, + listBySubscriptionOperationSpec, + callback) as Promise; + } + + /** + * List workspaces. + * @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 workspaces 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?: msRest.RequestOptionsBase): 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: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listBySubscriptionNext(nextPageLink: string, options?: msRest.RequestOptionsBase | 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/workspaces/{workspaceName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.workspaceName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.Workspace + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const createOrUpdateOperationSpec: msRest.OperationSpec = { + httpMethod: "PUT", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.workspaceName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: "workspace", + mapper: { + ...Mappers.Workspace, + required: true + } + }, + responses: { + 200: { + bodyMapper: Mappers.Workspace + }, + 201: { + bodyMapper: Mappers.Workspace + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const deleteMethodOperationSpec: msRest.OperationSpec = { + httpMethod: "DELETE", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.workspaceName + ], + 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/workspaces/{workspaceName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.workspaceName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: [ + "options", + "workspace" + ], + mapper: Mappers.WorkspacePatch + }, + responses: { + 200: { + bodyMapper: Mappers.Workspace + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listByResourceGroupOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.WorkspaceList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listBySubscriptionOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/workspaces", + urlParameters: [ + Parameters.subscriptionId + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.WorkspaceList + }, + 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.WorkspaceList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listBySubscriptionNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.WorkspaceList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/tsconfig.json b/sdk/desktopvirtualization/arm-desktopvirtualization/tsconfig.json new file mode 100644 index 000000000000..422b584abd5e --- /dev/null +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/tsconfig.json @@ -0,0 +1,19 @@ +{ + "compilerOptions": { + "module": "es6", + "moduleResolution": "node", + "strict": true, + "target": "es5", + "sourceMap": true, + "declarationMap": true, + "esModuleInterop": true, + "allowSyntheticDefaultImports": true, + "forceConsistentCasingInFileNames": true, + "lib": ["es6", "dom"], + "declaration": true, + "outDir": "./esm", + "importHelpers": true + }, + "include": ["./src/**/*.ts"], + "exclude": ["node_modules"] +}