From d9a7191c2aef841e7729b118024f32216f3c36ab Mon Sep 17 00:00:00 2001 From: SDKAuto Date: Fri, 7 Mar 2025 09:00:59 +0000 Subject: [PATCH] CodeGen from PR 33070 in Azure/azure-rest-api-specs Merge 6091066cc2b4234f272daefb1064ee081d91dff0 into af57daeaf232c2a59bf4ba6a522479c265e2002e --- common/config/rush/pnpm-lock.yaml | 80 +- .../review/core-rest-pipeline.api.md | 4 +- .../arm-desktopvirtualization/CHANGELOG.md | 359 +- .../arm-desktopvirtualization/LICENSE | 2 +- .../arm-desktopvirtualization/README.md | 13 +- .../arm-desktopvirtualization/_meta.json | 10 +- .../api-extractor.json | 6 +- .../arm-desktopvirtualization/package.json | 40 +- .../review/arm-desktopvirtualization.api.md | 1006 ++- .../arm-desktopvirtualization/sample.env | 5 +- .../src/desktopVirtualizationAPIClient.ts | 134 +- .../arm-desktopvirtualization/src/lroImpl.ts | 42 + .../src/models/index.ts | 4469 ++++++++----- .../src/models/mappers.ts | 5586 +++++++++++------ .../src/models/parameters.ts | 347 +- .../activeSessionHostConfigurations.ts | 243 + .../src/operations/appAttachPackageInfo.ts | 6 +- .../operations/appAttachPackageOperations.ts | 268 +- .../src/operations/applicationGroups.ts | 294 +- .../src/operations/applications.ts | 124 +- .../operations/controlSessionHostUpdate.ts | 172 + .../src/operations/desktops.ts | 84 +- .../src/operations/hostPools.ts | 338 +- .../src/operations/index.ts | 32 +- .../operations/initiateSessionHostUpdate.ts | 70 + .../src/operations/msixImages.ts | 12 +- .../src/operations/msixPackages.ts | 143 +- .../src/operations/operations.ts | 12 +- .../operations/privateEndpointConnections.ts | 443 +- .../src/operations/privateLinkResources.ts | 174 +- .../scalingPlanPersonalSchedules.ts | 126 +- .../operations/scalingPlanPooledSchedules.ts | 126 +- .../src/operations/scalingPlans.ts | 446 +- .../operations/sessionHostConfigurations.ts | 507 ++ .../src/operations/sessionHostManagements.ts | 330 + .../sessionHostManagementsUpdateStatus.ts | 73 + .../src/operations/sessionHosts.ts | 127 +- .../src/operations/startMenuItems.ts | 4 +- .../src/operations/userSessions.ts | 218 +- .../src/operations/workspaces.ts | 290 +- .../activeSessionHostConfigurations.ts | 42 + .../appAttachPackageInfo.ts | 2 +- .../appAttachPackageOperations.ts | 34 +- .../operationsInterfaces/applicationGroups.ts | 34 +- .../src/operationsInterfaces/applications.ts | 18 +- .../controlSessionHostUpdate.ts | 49 + .../src/operationsInterfaces/hostPools.ts | 52 +- .../src/operationsInterfaces/index.ts | 32 +- .../initiateSessionHostUpdate.ts | 24 + .../src/operationsInterfaces/msixImages.ts | 3 +- .../src/operationsInterfaces/msixPackages.ts | 21 +- .../src/operationsInterfaces/operations.ts | 2 +- .../privateEndpointConnections.ts | 127 +- .../privateLinkResources.ts | 22 +- .../scalingPlanPersonalSchedules.ts | 18 +- .../scalingPlanPooledSchedules.ts | 18 +- .../src/operationsInterfaces/scalingPlans.ts | 38 +- .../sessionHostConfigurations.ts | 105 + .../sessionHostManagements.ts | 70 + .../sessionHostManagementsUpdateStatus.ts | 27 + .../src/operationsInterfaces/sessionHosts.ts | 24 +- .../src/operationsInterfaces/userSessions.ts | 16 +- .../src/operationsInterfaces/workspaces.ts | 34 +- .../test/sampleTest.ts | 40 + .../test/snippets.spec.ts | 23 +- .../tsconfig.browser.config.json | 5 +- .../arm-desktopvirtualization/tsconfig.json | 36 +- .../tsconfig.samples.json | 4 +- .../tsconfig.test.json | 5 +- .../vitest.browser.config.ts | 3 +- .../vitest.config.ts | 1 + .../vitest.esm.config.ts | 6 +- 72 files changed, 11762 insertions(+), 5938 deletions(-) create mode 100644 sdk/desktopvirtualization/arm-desktopvirtualization/src/lroImpl.ts create mode 100644 sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/activeSessionHostConfigurations.ts create mode 100644 sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/controlSessionHostUpdate.ts create mode 100644 sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/initiateSessionHostUpdate.ts create mode 100644 sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/sessionHostConfigurations.ts create mode 100644 sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/sessionHostManagements.ts create mode 100644 sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/sessionHostManagementsUpdateStatus.ts create mode 100644 sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/activeSessionHostConfigurations.ts create mode 100644 sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/controlSessionHostUpdate.ts create mode 100644 sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/initiateSessionHostUpdate.ts create mode 100644 sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/sessionHostConfigurations.ts create mode 100644 sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/sessionHostManagements.ts create mode 100644 sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/sessionHostManagementsUpdateStatus.ts create mode 100644 sdk/desktopvirtualization/arm-desktopvirtualization/test/sampleTest.ts diff --git a/common/config/rush/pnpm-lock.yaml b/common/config/rush/pnpm-lock.yaml index 1a2803bf0af9..fd8974e90272 100644 --- a/common/config/rush/pnpm-lock.yaml +++ b/common/config/rush/pnpm-lock.yaml @@ -2540,7 +2540,7 @@ packages: version: 0.0.0 '@rush-temp/ai-inference@file:projects/ai-inference.tgz': - resolution: {integrity: sha512-jy3iCFAJq8qZFdMN0GEK8XNPi3lTfEIQEOM4jNCqE850gODahI+XXRqHMbrGUJd2tjmZMm0cKc6CQbjVxFsi/Q==, tarball: file:projects/ai-inference.tgz} + resolution: {integrity: sha512-3F/JVas1qHmWihXHHGxX6EUigHTNsftXBjspS6BMU6/lu/xDNMxKAY30DJMK90KyhH5UxZ+ZRwWlWbhKWW+2ow==, tarball: file:projects/ai-inference.tgz} version: 0.0.0 '@rush-temp/ai-language-conversations@file:projects/ai-language-conversations.tgz': @@ -2560,7 +2560,7 @@ packages: version: 0.0.0 '@rush-temp/ai-projects@file:projects/ai-projects.tgz': - resolution: {integrity: sha512-olWaOR+lScYd4KfOBFDagJ6zLA728vt+08hSgNDsM182EdAAAYN2c5dqJ7BsN/1rv7I6rb6lywdCSQ5gK9pABQ==, tarball: file:projects/ai-projects.tgz} + resolution: {integrity: sha512-rbzbhwz+05oHf7CC83pshBtWypNW2LVlSpfOOwkX3BmqB4MiHah+CmjehPDEKqpnn0vgU4GzdM0BeD4HoI9J1w==, tarball: file:projects/ai-projects.tgz} version: 0.0.0 '@rush-temp/ai-text-analytics@file:projects/ai-text-analytics.tgz': @@ -2884,7 +2884,7 @@ packages: version: 0.0.0 '@rush-temp/arm-desktopvirtualization@file:projects/arm-desktopvirtualization.tgz': - resolution: {integrity: sha512-ujCUlr/L3/h2Sv5pGTDJSUKCA8333DEQM+Gb0K5B+90Q7yr+CDBoVrGJXtLkZPmjvKb1fIzhYMmfBUDvGpIwGg==, tarball: file:projects/arm-desktopvirtualization.tgz} + resolution: {integrity: sha512-7FbHK/nDXUBcb7rAn7nHQCzB1fYmgOrbK+ZqBV04iz6RyXm0XF0rqfhAtltzI5JT6LMZW823b9Ixi4aOwPVWQg==, tarball: file:projects/arm-desktopvirtualization.tgz} version: 0.0.0 '@rush-temp/arm-devcenter@file:projects/arm-devcenter.tgz': @@ -3648,7 +3648,7 @@ packages: version: 0.0.0 '@rush-temp/communication-rooms@file:projects/communication-rooms.tgz': - resolution: {integrity: sha512-K/mZVvKYYhjrrQDbShm4Ce+SuL1L8OaN6eeLfdQoSnsM2RNwvFOE7Tu/khStZuiAKvNDV038ct8fpPIhJ1sAiw==, tarball: file:projects/communication-rooms.tgz} + resolution: {integrity: sha512-wcpWrS8VO0FKg6DaO+xs5VO3UNA/6+conA2cUSEMv+4WFvyxnkdr5IOlR8u0Svky3hGVa1SIZvc5jBbbqATlag==, tarball: file:projects/communication-rooms.tgz} version: 0.0.0 '@rush-temp/communication-short-codes@file:projects/communication-short-codes.tgz': @@ -3884,7 +3884,7 @@ packages: version: 0.0.0 '@rush-temp/mixed-reality-remote-rendering@file:projects/mixed-reality-remote-rendering.tgz': - resolution: {integrity: sha512-4Wx6KxuTYKmgYWfmzLs2BW2MkwATk98Fdx88WL7/sa632gevVbfOCT5WWUUsqW2OtLN36jpr8Vi6UfKrxEON0g==, tarball: file:projects/mixed-reality-remote-rendering.tgz} + resolution: {integrity: sha512-TN6cq8PIrYAy/tJ4mQIkcRn1Wkr5lBxnDY8UeSvQP9D61ZN0iESKb4j+wnXPJp2RNKa9tBpg8NcOt5Jc7qhwaQ==, tarball: file:projects/mixed-reality-remote-rendering.tgz} version: 0.0.0 '@rush-temp/mock-hub@file:projects/mock-hub.tgz': @@ -3900,11 +3900,11 @@ packages: version: 0.0.0 '@rush-temp/monitor-opentelemetry@file:projects/monitor-opentelemetry.tgz': - resolution: {integrity: sha512-1K08pDS3mRgyqyPHPU/PS/Kwhn10bdtrh9sU9itLgfy+cj+Rn/KkMG0Y0ZIAqhPRYc1/LUdXBVR1LZ/l3gx0Iw==, tarball: file:projects/monitor-opentelemetry.tgz} + resolution: {integrity: sha512-HH9DSuPu9Flo0w2YXzGUnayl/lDLcTwcGEhht0VdjPe7ZwhakhOH8/VoxrZKQTdgseCZMpYDmWgB2BaKkUr/Mg==, tarball: file:projects/monitor-opentelemetry.tgz} version: 0.0.0 '@rush-temp/monitor-query@file:projects/monitor-query.tgz': - resolution: {integrity: sha512-FfDHQlhugBYGKJAG+Qvo0eA9RxpyaY0LHrPOjcmIyF8gy3hxeJf0+Z9/XSfi3jDrCdv+l1K3as1cbuiY48Or4Q==, tarball: file:projects/monitor-query.tgz} + resolution: {integrity: sha512-bQ0lyAnF/GBcL7pwA66f/U6sjezndhPmHkMCjdmz1MD93PYpaQvasNEGspFvjrnt8Xwcg0CmdnzeWbHE6obY1w==, tarball: file:projects/monitor-query.tgz} version: 0.0.0 '@rush-temp/notification-hubs@file:projects/notification-hubs.tgz': @@ -3912,7 +3912,7 @@ packages: version: 0.0.0 '@rush-temp/openai@file:projects/openai.tgz': - resolution: {integrity: sha512-QnN8rZhPnF3/GYsh3cLlyCb6JgnWdpPVrjGoau5jvxZQWcBIWb108P7yNZwXptJcPti/jGYJPFQuwRWW7CxgvA==, tarball: file:projects/openai.tgz} + resolution: {integrity: sha512-EB6z+wWho8coz2hCDFUcYTJ+Jw5CfJ20yzKpIZeNk4OxpglGY7XTSiWxsuCHa++eVGTTXRHMwG/gdOtAv9mZkw==, tarball: file:projects/openai.tgz} version: 0.0.0 '@rush-temp/opentelemetry-instrumentation-azure-sdk@file:projects/opentelemetry-instrumentation-azure-sdk.tgz': @@ -3980,7 +3980,7 @@ packages: version: 0.0.0 '@rush-temp/perf-monitor-opentelemetry@file:projects/perf-monitor-opentelemetry.tgz': - resolution: {integrity: sha512-dwzpNIZPU6i3RcqjhLVipjyiz3ZZMtjs7dOuCSH4TtaOyj5vgqVvQC61FbEsnQrI5coVWW0NEOmbNYbzkih1Yw==, tarball: file:projects/perf-monitor-opentelemetry.tgz} + resolution: {integrity: sha512-B6GNjGVtP+BWESkV/d2t2Kg4FhgyWAibL4khmjnhduwd14Cjtqf/Aoz7B71usfgEXEUE9KvkL3VUg2IVm+MLSw==, tarball: file:projects/perf-monitor-opentelemetry.tgz} version: 0.0.0 '@rush-temp/perf-monitor-query@file:projects/perf-monitor-query.tgz': @@ -4056,7 +4056,7 @@ packages: version: 0.0.0 '@rush-temp/service-bus@file:projects/service-bus.tgz': - resolution: {integrity: sha512-ICttr5Vkcza3Jpy5WP+rciaUvO8NRkplh7TEOk7RWExZR9GFF0hXTNbH11Id8/OSZ17v/vuWtwt+9GFLBeDsZw==, tarball: file:projects/service-bus.tgz} + resolution: {integrity: sha512-CEMwNWHdlbtYASoZFKNN3dzVF8Uno0LED5f7xmGV7kjawCq6iJuwxz4UhBDpDDdYYdG+cAIIcMZfUEj+cdcQsA==, tarball: file:projects/service-bus.tgz} version: 0.0.0 '@rush-temp/storage-blob-changefeed@file:projects/storage-blob-changefeed.tgz': @@ -6991,11 +6991,21 @@ packages: engines: {node: '>=18'} hasBin: true + playwright-core@1.51.0: + resolution: {integrity: sha512-x47yPE3Zwhlil7wlNU/iktF7t2r/URR3VLbH6EknJd/04Qc/PSJ0EY3CMXipmglLG+zyRxW6HNo2EGbKLHPWMg==} + engines: {node: '>=18'} + hasBin: true + playwright@1.50.1: resolution: {integrity: sha512-G8rwsOQJ63XG6BbKj2w5rHeavFjy5zynBA9zsJMMtBoe/Uf757oG12NXz6e6OirF7RCrTVAKFXbLmn1RbL7Qaw==} engines: {node: '>=18'} hasBin: true + playwright@1.51.0: + resolution: {integrity: sha512-442pTfGM0xxfCYxuBa/Pu6B2OqxqqaYq39JS8QDMGThUvIOCd6s0ANDog3uwA0cHavVlnTQzGCN7Id2YekDSXA==} + engines: {node: '>=18'} + hasBin: true + polite-json@5.0.0: resolution: {integrity: sha512-OLS/0XeUAcE8a2fdwemNja+udKgXNnY6yKVIXqAD2zVRx1KvY6Ato/rZ2vdzbxqYwPW0u6SCNC/bAMPNzpzxbw==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -12987,13 +12997,14 @@ snapshots: '@rush-temp/arm-desktopvirtualization@file:projects/arm-desktopvirtualization.tgz(@types/debug@4.1.12)(msw@2.7.2(@types/node@22.7.9)(typescript@5.8.2))(tsx@4.19.3)(vite@6.1.1(@types/node@22.7.9)(tsx@4.19.3)(yaml@2.7.0))(yaml@2.7.0)': dependencies: + '@azure/core-lro': 2.7.2 '@types/node': 18.19.76 - '@vitest/browser': 3.0.6(@types/node@18.19.76)(playwright@1.50.1)(typescript@5.7.3)(vite@6.1.1(@types/node@22.7.9)(tsx@4.19.3)(yaml@2.7.0))(vitest@3.0.6) + '@vitest/browser': 3.0.6(@types/node@18.19.76)(playwright@1.51.0)(typescript@5.6.3)(vite@6.1.1(@types/node@22.7.9)(tsx@4.19.3)(yaml@2.7.0))(vitest@3.0.6) '@vitest/coverage-istanbul': 3.0.6(vitest@3.0.6) dotenv: 16.4.7 - playwright: 1.50.1 + playwright: 1.51.0 tslib: 2.8.1 - typescript: 5.7.3 + typescript: 5.6.3 vitest: 3.0.6(@types/debug@4.1.12)(@types/node@18.19.76)(@vitest/browser@3.0.6)(msw@2.7.2(@types/node@22.7.9)(typescript@5.8.2))(tsx@4.19.3)(yaml@2.7.0) transitivePeerDependencies: - '@edge-runtime/vm' @@ -23879,7 +23890,7 @@ snapshots: '@types/chai-as-promised@7.1.8': dependencies: - '@types/chai': 4.3.20 + '@types/chai': 5.0.1 '@types/chai-as-promised@8.0.1': dependencies: @@ -24246,6 +24257,27 @@ snapshots: - utf-8-validate - vite + '@vitest/browser@3.0.6(@types/node@18.19.76)(playwright@1.51.0)(typescript@5.6.3)(vite@6.1.1(@types/node@22.7.9)(tsx@4.19.3)(yaml@2.7.0))(vitest@3.0.6)': + dependencies: + '@testing-library/dom': 10.4.0 + '@testing-library/user-event': 14.6.1(@testing-library/dom@10.4.0) + '@vitest/mocker': 3.0.6(msw@2.7.2(@types/node@22.7.9)(typescript@5.8.2))(vite@6.1.1(@types/node@22.7.9)(tsx@4.19.3)(yaml@2.7.0)) + '@vitest/utils': 3.0.6 + magic-string: 0.30.17 + msw: 2.7.2(@types/node@18.19.76)(typescript@5.6.3) + sirv: 3.0.1 + tinyrainbow: 2.0.0 + vitest: 3.0.6(@types/debug@4.1.12)(@types/node@22.7.9)(@vitest/browser@3.0.6)(msw@2.7.2(@types/node@22.7.9)(typescript@5.8.2))(tsx@4.19.3)(yaml@2.7.0) + ws: 8.18.1 + optionalDependencies: + playwright: 1.51.0 + transitivePeerDependencies: + - '@types/node' + - bufferutil + - typescript + - utf-8-validate + - vite + '@vitest/browser@3.0.6(@types/node@22.7.9)(playwright@1.50.1)(typescript@5.7.3)(vite@6.1.1(@types/node@22.7.9)(tsx@4.19.3)(yaml@2.7.0))(vitest@3.0.6)': dependencies: '@testing-library/dom': 10.4.0 @@ -24267,7 +24299,7 @@ snapshots: - utf-8-validate - vite - '@vitest/browser@3.0.6(@types/node@22.7.9)(playwright@1.50.1)(typescript@5.8.2)(vite@6.1.1(@types/node@22.7.9)(tsx@4.19.3)(yaml@2.7.0))(vitest@3.0.6)': + '@vitest/browser@3.0.6(@types/node@22.7.9)(playwright@1.51.0)(typescript@5.8.2)(vite@6.1.1(@types/node@22.7.9)(tsx@4.19.3)(yaml@2.7.0))(vitest@3.0.6)': dependencies: '@testing-library/dom': 10.4.0 '@testing-library/user-event': 14.6.1(@testing-library/dom@10.4.0) @@ -24280,7 +24312,7 @@ snapshots: vitest: 3.0.6(@types/debug@4.1.12)(@types/node@22.7.9)(@vitest/browser@3.0.6)(msw@2.7.2(@types/node@22.7.9)(typescript@5.8.2))(tsx@4.19.3)(yaml@2.7.0) ws: 8.18.1 optionalDependencies: - playwright: 1.50.1 + playwright: 1.51.0 transitivePeerDependencies: - '@types/node' - bufferutil @@ -27044,12 +27076,20 @@ snapshots: playwright-core@1.50.1: {} + playwright-core@1.51.0: {} + playwright@1.50.1: dependencies: playwright-core: 1.50.1 optionalDependencies: fsevents: 2.3.2 + playwright@1.51.0: + dependencies: + playwright-core: 1.51.0 + optionalDependencies: + fsevents: 2.3.2 + polite-json@5.0.0: {} possible-typed-array-names@1.1.0: {} @@ -27933,7 +27973,7 @@ snapshots: resolve-import: 1.4.6 rimraf: 5.0.10 sync-content: 1.0.2 - typescript: 5.7.3 + typescript: 5.8.2 walk-up-path: 3.0.1 tslib@2.8.1: {} @@ -28210,7 +28250,7 @@ snapshots: optionalDependencies: '@types/debug': 4.1.12 '@types/node': 18.19.76 - '@vitest/browser': 3.0.6(@types/node@22.7.9)(playwright@1.50.1)(typescript@5.8.2)(vite@6.1.1(@types/node@22.7.9)(tsx@4.19.3)(yaml@2.7.0))(vitest@3.0.6) + '@vitest/browser': 3.0.6(@types/node@22.7.9)(playwright@1.51.0)(typescript@5.8.2)(vite@6.1.1(@types/node@22.7.9)(tsx@4.19.3)(yaml@2.7.0))(vitest@3.0.6) transitivePeerDependencies: - jiti - less @@ -28250,7 +28290,7 @@ snapshots: optionalDependencies: '@types/debug': 4.1.12 '@types/node': 20.17.19 - '@vitest/browser': 3.0.6(@types/node@22.7.9)(playwright@1.50.1)(typescript@5.8.2)(vite@6.1.1(@types/node@22.7.9)(tsx@4.19.3)(yaml@2.7.0))(vitest@3.0.6) + '@vitest/browser': 3.0.6(@types/node@22.7.9)(playwright@1.51.0)(typescript@5.8.2)(vite@6.1.1(@types/node@22.7.9)(tsx@4.19.3)(yaml@2.7.0))(vitest@3.0.6) transitivePeerDependencies: - jiti - less @@ -28290,7 +28330,7 @@ snapshots: optionalDependencies: '@types/debug': 4.1.12 '@types/node': 22.7.9 - '@vitest/browser': 3.0.6(@types/node@22.7.9)(playwright@1.50.1)(typescript@5.8.2)(vite@6.1.1(@types/node@22.7.9)(tsx@4.19.3)(yaml@2.7.0))(vitest@3.0.6) + '@vitest/browser': 3.0.6(@types/node@22.7.9)(playwright@1.51.0)(typescript@5.8.2)(vite@6.1.1(@types/node@22.7.9)(tsx@4.19.3)(yaml@2.7.0))(vitest@3.0.6) transitivePeerDependencies: - jiti - less diff --git a/sdk/core/core-rest-pipeline/review/core-rest-pipeline.api.md b/sdk/core/core-rest-pipeline/review/core-rest-pipeline.api.md index b1cb4778bd37..a5acb82880e8 100644 --- a/sdk/core/core-rest-pipeline/review/core-rest-pipeline.api.md +++ b/sdk/core/core-rest-pipeline/review/core-rest-pipeline.api.md @@ -375,9 +375,9 @@ export type RequestBodyType = NodeJS.ReadableStream | (() => NodeJS.ReadableStre // @public export class RestError extends Error { + // Warning: (ae-forgotten-export) The symbol "custom" needs to be exported by the entry point index.d.ts + [custom]: () => string; constructor(message: string, options?: RestErrorOptions); - // (undocumented) - [x: symbol]: () => string; code?: string; details?: unknown; static readonly PARSE_ERROR: string; diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/CHANGELOG.md b/sdk/desktopvirtualization/arm-desktopvirtualization/CHANGELOG.md index dd06aae777d0..3bdb536df474 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/CHANGELOG.md +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/CHANGELOG.md @@ -1,15 +1,360 @@ # Release History - -## 1.2.1 (Unreleased) - + +## 2.0.0-beta.1 (2025-03-07) +Compared with version 1.2.0 + ### Features Added -### Breaking Changes + - Added operation group ActiveSessionHostConfigurations + - Added operation group ControlSessionHostUpdate + - Added operation group InitiateSessionHostUpdate + - Added operation group SessionHostConfigurations + - Added operation group SessionHostManagements + - Added operation group SessionHostManagementsUpdateStatus + - Added operation SessionHosts.retryProvisioning + - Added Interface ActiveDirectoryInfoPatchProperties + - Added Interface ActiveDirectoryInfoProperties + - Added Interface ActiveSessionHostConfiguration + - Added Interface ActiveSessionHostConfigurationList + - Added Interface ActiveSessionHostConfigurationsGetOptionalParams + - Added Interface ActiveSessionHostConfigurationsListByHostPoolNextOptionalParams + - Added Interface ActiveSessionHostConfigurationsListByHostPoolOptionalParams + - Added Interface ApplicationGroupPatchProperties + - Added Interface ApplicationPatchProperties + - Added Interface AzureActiveDirectoryInfoProperties + - Added Interface BootDiagnosticsInfoPatchProperties + - Added Interface BootDiagnosticsInfoProperties + - Added Interface ControlSessionHostUpdatePostHeaders + - Added Interface ControlSessionHostUpdatePostOptionalParams + - Added Interface CustomInfoPatchProperties + - Added Interface CustomInfoProperties + - Added Interface DesktopPatchProperties + - Added Interface DiskInfoPatchProperties + - Added Interface DiskInfoProperties + - Added Interface DomainInfoPatchProperties + - Added Interface DomainInfoProperties + - Added Interface ExpandMsixImageProperties + - Added Interface HostPoolPatchProperties + - Added Interface HostPoolUpdateConfigurationPatchProperties + - Added Interface HostPoolUpdateConfigurationProperties + - Added Interface HostPoolUpdateControlParameter + - Added Interface ImageInfoPatchProperties + - Added Interface ImageInfoProperties + - Added Interface InitiateSessionHostUpdatePostOptionalParams + - Added Interface KeyVaultCredentialsPatchProperties + - Added Interface KeyVaultCredentialsProperties + - Added Interface ManagedServiceIdentity + - Added Interface MarketplaceInfoPatchProperties + - Added Interface MarketplaceInfoProperties + - Added Interface MsixPackagePatchProperties + - Added Interface NetworkInfoPatchProperties + - Added Interface NetworkInfoProperties + - Added Interface PrivateEndpointConnectionProperties + - Added Interface PrivateLinkResourceProperties + - Added Interface ResourceProviderOperationListResult + - Added Interface ScalingPlanPatchProperties + - Added Interface ScalingPlanPersonalSchedulePatchProperties + - Added Interface ScalingPlanPooledSchedulePatchProperties + - Added Interface SecurityInfoPatchProperties + - Added Interface SecurityInfoProperties + - Added Interface SessionHostConfiguration + - Added Interface SessionHostConfigurationList + - Added Interface SessionHostConfigurationPatch + - Added Interface SessionHostConfigurationPatchProperties + - Added Interface SessionHostConfigurationsCreateOrUpdateHeaders + - Added Interface SessionHostConfigurationsCreateOrUpdateOptionalParams + - Added Interface SessionHostConfigurationsGetOptionalParams + - Added Interface SessionHostConfigurationsListByHostPoolNextOptionalParams + - Added Interface SessionHostConfigurationsListByHostPoolOptionalParams + - Added Interface SessionHostConfigurationsUpdateHeaders + - Added Interface SessionHostConfigurationsUpdateOptionalParams + - Added Interface SessionHostManagement + - Added Interface SessionHostManagementList + - Added Interface SessionHostManagementOperationProgress + - Added Interface SessionHostManagementPatch + - Added Interface SessionHostManagementPatchProperties + - Added Interface SessionHostManagementsCreateOrUpdateOptionalParams + - Added Interface SessionHostManagementsGetOptionalParams + - Added Interface SessionHostManagementsListByHostPoolNextOptionalParams + - Added Interface SessionHostManagementsListByHostPoolOptionalParams + - Added Interface SessionHostManagementsUpdateOptionalParams + - Added Interface SessionHostManagementsUpdateStatusGetOptionalParams + - Added Interface SessionHostManagementUpdateStatus + - Added Interface SessionHostManagementUpdateStatusProperties + - Added Interface SessionHostPatchProperties + - Added Interface SessionHostsRetryProvisioningOptionalParams + - Added Interface StartMenuItemProperties + - Added Interface UpdateSessionHostsRequestBody + - Added Interface UserAssignedIdentity + - Added Interface WorkspacePatchProperties + - Added Type Alias ActiveSessionHostConfigurationsGetResponse + - Added Type Alias ActiveSessionHostConfigurationsListByHostPoolNextResponse + - Added Type Alias ActiveSessionHostConfigurationsListByHostPoolResponse + - Added Type Alias ControlSessionHostUpdatePostResponse + - Added Type Alias DirectUDP + - Added Type Alias DomainJoinType + - Added Type Alias HostPoolUpdateAction + - Added Type Alias ManagedPrivateUDP + - Added Type Alias ManagedServiceIdentityType + - Added Type Alias ManagementType + - Added Type Alias ProvisioningStateSHC + - Added Type Alias PublicUDP + - Added Type Alias RelayUDP + - Added Type Alias SessionHostConfigurationsCreateOrUpdateResponse + - Added Type Alias SessionHostConfigurationsGetResponse + - Added Type Alias SessionHostConfigurationsListByHostPoolNextResponse + - Added Type Alias SessionHostConfigurationsListByHostPoolResponse + - Added Type Alias SessionHostConfigurationsUpdateResponse + - Added Type Alias SessionHostManagementsCreateOrUpdateResponse + - Added Type Alias SessionHostManagementsGetResponse + - Added Type Alias SessionHostManagementsListByHostPoolNextResponse + - Added Type Alias SessionHostManagementsListByHostPoolResponse + - Added Type Alias SessionHostManagementsUpdateResponse + - Added Type Alias SessionHostManagementsUpdateStatusGetResponse + - Added Type Alias SessionHostManagementUpdateOperationStatus + - Added Type Alias Type + - Added Type Alias VirtualMachineDiskType + - Added Type Alias VirtualMachineSecurityType + - Interface AppAttachPackage has a new optional parameter customData + - Interface AppAttachPackage has a new optional parameter failHealthCheckOnStagingFailure + - Interface AppAttachPackage has a new optional parameter hostPoolReferences + - Interface AppAttachPackage has a new optional parameter image + - Interface AppAttachPackage has a new optional parameter keyVaultURL + - Interface AppAttachPackage has a new optional parameter packageLookbackUrl + - Interface AppAttachPackage has a new optional parameter packageOwnerName + - Interface AppAttachPackage has a new optional parameter provisioningState + - Interface AppAttachPackageDeleteOptionalParams has a new optional parameter force + - Interface AppAttachPackagePatch has a new optional parameter tags + - Interface AppAttachPackagePatchProperties has a new optional parameter customData + - Interface AppAttachPackagePatchProperties has a new optional parameter packageLookbackUrl + - Interface ApplicationGroup has a new optional parameter etag + - Interface ApplicationGroup has a new optional parameter identity + - Interface ApplicationGroup has a new optional parameter kind + - Interface ApplicationGroup has a new optional parameter managedBy + - Interface ApplicationGroup has a new optional parameter plan + - Interface ApplicationGroup has a new optional parameter sku + - Interface ApplicationGroupPatch has a new optional parameter properties + - Interface ApplicationPatch has a new optional parameter properties + - Interface DesktopPatch has a new optional parameter properties + - Interface ExpandMsixImage has a new optional parameter properties + - Interface HostPool has a new optional parameter directUDP + - Interface HostPool has a new optional parameter etag + - Interface HostPool has a new optional parameter identity + - Interface HostPool has a new optional parameter kind + - Interface HostPool has a new optional parameter managedBy + - Interface HostPool has a new optional parameter managedPrivateUDP + - Interface HostPool has a new optional parameter managementType + - Interface HostPool has a new optional parameter plan + - Interface HostPool has a new optional parameter publicUDP + - Interface HostPool has a new optional parameter relayUDP + - Interface HostPool has a new optional parameter sku + - Interface HostPoolPatch has a new optional parameter properties + - Interface MsixPackagePatch has a new optional parameter properties + - Interface PrivateEndpointConnection has a new optional parameter properties + - Interface PrivateEndpointConnectionWithSystemData has a new optional parameter groupIds + - Interface PrivateEndpointConnectionWithSystemData has a new optional parameter privateEndpoint + - Interface PrivateEndpointConnectionWithSystemData has a new optional parameter privateLinkServiceConnectionState + - Interface PrivateEndpointConnectionWithSystemData has a new optional parameter provisioningState + - Interface PrivateLinkResource has a new optional parameter properties + - Interface ScalingPlan has a new optional parameter etag + - Interface ScalingPlan has a new optional parameter identity + - Interface ScalingPlan has a new optional parameter kind + - Interface ScalingPlan has a new optional parameter managedBy + - Interface ScalingPlan has a new optional parameter plan + - Interface ScalingPlan has a new optional parameter sku + - Interface ScalingPlanPatch has a new optional parameter properties + - Interface ScalingPlanPersonalSchedulePatch has a new optional parameter properties + - Interface ScalingPlanPooledSchedule has a new optional parameter namePropertiesName + - Interface ScalingPlanPooledSchedulePatch has a new optional parameter properties + - Interface SessionHost has a new optional parameter lastSessionHostUpdateTime + - Interface SessionHost has a new optional parameter sessionHostConfiguration + - Interface SessionHostPatch has a new optional parameter properties + - Interface SessionHostsListOptionalParams has a new optional parameter vmPath + - Interface StartMenuItem has a new optional parameter properties + - Interface Workspace has a new optional parameter etag + - Interface Workspace has a new optional parameter identity + - Interface Workspace has a new optional parameter kind + - Interface Workspace has a new optional parameter managedBy + - Interface Workspace has a new optional parameter plan + - Interface Workspace has a new optional parameter sku + - Interface WorkspacePatch has a new optional parameter properties + - Added Enum KnownDirectUDP + - Added Enum KnownDomainJoinType + - Added Enum KnownHostPoolUpdateAction + - Added Enum KnownManagedPrivateUDP + - Added Enum KnownManagedServiceIdentityType + - Added Enum KnownManagementType + - Added Enum KnownProvisioningStateSHC + - Added Enum KnownPublicUDP + - Added Enum KnownRelayUDP + - Added Enum KnownSessionHostManagementUpdateOperationStatus + - Added Enum KnownType + - Added Enum KnownVirtualMachineDiskType + - Added Enum KnownVirtualMachineSecurityType + - Enum KnownLoadBalancerType has a new value MultiplePersistent + - Enum KnownScalingHostPoolType has a new value Personal -### Bugs Fixed - -### Other Changes +### Breaking Changes + - Operation MsixPackages.update has a new signature + - Operation PrivateEndpointConnections.updateByHostPool has a new signature + - Operation PrivateEndpointConnections.updateByWorkspace has a new signature + - Interface AppAttachPackage no longer has parameter properties + - Interface ApplicationGroupPatch no longer has parameter description + - Interface ApplicationGroupPatch no longer has parameter friendlyName + - Interface ApplicationGroupPatch no longer has parameter showInFeed + - Interface ApplicationPatch no longer has parameter applicationType + - Interface ApplicationPatch no longer has parameter commandLineArguments + - Interface ApplicationPatch no longer has parameter commandLineSetting + - Interface ApplicationPatch no longer has parameter description + - Interface ApplicationPatch no longer has parameter filePath + - Interface ApplicationPatch no longer has parameter friendlyName + - Interface ApplicationPatch no longer has parameter iconIndex + - Interface ApplicationPatch no longer has parameter iconPath + - Interface ApplicationPatch no longer has parameter msixPackageApplicationId + - Interface ApplicationPatch no longer has parameter msixPackageFamilyName + - Interface ApplicationPatch no longer has parameter showInPortal + - Interface ApplicationPatch no longer has parameter tags + - Interface DesktopPatch no longer has parameter description + - Interface DesktopPatch no longer has parameter friendlyName + - Interface DesktopPatch no longer has parameter tags + - Interface ExpandMsixImage no longer has parameter certificateExpiry + - Interface ExpandMsixImage no longer has parameter certificateName + - Interface ExpandMsixImage no longer has parameter displayName + - Interface ExpandMsixImage no longer has parameter imagePath + - Interface ExpandMsixImage no longer has parameter isActive + - Interface ExpandMsixImage no longer has parameter isRegularRegistration + - Interface ExpandMsixImage no longer has parameter lastUpdated + - Interface ExpandMsixImage no longer has parameter packageAlias + - Interface ExpandMsixImage no longer has parameter packageApplications + - Interface ExpandMsixImage no longer has parameter packageDependencies + - Interface ExpandMsixImage no longer has parameter packageFamilyName + - Interface ExpandMsixImage no longer has parameter packageFullName + - Interface ExpandMsixImage no longer has parameter packageName + - Interface ExpandMsixImage no longer has parameter packageRelativePath + - Interface ExpandMsixImage no longer has parameter version + - Interface HostPoolPatch no longer has parameter agentUpdate + - Interface HostPoolPatch no longer has parameter customRdpProperty + - Interface HostPoolPatch no longer has parameter description + - Interface HostPoolPatch no longer has parameter friendlyName + - Interface HostPoolPatch no longer has parameter loadBalancerType + - Interface HostPoolPatch no longer has parameter maxSessionLimit + - Interface HostPoolPatch no longer has parameter personalDesktopAssignmentType + - Interface HostPoolPatch no longer has parameter preferredAppGroupType + - Interface HostPoolPatch no longer has parameter publicNetworkAccess + - Interface HostPoolPatch no longer has parameter registrationInfo + - Interface HostPoolPatch no longer has parameter ring + - Interface HostPoolPatch no longer has parameter ssoadfsAuthority + - Interface HostPoolPatch no longer has parameter ssoClientId + - Interface HostPoolPatch no longer has parameter ssoClientSecretKeyVaultPath + - Interface HostPoolPatch no longer has parameter ssoSecretType + - Interface HostPoolPatch no longer has parameter startVMOnConnect + - Interface HostPoolPatch no longer has parameter validationEnvironment + - Interface HostPoolPatch no longer has parameter vmTemplate + - Interface MsixPackagePatch no longer has parameter displayName + - Interface MsixPackagePatch no longer has parameter isActive + - Interface MsixPackagePatch no longer has parameter isRegularRegistration + - Interface MsixPackagesUpdateOptionalParams no longer has parameter msixPackage + - Interface PrivateEndpointConnection no longer has parameter groupIds + - Interface PrivateEndpointConnection no longer has parameter privateEndpoint + - Interface PrivateEndpointConnection no longer has parameter privateLinkServiceConnectionState + - Interface PrivateEndpointConnection no longer has parameter provisioningState + - Interface PrivateLinkResource no longer has parameter groupId + - Interface PrivateLinkResource no longer has parameter requiredMembers + - Interface PrivateLinkResource no longer has parameter requiredZoneNames + - Interface ScalingPlanPatch no longer has parameter description + - Interface ScalingPlanPatch no longer has parameter exclusionTag + - Interface ScalingPlanPatch no longer has parameter friendlyName + - Interface ScalingPlanPatch no longer has parameter hostPoolReferences + - Interface ScalingPlanPatch no longer has parameter schedules + - Interface ScalingPlanPatch no longer has parameter timeZone + - Interface ScalingPlanPersonalSchedulePatch no longer has parameter daysOfWeek + - Interface ScalingPlanPersonalSchedulePatch no longer has parameter offPeakActionOnDisconnect + - Interface ScalingPlanPersonalSchedulePatch no longer has parameter offPeakActionOnLogoff + - Interface ScalingPlanPersonalSchedulePatch no longer has parameter offPeakMinutesToWaitOnDisconnect + - Interface ScalingPlanPersonalSchedulePatch no longer has parameter offPeakMinutesToWaitOnLogoff + - Interface ScalingPlanPersonalSchedulePatch no longer has parameter offPeakStartTime + - Interface ScalingPlanPersonalSchedulePatch no longer has parameter offPeakStartVMOnConnect + - Interface ScalingPlanPersonalSchedulePatch no longer has parameter peakActionOnDisconnect + - Interface ScalingPlanPersonalSchedulePatch no longer has parameter peakActionOnLogoff + - Interface ScalingPlanPersonalSchedulePatch no longer has parameter peakMinutesToWaitOnDisconnect + - Interface ScalingPlanPersonalSchedulePatch no longer has parameter peakMinutesToWaitOnLogoff + - Interface ScalingPlanPersonalSchedulePatch no longer has parameter peakStartTime + - Interface ScalingPlanPersonalSchedulePatch no longer has parameter peakStartVMOnConnect + - Interface ScalingPlanPersonalSchedulePatch no longer has parameter rampDownActionOnDisconnect + - Interface ScalingPlanPersonalSchedulePatch no longer has parameter rampDownActionOnLogoff + - Interface ScalingPlanPersonalSchedulePatch no longer has parameter rampDownMinutesToWaitOnDisconnect + - Interface ScalingPlanPersonalSchedulePatch no longer has parameter rampDownMinutesToWaitOnLogoff + - Interface ScalingPlanPersonalSchedulePatch no longer has parameter rampDownStartTime + - Interface ScalingPlanPersonalSchedulePatch no longer has parameter rampDownStartVMOnConnect + - Interface ScalingPlanPersonalSchedulePatch no longer has parameter rampUpActionOnDisconnect + - Interface ScalingPlanPersonalSchedulePatch no longer has parameter rampUpActionOnLogoff + - Interface ScalingPlanPersonalSchedulePatch no longer has parameter rampUpAutoStartHosts + - Interface ScalingPlanPersonalSchedulePatch no longer has parameter rampUpMinutesToWaitOnDisconnect + - Interface ScalingPlanPersonalSchedulePatch no longer has parameter rampUpMinutesToWaitOnLogoff + - Interface ScalingPlanPersonalSchedulePatch no longer has parameter rampUpStartTime + - Interface ScalingPlanPersonalSchedulePatch no longer has parameter rampUpStartVMOnConnect + - Interface ScalingPlanPooledSchedulePatch no longer has parameter daysOfWeek + - Interface ScalingPlanPooledSchedulePatch no longer has parameter offPeakLoadBalancingAlgorithm + - Interface ScalingPlanPooledSchedulePatch no longer has parameter offPeakStartTime + - Interface ScalingPlanPooledSchedulePatch no longer has parameter peakLoadBalancingAlgorithm + - Interface ScalingPlanPooledSchedulePatch no longer has parameter peakStartTime + - Interface ScalingPlanPooledSchedulePatch no longer has parameter rampDownCapacityThresholdPct + - Interface ScalingPlanPooledSchedulePatch no longer has parameter rampDownForceLogoffUsers + - Interface ScalingPlanPooledSchedulePatch no longer has parameter rampDownLoadBalancingAlgorithm + - Interface ScalingPlanPooledSchedulePatch no longer has parameter rampDownMinimumHostsPct + - Interface ScalingPlanPooledSchedulePatch no longer has parameter rampDownNotificationMessage + - Interface ScalingPlanPooledSchedulePatch no longer has parameter rampDownStartTime + - Interface ScalingPlanPooledSchedulePatch no longer has parameter rampDownStopHostsWhen + - Interface ScalingPlanPooledSchedulePatch no longer has parameter rampDownWaitTimeMinutes + - Interface ScalingPlanPooledSchedulePatch no longer has parameter rampUpCapacityThresholdPct + - Interface ScalingPlanPooledSchedulePatch no longer has parameter rampUpLoadBalancingAlgorithm + - Interface ScalingPlanPooledSchedulePatch no longer has parameter rampUpMinimumHostsPct + - Interface ScalingPlanPooledSchedulePatch no longer has parameter rampUpStartTime + - Interface SessionHostPatch no longer has parameter allowNewSession + - Interface SessionHostPatch no longer has parameter assignedUser + - Interface SessionHostPatch no longer has parameter friendlyName + - Interface StartMenuItem no longer has parameter appAlias + - Interface StartMenuItem no longer has parameter commandLineArguments + - Interface StartMenuItem no longer has parameter filePath + - Interface StartMenuItem no longer has parameter iconIndex + - Interface StartMenuItem no longer has parameter iconPath + - Interface WorkspacePatch no longer has parameter applicationGroupReferences + - Interface WorkspacePatch no longer has parameter description + - Interface WorkspacePatch no longer has parameter friendlyName + - Interface WorkspacePatch no longer has parameter publicNetworkAccess + - Parameter value of interface AppAttachPackageList is now required + - Parameter value of interface ApplicationGroupList is now required + - Parameter value of interface ApplicationList is now required + - Parameter value of interface DesktopList is now required + - Parameter value of interface ExpandMsixImageList is now required + - Parameter value of interface HostPoolList is now required + - Parameter value of interface MsixPackageList is now required + - Parameter value of interface PrivateEndpointConnectionListResultWithSystemData is now required + - Parameter value of interface PrivateLinkResourceListResult is now required + - Parameter value of interface ScalingPlanList is now required + - Parameter daysOfWeek of interface ScalingPlanPersonalSchedule is now required + - Parameter offPeakStartTime of interface ScalingPlanPersonalSchedule is now required + - Parameter peakStartTime of interface ScalingPlanPersonalSchedule is now required + - Parameter rampDownStartTime of interface ScalingPlanPersonalSchedule is now required + - Parameter rampUpStartTime of interface ScalingPlanPersonalSchedule is now required + - Parameter value of interface ScalingPlanPersonalScheduleList is now required + - Parameter daysOfWeek of interface ScalingPlanPooledSchedule is now required + - Parameter offPeakStartTime of interface ScalingPlanPooledSchedule is now required + - Parameter peakStartTime of interface ScalingPlanPooledSchedule is now required + - Parameter rampDownCapacityThresholdPct of interface ScalingPlanPooledSchedule is now required + - Parameter rampDownStartTime of interface ScalingPlanPooledSchedule is now required + - Parameter rampUpCapacityThresholdPct of interface ScalingPlanPooledSchedule is now required + - Parameter rampUpStartTime of interface ScalingPlanPooledSchedule is now required + - Parameter value of interface ScalingPlanPooledScheduleList is now required + - Parameter value of interface SessionHostList is now required + - Parameter value of interface StartMenuItemList is now required + - Parameter value of interface UserSessionList is now required + - Parameter value of interface WorkspaceList is now required + - Type of parameter daysOfWeek of interface ScalingSchedule is changed from ScalingScheduleDaysOfWeekItem[] to DayOfWeek[] + - Removed Enum KnownScalingScheduleDaysOfWeekItem + + ## 1.2.0 (2024-09-11) ### Features Added diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/LICENSE b/sdk/desktopvirtualization/arm-desktopvirtualization/LICENSE index b2f52a2bad4e..63447fd8bbbf 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/LICENSE +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/LICENSE @@ -18,4 +18,4 @@ 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. +SOFTWARE. \ No newline at end of file diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/README.md b/sdk/desktopvirtualization/arm-desktopvirtualization/README.md index d2e4b9c307c0..fd28e825bd16 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/README.md +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/README.md @@ -2,9 +2,11 @@ This package contains an isomorphic SDK (runs both in Node.js and in browsers) for Azure Desktop Virtualization API client. +This Typespec represents the Desktop Virtualization API interfaces. + [Source code](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/desktopvirtualization/arm-desktopvirtualization) | [Package (NPM)](https://www.npmjs.com/package/@azure/arm-desktopvirtualization) | -[API reference documentation](https://learn.microsoft.com/javascript/api/@azure/arm-desktopvirtualization) | +[API reference documentation](https://learn.microsoft.com/javascript/api/@azure/arm-desktopvirtualization?view=azure-node-preview) | [Samples](https://github.com/Azure-Samples/azure-samples-js-management) ## Getting started @@ -42,7 +44,6 @@ npm install @azure/identity ``` You will also need to **register a new AAD application and grant access to Azure Desktop Virtualization API** by assigning the suitable role to your service principal (note: roles such as `"Owner"` will not grant the necessary permissions). -Set the values of the client ID, tenant ID, and client secret of the AAD application as environment variables: `AZURE_CLIENT_ID`, `AZURE_TENANT_ID`, `AZURE_CLIENT_SECRET`. For more information about how to create an Azure AD Application check out [this guide](https://learn.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal). @@ -62,16 +63,14 @@ For browser environments, use the `InteractiveBrowserCredential` from the `@azur import { InteractiveBrowserCredential } from "@azure/identity"; import { DesktopVirtualizationAPIClient } from "@azure/arm-desktopvirtualization"; -const subscriptionId = "00000000-0000-0000-0000-000000000000"; const credential = new InteractiveBrowserCredential({ tenantId: "", - clientId: "", -}); + clientId: "" + }); const client = new DesktopVirtualizationAPIClient(credential, subscriptionId); ``` ### JavaScript Bundle - To use this client library in the browser, first you need to use a bundler. For details on how to do this, please refer to our [bundling documentation](https://aka.ms/AzureSDKBundling). ## Key concepts @@ -106,7 +105,7 @@ If you'd like to contribute to this library, please read the [contributing guide - [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%2Fsdk%2Fdesktopvirtualization%2Farm-desktopvirtualization%2FREADME.png) [azure_cli]: https://learn.microsoft.com/cli/azure [azure_sub]: https://azure.microsoft.com/free/ diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/_meta.json b/sdk/desktopvirtualization/arm-desktopvirtualization/_meta.json index 37fdb2d7f46a..e00bf9466e5f 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/_meta.json +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/_meta.json @@ -1,8 +1,8 @@ { - "commit": "3519c80fe510a268f6e59a29ccac8a53fdec15b6", + "commit": "c6898c932c2a5bbfe895751cee4f882a4687a0a8", "readme": "specification/desktopvirtualization/resource-manager/readme.md", - "autorest_command": "autorest --version=3.9.7 --typescript --modelerfour.lenient-model-deduplication --azure-arm --head-as-boolean=true --license-header=MICROSOFT_MIT_NO_VERSION --generate-test --typescript-sdks-folder=D:\\Git\\azure-sdk-for-js ..\\azure-rest-api-specs\\specification\\desktopvirtualization\\resource-manager\\readme.md --use=@autorest/typescript@6.0.27 --generate-sample=true", + "autorest_command": "autorest --version=3.9.7 --typescript --modelerfour.lenient-model-deduplication --azure-arm --head-as-boolean=true --license-header=MICROSOFT_MIT_NO_VERSION --generate-test --typescript-sdks-folder=/mnt/vss/_work/1/s/azure-sdk-for-js ../azure-rest-api-specs/specification/desktopvirtualization/resource-manager/readme.md --use=@autorest/typescript@^6.0.12", "repository_url": "https://github.com/Azure/azure-rest-api-specs.git", - "release_tool": "@azure-tools/js-sdk-release-tools@2.7.13", - "use": "@autorest/typescript@6.0.27" -} + "release_tool": "@azure-tools/js-sdk-release-tools@2.7.21", + "use": "@autorest/typescript@^6.0.12" +} \ No newline at end of file diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/api-extractor.json b/sdk/desktopvirtualization/arm-desktopvirtualization/api-extractor.json index de4856b72d49..391ea6b62b0f 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/api-extractor.json +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/api-extractor.json @@ -1,6 +1,6 @@ { "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", - "mainEntryPointFilePath": "dist/esm/index.d.ts", + "mainEntryPointFilePath": "./dist-esm/src/index.d.ts", "docModel": { "enabled": true }, @@ -11,7 +11,7 @@ "dtsRollup": { "enabled": true, "untrimmedFilePath": "", - "publicTrimmedFilePath": "dist/arm-desktopvirtualization.d.ts" + "publicTrimmedFilePath": "./types/arm-desktopvirtualization.d.ts" }, "messages": { "tsdocMessageReporting": { @@ -28,4 +28,4 @@ } } } -} +} \ No newline at end of file diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/package.json b/sdk/desktopvirtualization/arm-desktopvirtualization/package.json index ef11661b8969..9cc418a226bb 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/package.json +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/package.json @@ -3,15 +3,17 @@ "sdk-type": "mgmt", "author": "Microsoft Corporation", "description": "A generated SDK for DesktopVirtualizationAPIClient.", - "version": "1.2.1", + "version": "2.0.0-beta.1", "engines": { "node": ">=18.0.0" }, "dependencies": { + "@azure/abort-controller": "^2.1.2", "@azure/core-auth": "^1.9.0", - "@azure/core-client": "^1.9.2", + "@azure/core-client": "^1.9.3", + "@azure/core-lro": "^2.5.4", "@azure/core-paging": "^1.6.2", - "@azure/core-rest-pipeline": "^1.18.2", + "@azure/core-rest-pipeline": "^1.19.1", "tslib": "^2.8.1" }, "keywords": [ @@ -19,29 +21,31 @@ "azure", "typescript", "browser", - "isomorphic", - "cloud" + "isomorphic" ], "license": "MIT", "main": "./dist/commonjs/index.js", - "module": "./dist/esm/index.js", + "module": "./dist-esm/src/index.js", "types": "./dist/commonjs/index.d.ts", "devDependencies": { "@azure-tools/test-credential": "^2.0.0", "@azure-tools/test-recorder": "^4.1.0", "@azure-tools/test-utils-vitest": "^1.0.0", "@azure/dev-tool": "^1.0.0", - "@azure/identity": "^4.6.0", + "@azure/identity": "^4.7.0", "@azure/logger": "^1.1.4", "@types/node": "^18.0.0", - "@vitest/browser": "^3.0.3", - "@vitest/coverage-istanbul": "^3.0.3", + "@vitest/browser": "^3.0.6", + "@vitest/coverage-istanbul": "^3.0.6", "dotenv": "^16.0.0", - "playwright": "^1.50.0", - "typescript": "~5.7.2", - "vitest": "^3.0.3" + "playwright": "^1.51.0", + "typescript": "~5.6.2", + "vitest": "^3.0.6" + }, + "repository": { + "type": "git", + "url": "https://github.com/Azure/azure-sdk-for-js.git" }, - "repository": "github:Azure/azure-sdk-for-js", "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, @@ -89,14 +93,6 @@ }, "autoPublish": true, "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/desktopvirtualization/arm-desktopvirtualization", - "//sampleConfiguration": { - "productName": "", - "productSlugs": [ - "azure" - ], - "disableDocsMs": true, - "apiRefLink": "https://learn.microsoft.com/javascript/api/@azure/arm-desktopvirtualization?view=azure-node-preview" - }, "type": "module", "tshy": { "project": "./tsconfig.src.json", @@ -137,4 +133,4 @@ } } } -} +} \ No newline at end of file diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/review/arm-desktopvirtualization.api.md b/sdk/desktopvirtualization/arm-desktopvirtualization/review/arm-desktopvirtualization.api.md index 5529e3513346..445e186a8f78 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/review/arm-desktopvirtualization.api.md +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/review/arm-desktopvirtualization.api.md @@ -6,7 +6,76 @@ import * as coreAuth from '@azure/core-auth'; import * as coreClient from '@azure/core-client'; +import { OperationState } from '@azure/core-lro'; import { PagedAsyncIterableIterator } from '@azure/core-paging'; +import { SimplePollerLike } from '@azure/core-lro'; + +// @public +export interface ActiveDirectoryInfoPatchProperties { + domainCredentials?: KeyVaultCredentialsPatchProperties; +} + +// @public +export interface ActiveDirectoryInfoProperties { + domainCredentials: KeyVaultCredentialsProperties; + domainName?: string; + ouPath: string; +} + +// @public +export interface ActiveSessionHostConfiguration extends ProxyResource { + availabilityZones?: number[]; + bootDiagnosticsInfo?: BootDiagnosticsInfoProperties; + customConfigurationScriptUrl?: string; + diskInfo: DiskInfoProperties; + domainInfo: DomainInfoProperties; + friendlyName?: string; + imageInfo: ImageInfoProperties; + networkInfo: NetworkInfoProperties; + securityInfo?: SecurityInfoProperties; + readonly version?: Date; + vmAdminCredentials: KeyVaultCredentialsProperties; + vmLocation?: string; + vmNamePrefix: string; + vmResourceGroup?: string; + vmSizeId: string; + vmTags?: { + [propertyName: string]: string; + }; +} + +// @public +export interface ActiveSessionHostConfigurationList { + nextLink?: string; + value: ActiveSessionHostConfiguration[]; +} + +// @public +export interface ActiveSessionHostConfigurations { + get(resourceGroupName: string, hostPoolName: string, options?: ActiveSessionHostConfigurationsGetOptionalParams): Promise; + listByHostPool(resourceGroupName: string, hostPoolName: string, options?: ActiveSessionHostConfigurationsListByHostPoolOptionalParams): PagedAsyncIterableIterator; +} + +// @public +export interface ActiveSessionHostConfigurationsGetOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ActiveSessionHostConfigurationsGetResponse = ActiveSessionHostConfiguration; + +// @public +export interface ActiveSessionHostConfigurationsListByHostPoolNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ActiveSessionHostConfigurationsListByHostPoolNextResponse = ActiveSessionHostConfigurationList; + +// @public +export interface ActiveSessionHostConfigurationsListByHostPoolOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ActiveSessionHostConfigurationsListByHostPoolResponse = ActiveSessionHostConfigurationList; // @public export interface AgentUpdatePatchProperties { @@ -26,7 +95,14 @@ export interface AgentUpdateProperties { // @public export interface AppAttachPackage extends TrackedResource { - properties: AppAttachPackageProperties; + customData?: string; + failHealthCheckOnStagingFailure?: FailHealthCheckOnStagingFailure; + hostPoolReferences?: string[]; + image?: AppAttachPackageInfoProperties; + keyVaultURL?: string; + packageLookbackUrl?: string; + packageOwnerName?: string; + readonly provisioningState?: ProvisioningState; } // @public @@ -41,6 +117,7 @@ export type AppAttachPackageCreateOrUpdateResponse = AppAttachPackage; // @public export interface AppAttachPackageDeleteOptionalParams extends coreClient.OperationOptions { + force?: boolean; } // @public @@ -91,8 +168,8 @@ export interface AppAttachPackageInfoProperties { // @public export interface AppAttachPackageList { - readonly nextLink?: string; - value?: AppAttachPackage[]; + nextLink?: string; + value: AppAttachPackage[]; } // @public @@ -138,23 +215,19 @@ export interface AppAttachPackageOperations { // @public export interface AppAttachPackagePatch extends Resource { properties?: AppAttachPackagePatchProperties; + tags?: { + [propertyName: string]: string; + }; } // @public export interface AppAttachPackagePatchProperties { + customData?: string; failHealthCheckOnStagingFailure?: FailHealthCheckOnStagingFailure; hostPoolReferences?: string[]; image?: AppAttachPackageInfoProperties; keyVaultURL?: string; -} - -// @public -export interface AppAttachPackageProperties { - failHealthCheckOnStagingFailure?: FailHealthCheckOnStagingFailure; - hostPoolReferences?: string[]; - image?: AppAttachPackageInfoProperties; - keyVaultURL?: string; - readonly provisioningState?: ProvisioningState; + packageLookbackUrl?: string; } // @public @@ -166,7 +239,7 @@ export interface AppAttachPackageUpdateOptionalParams extends coreClient.Operati export type AppAttachPackageUpdateResponse = AppAttachPackage; // @public -export interface Application extends Resource { +export interface Application extends ProxyResource { applicationType?: RemoteApplicationType; commandLineArguments?: string; commandLineSetting: CommandLineSetting; @@ -184,33 +257,44 @@ export interface Application extends Resource { } // @public -export interface ApplicationGroup extends ResourceModelWithAllowedPropertySet { +export interface ApplicationGroup extends TrackedResource { applicationGroupType: ApplicationGroupType; readonly cloudPcResource?: boolean; description?: string; + readonly etag?: string; friendlyName?: string; hostPoolArmPath: string; + identity?: ManagedServiceIdentity; + kind?: string; + managedBy?: string; readonly objectId?: string; + plan?: Plan; showInFeed?: boolean; + sku?: Sku; readonly workspaceArmPath?: string; } // @public export interface ApplicationGroupList { - readonly nextLink?: string; - value?: ApplicationGroup[]; + nextLink?: string; + value: ApplicationGroup[]; } // @public export interface ApplicationGroupPatch extends Resource { - description?: string; - friendlyName?: string; - showInFeed?: boolean; + properties?: ApplicationGroupPatchProperties; tags?: { [propertyName: string]: string; }; } +// @public +export interface ApplicationGroupPatchProperties { + description?: string; + friendlyName?: string; + showInFeed?: boolean; +} + // @public export interface ApplicationGroups { createOrUpdate(resourceGroupName: string, applicationGroupName: string, applicationGroup: ApplicationGroup, options?: ApplicationGroupsCreateOrUpdateOptionalParams): Promise; @@ -285,12 +369,17 @@ export type ApplicationGroupType = string; // @public export interface ApplicationList { - readonly nextLink?: string; - value?: Application[]; + nextLink?: string; + value: Application[]; } // @public export interface ApplicationPatch { + properties?: ApplicationPatchProperties; +} + +// @public +export interface ApplicationPatchProperties { applicationType?: RemoteApplicationType; commandLineArguments?: string; commandLineSetting?: CommandLineSetting; @@ -302,9 +391,6 @@ export interface ApplicationPatch { msixPackageApplicationId?: string; msixPackageFamilyName?: string; showInPortal?: boolean; - tags?: { - [propertyName: string]: string; - }; } // @public @@ -363,27 +449,64 @@ export type ApplicationsUpdateResponse = Application; export type ApplicationType = string; // @public -export interface CloudError { - error?: CloudErrorProperties; +export interface AzureActiveDirectoryInfoProperties { + mdmProviderGuid: string; +} + +// @public +export interface BootDiagnosticsInfoPatchProperties { + enabled?: boolean; + storageUri?: string; } // @public -export interface CloudErrorProperties { - code?: string; - message?: string; +export interface BootDiagnosticsInfoProperties { + enabled?: boolean; + storageUri?: string; } // @public export type CommandLineSetting = string; +// @public +export interface ControlSessionHostUpdate { + beginPost(resourceGroupName: string, hostPoolName: string, hostPoolUpdateControlParameter: HostPoolUpdateControlParameter, options?: ControlSessionHostUpdatePostOptionalParams): Promise, ControlSessionHostUpdatePostResponse>>; + beginPostAndWait(resourceGroupName: string, hostPoolName: string, hostPoolUpdateControlParameter: HostPoolUpdateControlParameter, options?: ControlSessionHostUpdatePostOptionalParams): Promise; +} + +// @public +export interface ControlSessionHostUpdatePostHeaders { + location?: string; + retryAfter?: number; +} + +// @public +export interface ControlSessionHostUpdatePostOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type ControlSessionHostUpdatePostResponse = ControlSessionHostUpdatePostHeaders; + // @public export type CreatedByType = string; +// @public +export interface CustomInfoPatchProperties { + resourceId?: string; +} + +// @public +export interface CustomInfoProperties { + resourceId: string; +} + // @public export type DayOfWeek = "Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday" | "Sunday"; // @public -export interface Desktop extends Resource { +export interface Desktop extends ProxyResource { description?: string; friendlyName?: string; readonly iconContent?: Uint8Array; @@ -393,17 +516,19 @@ export interface Desktop extends Resource { // @public export interface DesktopList { - readonly nextLink?: string; - value?: Desktop[]; + nextLink?: string; + value: Desktop[]; } // @public export interface DesktopPatch { + properties?: DesktopPatchProperties; +} + +// @public +export interface DesktopPatchProperties { description?: string; friendlyName?: string; - tags?: { - [propertyName: string]: string; - }; } // @public @@ -451,6 +576,8 @@ export class DesktopVirtualizationAPIClient extends coreClient.ServiceClient { $host: string; constructor(credentials: coreAuth.TokenCredential, subscriptionId: string, options?: DesktopVirtualizationAPIClientOptionalParams); // (undocumented) + activeSessionHostConfigurations: ActiveSessionHostConfigurations; + // (undocumented) apiVersion: string; // (undocumented) appAttachPackageInfo: AppAttachPackageInfo; @@ -461,10 +588,14 @@ export class DesktopVirtualizationAPIClient extends coreClient.ServiceClient { // (undocumented) applications: Applications; // (undocumented) + controlSessionHostUpdate: ControlSessionHostUpdate; + // (undocumented) desktops: Desktops; // (undocumented) hostPools: HostPools; // (undocumented) + initiateSessionHostUpdate: InitiateSessionHostUpdate; + // (undocumented) msixImages: MsixImages; // (undocumented) msixPackages: MsixPackages; @@ -481,6 +612,12 @@ export class DesktopVirtualizationAPIClient extends coreClient.ServiceClient { // (undocumented) scalingPlans: ScalingPlans; // (undocumented) + sessionHostConfigurations: SessionHostConfigurations; + // (undocumented) + sessionHostManagements: SessionHostManagements; + // (undocumented) + sessionHostManagementsUpdateStatus: SessionHostManagementsUpdateStatus; + // (undocumented) sessionHosts: SessionHosts; // (undocumented) startMenuItems: StartMenuItems; @@ -499,6 +636,34 @@ export interface DesktopVirtualizationAPIClientOptionalParams extends coreClient endpoint?: string; } +// @public +export type DirectUDP = string; + +// @public +export interface DiskInfoPatchProperties { + type?: VirtualMachineDiskType; +} + +// @public +export interface DiskInfoProperties { + type: VirtualMachineDiskType; +} + +// @public +export interface DomainInfoPatchProperties { + activeDirectoryInfo?: ActiveDirectoryInfoPatchProperties; +} + +// @public +export interface DomainInfoProperties { + activeDirectoryInfo?: ActiveDirectoryInfoProperties; + azureActiveDirectoryInfo?: AzureActiveDirectoryInfoProperties; + joinType: DomainJoinType; +} + +// @public +export type DomainJoinType = string; + // @public export interface ErrorAdditionalInfo { readonly info?: Record; @@ -521,6 +686,17 @@ export interface ErrorResponse { // @public export interface ExpandMsixImage extends Resource { + properties?: ExpandMsixImageProperties; +} + +// @public +export interface ExpandMsixImageList { + nextLink?: string; + value: ExpandMsixImage[]; +} + +// @public +export interface ExpandMsixImageProperties { certificateExpiry?: Date; certificateName?: string; displayName?: string; @@ -538,12 +714,6 @@ export interface ExpandMsixImage extends Resource { version?: string; } -// @public -export interface ExpandMsixImageList { - readonly nextLink?: string; - value?: ExpandMsixImage[]; -} - // @public export type FailHealthCheckOnStagingFailure = string; @@ -557,24 +727,35 @@ export type HealthCheckName = string; export type HealthCheckResult = string; // @public -export interface HostPool extends ResourceModelWithAllowedPropertySet { +export interface HostPool extends TrackedResource { agentUpdate?: AgentUpdateProperties; readonly appAttachPackageReferences?: string[]; readonly applicationGroupReferences?: string[]; readonly cloudPcResource?: boolean; customRdpProperty?: string; description?: string; + directUDP?: DirectUDP; + readonly etag?: string; friendlyName?: string; hostPoolType: HostPoolType; + identity?: ManagedServiceIdentity; + kind?: string; loadBalancerType: LoadBalancerType; + managedBy?: string; + managedPrivateUDP?: ManagedPrivateUDP; + managementType?: ManagementType; maxSessionLimit?: number; readonly objectId?: string; personalDesktopAssignmentType?: PersonalDesktopAssignmentType; + plan?: Plan; preferredAppGroupType: PreferredAppGroupType; readonly privateEndpointConnections?: PrivateEndpointConnection[]; publicNetworkAccess?: HostpoolPublicNetworkAccess; + publicUDP?: PublicUDP; registrationInfo?: RegistrationInfo; + relayUDP?: RelayUDP; ring?: number; + sku?: Sku; ssoadfsAuthority?: string; ssoClientId?: string; ssoClientSecretKeyVaultPath?: string; @@ -586,31 +767,40 @@ export interface HostPool extends ResourceModelWithAllowedPropertySet { // @public export interface HostPoolList { - readonly nextLink?: string; - value?: HostPool[]; + nextLink?: string; + value: HostPool[]; } // @public export interface HostPoolPatch extends Resource { + properties?: HostPoolPatchProperties; + tags?: { + [propertyName: string]: string; + }; +} + +// @public +export interface HostPoolPatchProperties { agentUpdate?: AgentUpdatePatchProperties; customRdpProperty?: string; description?: string; + directUDP?: DirectUDP; friendlyName?: string; loadBalancerType?: LoadBalancerType; + managedPrivateUDP?: ManagedPrivateUDP; maxSessionLimit?: number; personalDesktopAssignmentType?: PersonalDesktopAssignmentType; preferredAppGroupType?: PreferredAppGroupType; publicNetworkAccess?: HostpoolPublicNetworkAccess; + publicUDP?: PublicUDP; registrationInfo?: RegistrationInfoPatch; + relayUDP?: RelayUDP; ring?: number; ssoadfsAuthority?: string; ssoClientId?: string; ssoClientSecretKeyVaultPath?: string; ssoSecretType?: SSOSecretType; startVMOnConnect?: boolean; - tags?: { - [propertyName: string]: string; - }; validationEnvironment?: boolean; vmTemplate?: string; } @@ -709,10 +899,42 @@ export type HostPoolsUpdateResponse = HostPool; export type HostPoolType = string; // @public -export interface Identity { - readonly principalId?: string; - readonly tenantId?: string; - type?: "SystemAssigned"; +export type HostPoolUpdateAction = string; + +// @public +export interface HostPoolUpdateConfigurationPatchProperties { + deleteOriginalVm?: boolean; + logOffDelayMinutes?: number; + logOffMessage?: string; + maxVmsRemoved?: number; +} + +// @public +export interface HostPoolUpdateConfigurationProperties { + deleteOriginalVm?: boolean; + logOffDelayMinutes: number; + logOffMessage?: string; + maxVmsRemoved: number; +} + +// @public +export interface HostPoolUpdateControlParameter { + action: HostPoolUpdateAction; + cancelMessage?: string; +} + +// @public +export interface ImageInfoPatchProperties { + customInfo?: CustomInfoPatchProperties; + marketplaceInfo?: MarketplaceInfoPatchProperties; + type?: Type; +} + +// @public +export interface ImageInfoProperties { + customInfo?: CustomInfoProperties; + marketplaceInfo?: MarketplaceInfoProperties; + type: Type; } // @public @@ -721,6 +943,28 @@ export interface ImportPackageInfoRequest { path?: string; } +// @public +export interface InitiateSessionHostUpdate { + post(resourceGroupName: string, hostPoolName: string, options?: InitiateSessionHostUpdatePostOptionalParams): Promise; +} + +// @public +export interface InitiateSessionHostUpdatePostOptionalParams extends coreClient.OperationOptions { + updateSessionHostsRequestBody?: UpdateSessionHostsRequestBody; +} + +// @public +export interface KeyVaultCredentialsPatchProperties { + passwordKeyVaultSecretUri?: string; + usernameKeyVaultSecretUri?: string; +} + +// @public +export interface KeyVaultCredentialsProperties { + passwordKeyVaultSecretUri: string; + usernameKeyVaultSecretUri: string; +} + // @public export enum KnownAppAttachPackageArchitectures { ALL = "ALL", @@ -759,6 +1003,19 @@ export enum KnownCreatedByType { User = "User" } +// @public +export enum KnownDirectUDP { + Default = "Default", + Disabled = "Disabled", + Enabled = "Enabled" +} + +// @public +export enum KnownDomainJoinType { + ActiveDirectory = "ActiveDirectory", + AzureActiveDirectory = "AzureActiveDirectory" +} + // @public export enum KnownFailHealthCheckOnStagingFailure { DoNotFail = "DoNotFail", @@ -804,13 +1061,44 @@ export enum KnownHostPoolType { Pooled = "Pooled" } +// @public +export enum KnownHostPoolUpdateAction { + Cancel = "Cancel", + Pause = "Pause", + Resume = "Resume", + Retry = "Retry", + Start = "Start" +} + // @public export enum KnownLoadBalancerType { BreadthFirst = "BreadthFirst", DepthFirst = "DepthFirst", + MultiplePersistent = "MultiplePersistent", Persistent = "Persistent" } +// @public +export enum KnownManagedPrivateUDP { + Default = "Default", + Disabled = "Disabled", + Enabled = "Enabled" +} + +// @public +export enum KnownManagedServiceIdentityType { + None = "None", + SystemAssigned = "SystemAssigned", + SystemAssignedUserAssigned = "SystemAssigned,UserAssigned", + UserAssigned = "UserAssigned" +} + +// @public +export enum KnownManagementType { + Automated = "Automated", + Standard = "Standard" +} + // @public export enum KnownPackageTimestamped { NotTimestamped = "NotTimestamped", @@ -853,12 +1141,27 @@ export enum KnownProvisioningState { Succeeded = "Succeeded" } +// @public +export enum KnownProvisioningStateSHC { + Canceled = "Canceled", + Failed = "Failed", + Provisioning = "Provisioning", + Succeeded = "Succeeded" +} + // @public export enum KnownPublicNetworkAccess { Disabled = "Disabled", Enabled = "Enabled" } +// @public +export enum KnownPublicUDP { + Default = "Default", + Disabled = "Disabled", + Enabled = "Enabled" +} + // @public export enum KnownRegistrationTokenOperation { Delete = "Delete", @@ -866,6 +1169,13 @@ export enum KnownRegistrationTokenOperation { Update = "Update" } +// @public +export enum KnownRelayUDP { + Default = "Default", + Disabled = "Disabled", + Enabled = "Enabled" +} + // @public export enum KnownRemoteApplicationType { InBuilt = "InBuilt", @@ -874,20 +1184,10 @@ export enum KnownRemoteApplicationType { // @public export enum KnownScalingHostPoolType { + Personal = "Personal", Pooled = "Pooled" } -// @public -export enum KnownScalingScheduleDaysOfWeekItem { - Friday = "Friday", - Monday = "Monday", - Saturday = "Saturday", - Sunday = "Sunday", - Thursday = "Thursday", - Tuesday = "Tuesday", - Wednesday = "Wednesday" -} - // @public export enum KnownSessionHandlingOperation { Deallocate = "Deallocate", @@ -907,6 +1207,20 @@ export enum KnownSessionHostLoadBalancingAlgorithm { DepthFirst = "DepthFirst" } +// @public +export enum KnownSessionHostManagementUpdateOperationStatus { + Cancelled = "Cancelled", + Cancelling = "Cancelling", + Error = "Error", + Failed = "Failed", + Paused = "Paused", + Pausing = "Pausing", + Scheduled = "Scheduled", + Succeeded = "Succeeded", + UpdatingSessionHosts = "UpdatingSessionHosts", + ValidatingSessionHostUpdate = "ValidatingSessionHostUpdate" +} + // @public export enum KnownSessionState { Active = "Active", @@ -960,6 +1274,12 @@ export enum KnownStopHostsWhen { ZeroSessions = "ZeroSessions" } +// @public +export enum KnownType { + Custom = "Custom", + Marketplace = "Marketplace" +} + // @public export enum KnownUpdateState { Failed = "Failed", @@ -969,6 +1289,20 @@ export enum KnownUpdateState { Succeeded = "Succeeded" } +// @public +export enum KnownVirtualMachineDiskType { + PremiumLRS = "Premium_LRS", + StandardLRS = "Standard_LRS", + StandardSSDLRS = "StandardSSD_LRS" +} + +// @public +export enum KnownVirtualMachineSecurityType { + ConfidentialVM = "ConfidentialVM", + Standard = "Standard", + TrustedLaunch = "TrustedLaunch" +} + // @public export type LoadBalancerType = string; @@ -991,6 +1325,41 @@ export interface MaintenanceWindowProperties { hour?: number; } +// @public +export type ManagedPrivateUDP = string; + +// @public +export interface ManagedServiceIdentity { + readonly principalId?: string; + readonly tenantId?: string; + type: ManagedServiceIdentityType; + userAssignedIdentities?: { + [propertyName: string]: UserAssignedIdentity | null; + }; +} + +// @public +export type ManagedServiceIdentityType = string; + +// @public +export type ManagementType = string; + +// @public +export interface MarketplaceInfoPatchProperties { + exactVersion?: string; + offer?: string; + publisher?: string; + sku?: string; +} + +// @public +export interface MarketplaceInfoProperties { + exactVersion: string; + offer: string; + publisher: string; + sku: string; +} + // @public export interface MsixImages { listExpand(resourceGroupName: string, hostPoolName: string, msixImageURI: MsixImageURI, options?: MsixImagesExpandOptionalParams): PagedAsyncIterableIterator; @@ -1016,7 +1385,7 @@ export interface MsixImageURI { } // @public -export interface MsixPackage extends Resource { +export interface MsixPackage extends ProxyResource { displayName?: string; imagePath?: string; isActive?: boolean; @@ -1050,12 +1419,17 @@ export interface MsixPackageDependencies { // @public export interface MsixPackageList { - readonly nextLink?: string; - value?: MsixPackage[]; + nextLink?: string; + value: MsixPackage[]; } // @public export interface MsixPackagePatch extends Resource { + properties?: MsixPackagePatchProperties; +} + +// @public +export interface MsixPackagePatchProperties { displayName?: string; isActive?: boolean; isRegularRegistration?: boolean; @@ -1067,7 +1441,7 @@ export interface MsixPackages { delete(resourceGroupName: string, hostPoolName: string, msixPackageFullName: string, options?: MsixPackagesDeleteOptionalParams): Promise; get(resourceGroupName: string, hostPoolName: string, msixPackageFullName: string, options?: MsixPackagesGetOptionalParams): Promise; list(resourceGroupName: string, hostPoolName: string, options?: MsixPackagesListOptionalParams): PagedAsyncIterableIterator; - update(resourceGroupName: string, hostPoolName: string, msixPackageFullName: string, options?: MsixPackagesUpdateOptionalParams): Promise; + update(resourceGroupName: string, hostPoolName: string, msixPackageFullName: string, msixPackage: MsixPackagePatch, options?: MsixPackagesUpdateOptionalParams): Promise; } // @public @@ -1107,12 +1481,23 @@ export type MsixPackagesListResponse = MsixPackageList; // @public export interface MsixPackagesUpdateOptionalParams extends coreClient.OperationOptions { - msixPackage?: MsixPackagePatch; } // @public export type MsixPackagesUpdateResponse = MsixPackage; +// @public +export interface NetworkInfoPatchProperties { + securityGroupId?: string; + subnetId?: string; +} + +// @public +export interface NetworkInfoProperties { + securityGroupId?: string; + subnetId: string; +} + // @public export interface OperationProperties { serviceSpecification?: ServiceSpecification; @@ -1128,14 +1513,14 @@ export interface OperationsListNextOptionalParams extends coreClient.OperationOp } // @public -export type OperationsListNextResponse = ResourceProviderOperationList; +export type OperationsListNextResponse = ResourceProviderOperationListResult; // @public export interface OperationsListOptionalParams extends coreClient.OperationOptions { } // @public -export type OperationsListResponse = ResourceProviderOperationList; +export type OperationsListResponse = ResourceProviderOperationListResult; // @public export type PackageTimestamped = string; @@ -1162,16 +1547,21 @@ export interface PrivateEndpoint { // @public export interface PrivateEndpointConnection extends Resource { - readonly groupIds?: string[]; - privateEndpoint?: PrivateEndpoint; - privateLinkServiceConnectionState?: PrivateLinkServiceConnectionState; - readonly provisioningState?: PrivateEndpointConnectionProvisioningState; + properties?: PrivateEndpointConnectionProperties; } // @public export interface PrivateEndpointConnectionListResultWithSystemData { - readonly nextLink?: string; - value?: PrivateEndpointConnectionWithSystemData[]; + nextLink?: string; + value: PrivateEndpointConnectionWithSystemData[]; +} + +// @public +export interface PrivateEndpointConnectionProperties { + readonly groupIds?: string[]; + privateEndpoint?: PrivateEndpoint; + privateLinkServiceConnectionState: PrivateLinkServiceConnectionState; + readonly provisioningState?: PrivateEndpointConnectionProvisioningState; } // @public @@ -1185,8 +1575,8 @@ export interface PrivateEndpointConnections { getByWorkspace(resourceGroupName: string, workspaceName: string, privateEndpointConnectionName: string, options?: PrivateEndpointConnectionsGetByWorkspaceOptionalParams): Promise; listByHostPool(resourceGroupName: string, hostPoolName: string, options?: PrivateEndpointConnectionsListByHostPoolOptionalParams): PagedAsyncIterableIterator; listByWorkspace(resourceGroupName: string, workspaceName: string, options?: PrivateEndpointConnectionsListByWorkspaceOptionalParams): PagedAsyncIterableIterator; - updateByHostPool(resourceGroupName: string, hostPoolName: string, privateEndpointConnectionName: string, connection: PrivateEndpointConnection, options?: PrivateEndpointConnectionsUpdateByHostPoolOptionalParams): Promise; - updateByWorkspace(resourceGroupName: string, workspaceName: string, privateEndpointConnectionName: string, connection: PrivateEndpointConnection, options?: PrivateEndpointConnectionsUpdateByWorkspaceOptionalParams): Promise; + updateByHostPool(resourceGroupName: string, hostPoolName: string, privateEndpointConnectionName: string, connection: PrivateEndpointConnectionWithSystemData, options?: PrivateEndpointConnectionsUpdateByHostPoolOptionalParams): Promise; + updateByWorkspace(resourceGroupName: string, workspaceName: string, privateEndpointConnectionName: string, connection: PrivateEndpointConnectionWithSystemData, options?: PrivateEndpointConnectionsUpdateByWorkspaceOptionalParams): Promise; } // @public @@ -1257,7 +1647,11 @@ export interface PrivateEndpointConnectionsUpdateByWorkspaceOptionalParams exten export type PrivateEndpointConnectionsUpdateByWorkspaceResponse = PrivateEndpointConnectionWithSystemData; // @public -export interface PrivateEndpointConnectionWithSystemData extends PrivateEndpointConnection { +export interface PrivateEndpointConnectionWithSystemData extends ProxyResource { + readonly groupIds?: string[]; + privateEndpoint?: PrivateEndpoint; + privateLinkServiceConnectionState?: PrivateLinkServiceConnectionState; + readonly provisioningState?: PrivateEndpointConnectionProvisioningState; } // @public @@ -1265,15 +1659,20 @@ export type PrivateEndpointServiceConnectionStatus = string; // @public export interface PrivateLinkResource extends Resource { - readonly groupId?: string; - readonly requiredMembers?: string[]; - requiredZoneNames?: string[]; + properties?: PrivateLinkResourceProperties; } // @public export interface PrivateLinkResourceListResult { - readonly nextLink?: string; - value?: PrivateLinkResource[]; + nextLink?: string; + value: PrivateLinkResource[]; +} + +// @public +export interface PrivateLinkResourceProperties { + readonly groupId?: string; + readonly requiredMembers?: string[]; + requiredZoneNames?: string[]; } // @public @@ -1326,6 +1725,9 @@ export interface PrivateLinkServiceConnectionState { // @public export type ProvisioningState = string; +// @public +export type ProvisioningStateSHC = string; + // @public export interface ProxyResource extends Resource { } @@ -1333,6 +1735,9 @@ export interface ProxyResource extends Resource { // @public export type PublicNetworkAccess = string; +// @public +export type PublicUDP = string; + // @public export interface RegistrationInfo { expirationTime?: Date; @@ -1361,6 +1766,9 @@ export interface RegistrationTokenMinimal { // @public export type RegistrationTokenOperation = string; +// @public +export type RelayUDP = string; + // @public export type RemoteApplicationType = string; @@ -1372,31 +1780,6 @@ export interface Resource { readonly type?: string; } -// @public -export interface ResourceModelWithAllowedPropertySet extends TrackedResource { - readonly etag?: string; - // (undocumented) - identity?: ResourceModelWithAllowedPropertySetIdentity; - kind?: string; - managedBy?: string; - // (undocumented) - plan?: ResourceModelWithAllowedPropertySetPlan; - // (undocumented) - sku?: ResourceModelWithAllowedPropertySetSku; -} - -// @public (undocumented) -export interface ResourceModelWithAllowedPropertySetIdentity extends Identity { -} - -// @public (undocumented) -export interface ResourceModelWithAllowedPropertySetPlan extends Plan { -} - -// @public (undocumented) -export interface ResourceModelWithAllowedPropertySetSku extends Sku { -} - // @public export interface ResourceProviderOperation { display?: ResourceProviderOperationDisplay; @@ -1414,9 +1797,9 @@ export interface ResourceProviderOperationDisplay { } // @public -export interface ResourceProviderOperationList { - readonly nextLink?: string; - value?: ResourceProviderOperation[]; +export interface ResourceProviderOperationListResult { + nextLink?: string; + value: ResourceProviderOperation[]; } // @public @@ -1429,74 +1812,90 @@ export interface ScalingHostPoolReference { export type ScalingHostPoolType = string; // @public -export interface ScalingPlan extends ResourceModelWithAllowedPropertySet { +export interface ScalingPlan extends TrackedResource { description?: string; + readonly etag?: string; exclusionTag?: string; friendlyName?: string; hostPoolReferences?: ScalingHostPoolReference[]; hostPoolType?: ScalingHostPoolType; + identity?: ManagedServiceIdentity; + kind?: string; + managedBy?: string; readonly objectId?: string; + plan?: Plan; schedules?: ScalingSchedule[]; + sku?: Sku; timeZone: string; } // @public export interface ScalingPlanList { - readonly nextLink?: string; - value?: ScalingPlan[]; + nextLink?: string; + value: ScalingPlan[]; } // @public export interface ScalingPlanPatch { + properties?: ScalingPlanPatchProperties; + tags?: { + [propertyName: string]: string; + }; +} + +// @public +export interface ScalingPlanPatchProperties { description?: string; exclusionTag?: string; friendlyName?: string; hostPoolReferences?: ScalingHostPoolReference[]; schedules?: ScalingSchedule[]; - tags?: { - [propertyName: string]: string; - }; timeZone?: string; } // @public export interface ScalingPlanPersonalSchedule extends ProxyResource { - daysOfWeek?: DayOfWeek[]; + daysOfWeek: DayOfWeek[]; offPeakActionOnDisconnect?: SessionHandlingOperation; offPeakActionOnLogoff?: SessionHandlingOperation; offPeakMinutesToWaitOnDisconnect?: number; offPeakMinutesToWaitOnLogoff?: number; - offPeakStartTime?: Time; + offPeakStartTime: Time; offPeakStartVMOnConnect?: SetStartVMOnConnect; peakActionOnDisconnect?: SessionHandlingOperation; peakActionOnLogoff?: SessionHandlingOperation; peakMinutesToWaitOnDisconnect?: number; peakMinutesToWaitOnLogoff?: number; - peakStartTime?: Time; + peakStartTime: Time; peakStartVMOnConnect?: SetStartVMOnConnect; rampDownActionOnDisconnect?: SessionHandlingOperation; rampDownActionOnLogoff?: SessionHandlingOperation; rampDownMinutesToWaitOnDisconnect?: number; rampDownMinutesToWaitOnLogoff?: number; - rampDownStartTime?: Time; + rampDownStartTime: Time; rampDownStartVMOnConnect?: SetStartVMOnConnect; rampUpActionOnDisconnect?: SessionHandlingOperation; rampUpActionOnLogoff?: SessionHandlingOperation; rampUpAutoStartHosts?: StartupBehavior; rampUpMinutesToWaitOnDisconnect?: number; rampUpMinutesToWaitOnLogoff?: number; - rampUpStartTime?: Time; + rampUpStartTime: Time; rampUpStartVMOnConnect?: SetStartVMOnConnect; } // @public export interface ScalingPlanPersonalScheduleList { - readonly nextLink?: string; - value?: ScalingPlanPersonalSchedule[]; + nextLink?: string; + value: ScalingPlanPersonalSchedule[]; } // @public export interface ScalingPlanPersonalSchedulePatch { + properties?: ScalingPlanPersonalSchedulePatchProperties; +} + +// @public +export interface ScalingPlanPersonalSchedulePatchProperties { daysOfWeek?: DayOfWeek[]; offPeakActionOnDisconnect?: SessionHandlingOperation; offPeakActionOnLogoff?: SessionHandlingOperation; @@ -1578,35 +1977,42 @@ export interface ScalingPlanPersonalSchedulesUpdateOptionalParams extends coreCl export type ScalingPlanPersonalSchedulesUpdateResponse = ScalingPlanPersonalSchedule; // @public -export interface ScalingPlanPooledSchedule extends Resource { - daysOfWeek?: DayOfWeek[]; +export interface ScalingPlanPooledSchedule extends ProxyResource { + daysOfWeek: DayOfWeek[]; + namePropertiesName?: string; offPeakLoadBalancingAlgorithm?: SessionHostLoadBalancingAlgorithm; - offPeakStartTime?: Time; + offPeakStartTime: Time; peakLoadBalancingAlgorithm?: SessionHostLoadBalancingAlgorithm; - peakStartTime?: Time; - rampDownCapacityThresholdPct?: number; + peakStartTime: Time; + rampDownCapacityThresholdPct: number; rampDownForceLogoffUsers?: boolean; rampDownLoadBalancingAlgorithm?: SessionHostLoadBalancingAlgorithm; rampDownMinimumHostsPct?: number; rampDownNotificationMessage?: string; - rampDownStartTime?: Time; + rampDownStartTime: Time; rampDownStopHostsWhen?: StopHostsWhen; rampDownWaitTimeMinutes?: number; - rampUpCapacityThresholdPct?: number; + rampUpCapacityThresholdPct: number; rampUpLoadBalancingAlgorithm?: SessionHostLoadBalancingAlgorithm; rampUpMinimumHostsPct?: number; - rampUpStartTime?: Time; + rampUpStartTime: Time; } // @public export interface ScalingPlanPooledScheduleList { - readonly nextLink?: string; - value?: ScalingPlanPooledSchedule[]; + nextLink?: string; + value: ScalingPlanPooledSchedule[]; } // @public export interface ScalingPlanPooledSchedulePatch extends Resource { + properties?: ScalingPlanPooledSchedulePatchProperties; +} + +// @public +export interface ScalingPlanPooledSchedulePatchProperties { daysOfWeek?: DayOfWeek[]; + name?: string; offPeakLoadBalancingAlgorithm?: SessionHostLoadBalancingAlgorithm; offPeakStartTime?: Time; peakLoadBalancingAlgorithm?: SessionHostLoadBalancingAlgorithm; @@ -1767,7 +2173,7 @@ export type ScalingPlansUpdateResponse = ScalingPlan; // @public export interface ScalingSchedule { - daysOfWeek?: ScalingScheduleDaysOfWeekItem[]; + daysOfWeek?: DayOfWeek[]; name?: string; offPeakLoadBalancingAlgorithm?: SessionHostLoadBalancingAlgorithm; offPeakStartTime?: Time; @@ -1788,7 +2194,18 @@ export interface ScalingSchedule { } // @public -export type ScalingScheduleDaysOfWeekItem = string; +export interface SecurityInfoPatchProperties { + secureBootEnabled?: boolean; + type?: VirtualMachineSecurityType; + vTpmEnabled?: boolean; +} + +// @public +export interface SecurityInfoProperties { + secureBootEnabled?: boolean; + type?: VirtualMachineSecurityType; + vTpmEnabled?: boolean; +} // @public export interface SendMessage { @@ -1805,29 +2222,148 @@ export interface ServiceSpecification { export type SessionHandlingOperation = string; // @public -export interface SessionHost extends Resource { +export interface SessionHost extends ProxyResource { agentVersion?: string; allowNewSession?: boolean; assignedUser?: string; friendlyName?: string; lastHeartBeat?: Date; + readonly lastSessionHostUpdateTime?: Date; readonly lastUpdateTime?: Date; readonly objectId?: string; osVersion?: string; readonly resourceId?: string; + readonly sessionHostConfiguration?: string; readonly sessionHostHealthCheckResults?: SessionHostHealthCheckReport[]; sessions?: number; status?: Status; readonly statusTimestamp?: Date; sxSStackVersion?: string; updateErrorMessage?: string; - updateState?: UpdateState; + readonly updateState?: UpdateState; readonly virtualMachineId?: string; } // @public export type SessionHostComponentUpdateType = string; +// @public +export interface SessionHostConfiguration extends ProxyResource { + availabilityZones?: number[]; + bootDiagnosticsInfo?: BootDiagnosticsInfoProperties; + customConfigurationScriptUrl?: string; + diskInfo: DiskInfoProperties; + domainInfo: DomainInfoProperties; + friendlyName?: string; + imageInfo: ImageInfoProperties; + networkInfo: NetworkInfoProperties; + readonly provisioningState?: ProvisioningStateSHC; + securityInfo?: SecurityInfoProperties; + readonly version?: Date; + vmAdminCredentials: KeyVaultCredentialsProperties; + vmLocation?: string; + vmNamePrefix: string; + vmResourceGroup?: string; + vmSizeId: string; + vmTags?: { + [propertyName: string]: string; + }; +} + +// @public +export interface SessionHostConfigurationList { + nextLink?: string; + value: SessionHostConfiguration[]; +} + +// @public +export interface SessionHostConfigurationPatch { + properties?: SessionHostConfigurationPatchProperties; +} + +// @public +export interface SessionHostConfigurationPatchProperties { + availabilityZones?: number[]; + bootDiagnosticsInfo?: BootDiagnosticsInfoPatchProperties; + customConfigurationScriptUrl?: string; + diskInfo?: DiskInfoPatchProperties; + domainInfo?: DomainInfoPatchProperties; + friendlyName?: string; + imageInfo?: ImageInfoPatchProperties; + networkInfo?: NetworkInfoPatchProperties; + securityInfo?: SecurityInfoPatchProperties; + vmAdminCredentials?: KeyVaultCredentialsPatchProperties; + vmLocation?: string; + vmNamePrefix?: string; + vmResourceGroup?: string; + vmSizeId?: string; + vmTags?: { + [propertyName: string]: string; + }; +} + +// @public +export interface SessionHostConfigurations { + beginCreateOrUpdate(resourceGroupName: string, hostPoolName: string, sessionHostConfiguration: SessionHostConfiguration, options?: SessionHostConfigurationsCreateOrUpdateOptionalParams): Promise, SessionHostConfigurationsCreateOrUpdateResponse>>; + beginCreateOrUpdateAndWait(resourceGroupName: string, hostPoolName: string, sessionHostConfiguration: SessionHostConfiguration, options?: SessionHostConfigurationsCreateOrUpdateOptionalParams): Promise; + beginUpdate(resourceGroupName: string, hostPoolName: string, options?: SessionHostConfigurationsUpdateOptionalParams): Promise, SessionHostConfigurationsUpdateResponse>>; + beginUpdateAndWait(resourceGroupName: string, hostPoolName: string, options?: SessionHostConfigurationsUpdateOptionalParams): Promise; + get(resourceGroupName: string, hostPoolName: string, options?: SessionHostConfigurationsGetOptionalParams): Promise; + listByHostPool(resourceGroupName: string, hostPoolName: string, options?: SessionHostConfigurationsListByHostPoolOptionalParams): PagedAsyncIterableIterator; +} + +// @public +export interface SessionHostConfigurationsCreateOrUpdateHeaders { + azureAsyncOperation?: string; + retryAfter?: number; +} + +// @public +export interface SessionHostConfigurationsCreateOrUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type SessionHostConfigurationsCreateOrUpdateResponse = SessionHostConfiguration; + +// @public +export interface SessionHostConfigurationsGetOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type SessionHostConfigurationsGetResponse = SessionHostConfiguration; + +// @public +export interface SessionHostConfigurationsListByHostPoolNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type SessionHostConfigurationsListByHostPoolNextResponse = SessionHostConfigurationList; + +// @public +export interface SessionHostConfigurationsListByHostPoolOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type SessionHostConfigurationsListByHostPoolResponse = SessionHostConfigurationList; + +// @public +export interface SessionHostConfigurationsUpdateHeaders { + location?: string; + retryAfter?: number; +} + +// @public +export interface SessionHostConfigurationsUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + sessionHostConfiguration?: SessionHostConfigurationPatch; + updateIntervalInMs?: number; +} + +// @public +export type SessionHostConfigurationsUpdateResponse = SessionHostConfiguration; + // @public export interface SessionHostHealthCheckFailureDetails { readonly errorCode?: number; @@ -1844,15 +2380,131 @@ export interface SessionHostHealthCheckReport { // @public export interface SessionHostList { - readonly nextLink?: string; - value?: SessionHost[]; + nextLink?: string; + value: SessionHost[]; } // @public export type SessionHostLoadBalancingAlgorithm = string; +// @public +export interface SessionHostManagement extends ProxyResource { + scheduledDateTimeZone: string; + update: HostPoolUpdateConfigurationProperties; +} + +// @public +export interface SessionHostManagementList { + nextLink?: string; + value: SessionHostManagement[]; +} + +// @public +export interface SessionHostManagementOperationProgress { + executionStartTime?: Date; + sessionHostsCompleted?: number; + sessionHostsInProgress?: number; + sessionHostsRollbackFailed?: number; + totalSessionHosts?: number; +} + +// @public +export interface SessionHostManagementPatch { + properties?: SessionHostManagementPatchProperties; +} + +// @public +export interface SessionHostManagementPatchProperties { + scheduledDateTimeZone?: string; + update?: HostPoolUpdateConfigurationPatchProperties; +} + +// @public +export interface SessionHostManagements { + createOrUpdate(resourceGroupName: string, hostPoolName: string, sessionHostManagement: SessionHostManagement, options?: SessionHostManagementsCreateOrUpdateOptionalParams): Promise; + get(resourceGroupName: string, hostPoolName: string, options?: SessionHostManagementsGetOptionalParams): Promise; + listByHostPool(resourceGroupName: string, hostPoolName: string, options?: SessionHostManagementsListByHostPoolOptionalParams): PagedAsyncIterableIterator; + update(resourceGroupName: string, hostPoolName: string, options?: SessionHostManagementsUpdateOptionalParams): Promise; +} + +// @public +export interface SessionHostManagementsCreateOrUpdateOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type SessionHostManagementsCreateOrUpdateResponse = SessionHostManagement; + +// @public +export interface SessionHostManagementsGetOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type SessionHostManagementsGetResponse = SessionHostManagement; + +// @public +export interface SessionHostManagementsListByHostPoolNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type SessionHostManagementsListByHostPoolNextResponse = SessionHostManagementList; + +// @public +export interface SessionHostManagementsListByHostPoolOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type SessionHostManagementsListByHostPoolResponse = SessionHostManagementList; + +// @public +export interface SessionHostManagementsUpdateOptionalParams extends coreClient.OperationOptions { + sessionHostManagement?: SessionHostManagementPatch; +} + +// @public +export type SessionHostManagementsUpdateResponse = SessionHostManagement; + +// @public +export interface SessionHostManagementsUpdateStatus { + get(resourceGroupName: string, hostPoolName: string, options?: SessionHostManagementsUpdateStatusGetOptionalParams): Promise; +} + +// @public +export interface SessionHostManagementsUpdateStatusGetOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type SessionHostManagementsUpdateStatusGetResponse = SessionHostManagementUpdateStatus; + +// @public +export type SessionHostManagementUpdateOperationStatus = string; + +// @public +export interface SessionHostManagementUpdateStatus { + endTime?: Date; + error?: ErrorDetail; + id?: string; + name?: string; + percentComplete?: number; + properties?: SessionHostManagementUpdateStatusProperties; + startTime?: Date; + readonly status: SessionHostManagementUpdateOperationStatus; +} + +// @public +export interface SessionHostManagementUpdateStatusProperties { + correlationId?: string; + progress?: SessionHostManagementOperationProgress; + scheduledDateTime?: Date; + sessionHostManagement?: SessionHostManagement; +} + // @public export interface SessionHostPatch extends Resource { + properties?: SessionHostPatchProperties; +} + +// @public +export interface SessionHostPatchProperties { allowNewSession?: boolean; assignedUser?: string; friendlyName?: string; @@ -1863,6 +2515,7 @@ export interface SessionHosts { delete(resourceGroupName: string, hostPoolName: string, sessionHostName: string, options?: SessionHostsDeleteOptionalParams): Promise; get(resourceGroupName: string, hostPoolName: string, sessionHostName: string, options?: SessionHostsGetOptionalParams): Promise; list(resourceGroupName: string, hostPoolName: string, options?: SessionHostsListOptionalParams): PagedAsyncIterableIterator; + retryProvisioning(resourceGroupName: string, hostPoolName: string, sessionHostName: string, options?: SessionHostsRetryProvisioningOptionalParams): Promise; update(resourceGroupName: string, hostPoolName: string, sessionHostName: string, options?: SessionHostsUpdateOptionalParams): Promise; } @@ -1890,11 +2543,16 @@ export interface SessionHostsListOptionalParams extends coreClient.OperationOpti initialSkip?: number; isDescending?: boolean; pageSize?: number; + vmPath?: string; } // @public export type SessionHostsListResponse = SessionHostList; +// @public +export interface SessionHostsRetryProvisioningOptionalParams extends coreClient.OperationOptions { +} + // @public export interface SessionHostsUpdateOptionalParams extends coreClient.OperationOptions { force?: boolean; @@ -1927,6 +2585,17 @@ export type SSOSecretType = string; // @public export interface StartMenuItem extends Resource { + properties?: StartMenuItemProperties; +} + +// @public +export interface StartMenuItemList { + nextLink?: string; + value: StartMenuItem[]; +} + +// @public +export interface StartMenuItemProperties { appAlias?: string; commandLineArguments?: string; filePath?: string; @@ -1934,12 +2603,6 @@ export interface StartMenuItem extends Resource { iconPath?: string; } -// @public -export interface StartMenuItemList { - readonly nextLink?: string; - value?: StartMenuItem[]; -} - // @public export interface StartMenuItems { list(resourceGroupName: string, applicationGroupName: string, options?: StartMenuItemsListOptionalParams): PagedAsyncIterableIterator; @@ -1995,11 +2658,27 @@ export interface TrackedResource extends Resource { }; } +// @public +export type Type = string; + +// @public +export interface UpdateSessionHostsRequestBody { + scheduledDateTime?: Date; + scheduledDateTimeZone?: string; + update?: HostPoolUpdateConfigurationPatchProperties; +} + // @public export type UpdateState = string; // @public -export interface UserSession extends Resource { +export interface UserAssignedIdentity { + readonly clientId?: string; + readonly principalId?: string; +} + +// @public +export interface UserSession extends ProxyResource { activeDirectoryUserName?: string; applicationType?: ApplicationType; createTime?: Date; @@ -2010,8 +2689,8 @@ export interface UserSession extends Resource { // @public export interface UserSessionList { - readonly nextLink?: string; - value?: UserSession[]; + nextLink?: string; + value: UserSession[]; } // @public @@ -2081,31 +2760,48 @@ export interface UserSessionsSendMessageOptionalParams extends coreClient.Operat } // @public -export interface Workspace extends ResourceModelWithAllowedPropertySet { +export type VirtualMachineDiskType = string; + +// @public +export type VirtualMachineSecurityType = string; + +// @public +export interface Workspace extends TrackedResource { applicationGroupReferences?: string[]; readonly cloudPcResource?: boolean; description?: string; + readonly etag?: string; friendlyName?: string; + identity?: ManagedServiceIdentity; + kind?: string; + managedBy?: string; readonly objectId?: string; + plan?: Plan; readonly privateEndpointConnections?: PrivateEndpointConnection[]; publicNetworkAccess?: PublicNetworkAccess; + sku?: Sku; } // @public export interface WorkspaceList { - readonly nextLink?: string; - value?: Workspace[]; + nextLink?: string; + value: Workspace[]; } // @public export interface WorkspacePatch { + properties?: WorkspacePatchProperties; + tags?: { + [propertyName: string]: string; + }; +} + +// @public +export interface WorkspacePatchProperties { applicationGroupReferences?: string[]; description?: string; friendlyName?: string; publicNetworkAccess?: PublicNetworkAccess; - tags?: { - [propertyName: string]: string; - }; } // @public diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/sample.env b/sdk/desktopvirtualization/arm-desktopvirtualization/sample.env index 672847a3fea0..508439fc7d62 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/sample.env +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/sample.env @@ -1,4 +1 @@ -# App registration secret for AAD authentication -AZURE_CLIENT_SECRET= -AZURE_CLIENT_ID= -AZURE_TENANT_ID= \ No newline at end of file +# Feel free to add your own environment variables. \ No newline at end of file diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/desktopVirtualizationAPIClient.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/desktopVirtualizationAPIClient.ts index 86395e2ab21f..1252db1cd2d8 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/desktopVirtualizationAPIClient.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/desktopVirtualizationAPIClient.ts @@ -16,43 +16,55 @@ import { import * as coreAuth from "@azure/core-auth"; import { OperationsImpl, - WorkspacesImpl, - PrivateEndpointConnectionsImpl, - PrivateLinkResourcesImpl, - ScalingPlansImpl, - ScalingPlanPooledSchedulesImpl, - ScalingPlanPersonalSchedulesImpl, + AppAttachPackageOperationsImpl, ApplicationGroupsImpl, - StartMenuItemsImpl, + HostPoolsImpl, + ScalingPlansImpl, + WorkspacesImpl, ApplicationsImpl, DesktopsImpl, - HostPoolsImpl, - UserSessionsImpl, - SessionHostsImpl, - MsixPackagesImpl, - AppAttachPackageInfoImpl, + StartMenuItemsImpl, + ActiveSessionHostConfigurationsImpl, MsixImagesImpl, - AppAttachPackageOperationsImpl, + AppAttachPackageInfoImpl, + MsixPackagesImpl, + PrivateEndpointConnectionsImpl, + PrivateLinkResourcesImpl, + SessionHostConfigurationsImpl, + SessionHostManagementsImpl, + ControlSessionHostUpdateImpl, + InitiateSessionHostUpdateImpl, + SessionHostManagementsUpdateStatusImpl, + SessionHostsImpl, + UserSessionsImpl, + ScalingPlanPersonalSchedulesImpl, + ScalingPlanPooledSchedulesImpl, } from "./operations/index.js"; import { Operations, - Workspaces, - PrivateEndpointConnections, - PrivateLinkResources, - ScalingPlans, - ScalingPlanPooledSchedules, - ScalingPlanPersonalSchedules, + AppAttachPackageOperations, ApplicationGroups, - StartMenuItems, + HostPools, + ScalingPlans, + Workspaces, Applications, Desktops, - HostPools, - UserSessions, - SessionHosts, - MsixPackages, - AppAttachPackageInfo, + StartMenuItems, + ActiveSessionHostConfigurations, MsixImages, - AppAttachPackageOperations, + AppAttachPackageInfo, + MsixPackages, + PrivateEndpointConnections, + PrivateLinkResources, + SessionHostConfigurations, + SessionHostManagements, + ControlSessionHostUpdate, + InitiateSessionHostUpdate, + SessionHostManagementsUpdateStatus, + SessionHosts, + UserSessions, + ScalingPlanPersonalSchedules, + ScalingPlanPooledSchedules, } from "./operationsInterfaces/index.js"; import { DesktopVirtualizationAPIClientOptionalParams } from "./models/index.js"; @@ -88,7 +100,7 @@ export class DesktopVirtualizationAPIClient extends coreClient.ServiceClient { credential: credentials, }; - const packageDetails = `azsdk-js-arm-desktopvirtualization/1.2.1`; + const packageDetails = `azsdk-js-arm-desktopvirtualization/2.0.0-beta.1`; const userAgentPrefix = options.userAgentOptions && options.userAgentOptions.userAgentPrefix ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}` @@ -142,27 +154,35 @@ export class DesktopVirtualizationAPIClient extends coreClient.ServiceClient { // Assigning values to Constant parameters this.$host = options.$host || "https://management.azure.com"; - this.apiVersion = options.apiVersion || "2024-04-03"; + this.apiVersion = options.apiVersion || "2024-08-08-preview"; this.operations = new OperationsImpl(this); + this.appAttachPackageOperations = new AppAttachPackageOperationsImpl(this); + this.applicationGroups = new ApplicationGroupsImpl(this); + this.hostPools = new HostPoolsImpl(this); + this.scalingPlans = new ScalingPlansImpl(this); this.workspaces = new WorkspacesImpl(this); + this.applications = new ApplicationsImpl(this); + this.desktops = new DesktopsImpl(this); + this.startMenuItems = new StartMenuItemsImpl(this); + this.activeSessionHostConfigurations = + new ActiveSessionHostConfigurationsImpl(this); + this.msixImages = new MsixImagesImpl(this); + this.appAttachPackageInfo = new AppAttachPackageInfoImpl(this); + this.msixPackages = new MsixPackagesImpl(this); this.privateEndpointConnections = new PrivateEndpointConnectionsImpl(this); this.privateLinkResources = new PrivateLinkResourcesImpl(this); - this.scalingPlans = new ScalingPlansImpl(this); - this.scalingPlanPooledSchedules = new ScalingPlanPooledSchedulesImpl(this); + this.sessionHostConfigurations = new SessionHostConfigurationsImpl(this); + this.sessionHostManagements = new SessionHostManagementsImpl(this); + this.controlSessionHostUpdate = new ControlSessionHostUpdateImpl(this); + this.initiateSessionHostUpdate = new InitiateSessionHostUpdateImpl(this); + this.sessionHostManagementsUpdateStatus = + new SessionHostManagementsUpdateStatusImpl(this); + this.sessionHosts = new SessionHostsImpl(this); + this.userSessions = new UserSessionsImpl(this); this.scalingPlanPersonalSchedules = new ScalingPlanPersonalSchedulesImpl( this, ); - this.applicationGroups = new ApplicationGroupsImpl(this); - this.startMenuItems = new StartMenuItemsImpl(this); - this.applications = new ApplicationsImpl(this); - this.desktops = new DesktopsImpl(this); - this.hostPools = new HostPoolsImpl(this); - this.userSessions = new UserSessionsImpl(this); - this.sessionHosts = new SessionHostsImpl(this); - this.msixPackages = new MsixPackagesImpl(this); - this.appAttachPackageInfo = new AppAttachPackageInfoImpl(this); - this.msixImages = new MsixImagesImpl(this); - this.appAttachPackageOperations = new AppAttachPackageOperationsImpl(this); + this.scalingPlanPooledSchedules = new ScalingPlanPooledSchedulesImpl(this); this.addCustomApiVersionPolicy(options.apiVersion); } @@ -195,21 +215,27 @@ export class DesktopVirtualizationAPIClient extends coreClient.ServiceClient { } operations: Operations; - workspaces: Workspaces; - privateEndpointConnections: PrivateEndpointConnections; - privateLinkResources: PrivateLinkResources; - scalingPlans: ScalingPlans; - scalingPlanPooledSchedules: ScalingPlanPooledSchedules; - scalingPlanPersonalSchedules: ScalingPlanPersonalSchedules; + appAttachPackageOperations: AppAttachPackageOperations; applicationGroups: ApplicationGroups; - startMenuItems: StartMenuItems; + hostPools: HostPools; + scalingPlans: ScalingPlans; + workspaces: Workspaces; applications: Applications; desktops: Desktops; - hostPools: HostPools; - userSessions: UserSessions; - sessionHosts: SessionHosts; - msixPackages: MsixPackages; - appAttachPackageInfo: AppAttachPackageInfo; + startMenuItems: StartMenuItems; + activeSessionHostConfigurations: ActiveSessionHostConfigurations; msixImages: MsixImages; - appAttachPackageOperations: AppAttachPackageOperations; + appAttachPackageInfo: AppAttachPackageInfo; + msixPackages: MsixPackages; + privateEndpointConnections: PrivateEndpointConnections; + privateLinkResources: PrivateLinkResources; + sessionHostConfigurations: SessionHostConfigurations; + sessionHostManagements: SessionHostManagements; + controlSessionHostUpdate: ControlSessionHostUpdate; + initiateSessionHostUpdate: InitiateSessionHostUpdate; + sessionHostManagementsUpdateStatus: SessionHostManagementsUpdateStatus; + sessionHosts: SessionHosts; + userSessions: UserSessions; + scalingPlanPersonalSchedules: ScalingPlanPersonalSchedules; + scalingPlanPooledSchedules: ScalingPlanPooledSchedules; } diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/lroImpl.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/lroImpl.ts new file mode 100644 index 000000000000..5f88efab981b --- /dev/null +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/lroImpl.ts @@ -0,0 +1,42 @@ +/* + * 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. + */ + +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { AbortSignalLike } from "@azure/abort-controller"; +import { LongRunningOperation, LroResponse } from "@azure/core-lro"; + +export function createLroSpec(inputs: { + sendOperationFn: (args: any, spec: any) => Promise>; + args: Record; + spec: { + readonly requestBody?: unknown; + readonly path?: string; + readonly httpMethod: string; + } & Record; +}): LongRunningOperation { + const { args, spec, sendOperationFn } = inputs; + return { + requestMethod: spec.httpMethod, + requestPath: spec.path!, + sendInitialRequest: () => sendOperationFn(args, spec), + sendPollRequest: ( + path: string, + options?: { abortSignal?: AbortSignalLike }, + ) => { + const { requestBody, ...restSpec } = spec; + return sendOperationFn(args, { + ...restSpec, + httpMethod: "GET", + path, + abortSignal: options?.abortSignal, + }); + }, + }; +} diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/index.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/index.ts index 92c8a8c71b80..13866e9b12b0 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/index.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/index.ts @@ -8,15 +8,12 @@ import * as coreClient from "@azure/core-client"; -/** Result of the request to list operations. */ -export interface ResourceProviderOperationList { - /** List of operations supported by this resource provider. */ - value?: ResourceProviderOperation[]; - /** - * 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; +/** A list of REST API operations supported by an Azure Resource Provider. It contains an URL link to get the next set of results. */ +export interface ResourceProviderOperationListResult { + /** The ResourceProviderOperation items on this page */ + value: ResourceProviderOperation[]; + /** The link to the next page of items */ + nextLink?: string; } /** Supported operation of this resource provider. */ @@ -65,37 +62,125 @@ export interface LogSpecification { blobDuration?: string; } -/** Cloud error object. */ -export interface CloudError { - /** Cloud error object properties. */ - error?: CloudErrorProperties; +/** Common error response for all Azure Resource Manager APIs to return error details for failed operations. (This also follows the OData error response format.). */ +export interface ErrorResponse { + /** The error object. */ + error?: ErrorDetail; } -/** Cloud error object properties. */ -export interface CloudErrorProperties { - /** Error code */ - code?: string; - /** Error message indicating why the operation failed. */ - message?: string; +/** The error detail. */ +export interface ErrorDetail { + /** + * The error code. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly code?: string; + /** + * The error message. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly message?: string; + /** + * The error target. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly target?: string; + /** + * The error details. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly details?: ErrorDetail[]; + /** + * The error additional info. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly additionalInfo?: ErrorAdditionalInfo[]; } -/** The private endpoint resource. */ -export interface PrivateEndpoint { +/** The resource management error additional info. */ +export interface ErrorAdditionalInfo { /** - * The ARM identifier for private endpoint. + * The additional info type. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly id?: string; + readonly type?: string; + /** + * The additional info. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly info?: Record; } -/** 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. */ - status?: PrivateEndpointServiceConnectionStatus; - /** The reason for approval/rejection of the connection. */ +/** List of App Attach Package definitions. */ +export interface AppAttachPackageList { + /** The AppAttachPackage items on this page */ + value: AppAttachPackage[]; + /** The link to the next page of items */ + nextLink?: string; +} + +/** Schema for Import Package Information properties. */ +export interface AppAttachPackageInfoProperties { + /** Alias of App Attach Package. Assigned at import time */ + 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[]; + /** Certificate name found in the appxmanifest.xml. */ + certificateName?: string; + /** Date certificate expires, found in the appxmanifest.xml. */ + certificateExpiry?: Date; + /** Is package timestamped so it can ignore the certificate expiry date */ + isPackageTimestamped?: PackageTimestamped; +} + +/** 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; - /** A message indicating if changes on the service provider require any updates on the consumer. */ - actionsRequired?: 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; } /** Common fields that are returned in the response for all Azure Resource Manager resources */ @@ -138,34 +223,46 @@ export interface SystemData { lastModifiedAt?: Date; } -/** Identity for the resource. */ -export interface Identity { +/** List of ApplicationGroup definitions. */ +export interface ApplicationGroupList { + /** The ApplicationGroup items on this page */ + value: ApplicationGroup[]; + /** The link to the next page of items */ + nextLink?: string; +} + +/** Managed service identity (system assigned and/or user assigned identities) */ +export interface ManagedServiceIdentity { /** - * The principal ID of resource identity. The value must be an UUID. + * The service principal ID of the system assigned identity. This property will only be provided for a system assigned identity. * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly principalId?: string; /** - * The tenant ID of resource. The value must be an UUID. + * The tenant ID of the system assigned identity. This property will only be provided for a system assigned identity. * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly tenantId?: string; - /** The identity type. */ - type?: "SystemAssigned"; + /** Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed). */ + type: ManagedServiceIdentityType; + /** The set of user assigned identities associated with the resource. The userAssignedIdentities dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. The dictionary values can be empty objects ({}) in requests. */ + userAssignedIdentities?: { + [propertyName: string]: UserAssignedIdentity | null; + }; } -/** The resource model definition representing SKU */ -export interface Sku { - /** The name of the SKU. E.g. 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. */ - 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; +/** User assigned identity properties */ +export interface UserAssignedIdentity { + /** + * The principal ID of the assigned identity. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly principalId?: string; + /** + * The client ID of the assigned identity. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly clientId?: string; } /** Plan for the resource. */ @@ -182,51 +279,101 @@ export interface Plan { version?: string; } -/** 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 */ - publicNetworkAccess?: PublicNetworkAccess; +/** The resource model definition representing SKU */ +export interface Sku { + /** The name of the SKU. E.g. 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. */ + 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; } -/** List of private endpoint connection associated with the specified storage account */ -export interface PrivateEndpointConnectionListResultWithSystemData { - /** Array of private endpoint connections */ - value?: PrivateEndpointConnectionWithSystemData[]; +/** List of HostPool definitions. */ +export interface HostPoolList { + /** The HostPool items on this page */ + value: HostPool[]; + /** The link to the next page of items */ + nextLink?: 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. */ + registrationTokenOperation?: RegistrationTokenOperation; +} + +/** The session host configuration for updating agent, monitoring agent, and stack component. */ +export interface AgentUpdateProperties { + /** The type of maintenance for session host components. */ + type?: SessionHostComponentUpdateType; + /** Whether to use localTime of the virtual machine. */ + useSessionHostLocalTime?: boolean; + /** Time zone for maintenance as defined in https://docs.microsoft.com/en-us/dotnet/api/system.timezoneinfo.findsystemtimezonebyid?view=net-5.0. Must be set if useLocalTime is true. */ + maintenanceWindowTimeZone?: string; + /** List of maintenance windows. Maintenance windows are 2 hours long. */ + maintenanceWindows?: MaintenanceWindowProperties[]; +} + +/** Maintenance window starting hour and day of week. */ +export interface MaintenanceWindowProperties { + /** The update start hour of the day. (0 - 23) */ + hour?: number; + /** Day of the week. */ + dayOfWeek?: DayOfWeek; +} + +/** Properties of the private endpoint connection. */ +export interface PrivateEndpointConnectionProperties { /** - * Link to the next page of results. + * The group ids for the private endpoint resource. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly nextLink?: string; -} - -/** A list of private link resources */ -export interface PrivateLinkResourceListResult { - /** Array of private link resources */ - value?: PrivateLinkResource[]; + readonly groupIds?: string[]; + /** The private endpoint resource. */ + privateEndpoint?: PrivateEndpoint; + /** A collection of information about the state of the connection between service consumer and provider. */ + privateLinkServiceConnectionState: PrivateLinkServiceConnectionState; /** - * Link to the next page of results. + * The provisioning state of the private endpoint connection resource. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly nextLink?: string; + readonly provisioningState?: PrivateEndpointConnectionProvisioningState; } -/** List of Workspace definitions. */ -export interface WorkspaceList { - /** List of Workspace definitions. */ - value?: Workspace[]; +/** The private endpoint resource. */ +export interface PrivateEndpoint { /** - * Link to the next page of results. + * The ARM identifier for private endpoint. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly nextLink?: string; + readonly id?: 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. */ + 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; +} + +/** List of scaling plan definitions. */ +export interface ScalingPlanList { + /** The ScalingPlan items on this page */ + value: ScalingPlan[]; + /** The link to the next page of items */ + nextLink?: string; } /** A ScalingPlanPooledSchedule. */ @@ -234,7 +381,7 @@ export interface ScalingSchedule { /** Name of the ScalingPlanPooledSchedule. */ name?: string; /** Set of days of the week on which this schedule is active. */ - daysOfWeek?: ScalingScheduleDaysOfWeekItem[]; + daysOfWeek?: DayOfWeek[]; /** Starting time for ramp up period. */ rampUpStartTime?: Time; /** Load balancing algorithm for ramp up period. */ @@ -285,139 +432,56 @@ export interface ScalingHostPoolReference { scalingPlanEnabled?: boolean; } -/** 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[]; -} - -/** List of scaling plan definitions. */ -export interface ScalingPlanList { - /** List of scaling plan definitions. */ - value?: ScalingPlan[]; - /** - * 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; -} - -/** List of ScalingPlanPooledSchedule definitions. */ -export interface ScalingPlanPooledScheduleList { - /** List of ScalingPlanPooledSchedule definitions. */ - value?: ScalingPlanPooledSchedule[]; - /** - * 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; +/** List of Workspace definitions. */ +export interface WorkspaceList { + /** The Workspace items on this page */ + value: Workspace[]; + /** The link to the next page of items */ + nextLink?: string; } -/** ScalingPlanPersonalSchedule properties that can be patched. */ -export interface ScalingPlanPersonalSchedulePatch { - /** Set of days of the week on which this schedule is active. */ - daysOfWeek?: DayOfWeek[]; - /** Starting time for ramp up period. */ - rampUpStartTime?: Time; - /** The desired startup behavior during the ramp up period for personal vms in the hostpool. */ - rampUpAutoStartHosts?: StartupBehavior; - /** The desired configuration of Start VM On Connect for the hostpool during the ramp up phase. If this is disabled, session hosts must be turned on using rampUpAutoStartHosts or by turning them on manually. */ - rampUpStartVMOnConnect?: SetStartVMOnConnect; - /** Action to be taken after a user disconnect during the ramp up period. */ - rampUpActionOnDisconnect?: SessionHandlingOperation; - /** The time in minutes to wait before performing the desired session handling action when a user disconnects during the ramp up period. */ - rampUpMinutesToWaitOnDisconnect?: number; - /** Action to be taken after a logoff during the ramp up period. */ - rampUpActionOnLogoff?: SessionHandlingOperation; - /** The time in minutes to wait before performing the desired session handling action when a user logs off during the ramp up period. */ - rampUpMinutesToWaitOnLogoff?: number; - /** Starting time for peak period. */ - peakStartTime?: Time; - /** The desired configuration of Start VM On Connect for the hostpool during the peak phase. */ - peakStartVMOnConnect?: SetStartVMOnConnect; - /** Action to be taken after a user disconnect during the peak period. */ - peakActionOnDisconnect?: SessionHandlingOperation; - /** The time in minutes to wait before performing the desired session handling action when a user disconnects during the peak period. */ - peakMinutesToWaitOnDisconnect?: number; - /** Action to be taken after a logoff during the peak period. */ - peakActionOnLogoff?: SessionHandlingOperation; - /** The time in minutes to wait before performing the desired session handling action when a user logs off during the peak period. */ - peakMinutesToWaitOnLogoff?: number; - /** Starting time for ramp down period. */ - rampDownStartTime?: Time; - /** The desired configuration of Start VM On Connect for the hostpool during the ramp down phase. */ - rampDownStartVMOnConnect?: SetStartVMOnConnect; - /** Action to be taken after a user disconnect during the ramp down period. */ - rampDownActionOnDisconnect?: SessionHandlingOperation; - /** The time in minutes to wait before performing the desired session handling action when a user disconnects during the ramp down period. */ - rampDownMinutesToWaitOnDisconnect?: number; - /** Action to be taken after a logoff during the ramp down period. */ - rampDownActionOnLogoff?: SessionHandlingOperation; - /** The time in minutes to wait before performing the desired session handling action when a user logs off during the ramp down period. */ - rampDownMinutesToWaitOnLogoff?: number; - /** Starting time for off-peak period. */ - offPeakStartTime?: Time; - /** The desired configuration of Start VM On Connect for the hostpool during the off-peak phase. */ - offPeakStartVMOnConnect?: SetStartVMOnConnect; - /** Action to be taken after a user disconnect during the off-peak period. */ - offPeakActionOnDisconnect?: SessionHandlingOperation; - /** The time in minutes to wait before performing the desired session handling action when a user disconnects during the off-peak period. */ - offPeakMinutesToWaitOnDisconnect?: number; - /** Action to be taken after a logoff during the off-peak period. */ - offPeakActionOnLogoff?: SessionHandlingOperation; - /** The time in minutes to wait before performing the desired session handling action when a user logs off during the off-peak period. */ - offPeakMinutesToWaitOnLogoff?: number; +/** Schema for patchable fields on an App Attach Package. */ +export interface AppAttachPackagePatchProperties { + /** Detailed properties for App Attach Package */ + image?: AppAttachPackageInfoProperties; + /** List of Hostpool resource Ids. */ + hostPoolReferences?: string[]; + /** URL path to certificate name located in keyVault */ + keyVaultURL?: string; + /** Parameter indicating how the health check should behave if this package fails staging */ + failHealthCheckOnStagingFailure?: FailHealthCheckOnStagingFailure; + /** Lookback url to third party control plane, is null for native app attach packages */ + packageLookbackUrl?: string; + /** Field that can be populated with custom data and filtered on in list GET calls */ + customData?: string; } -/** List of ScalingPlanPersonalSchedule definitions. */ -export interface ScalingPlanPersonalScheduleList { - /** List of ScalingPlanPersonalSchedule definitions. */ - value?: ScalingPlanPersonalSchedule[]; - /** - * 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; +/** ApplicationGroup properties that can be patched. */ +export interface ApplicationGroupPatchProperties { + /** Description of ApplicationGroup. */ + description?: string; + /** Friendly name of ApplicationGroup. */ + friendlyName?: string; + /** Boolean representing whether the applicationGroup is show in the feed. */ + showInFeed?: boolean; } -/** List of ApplicationGroup definitions. */ -export interface ApplicationGroupList { - /** List of ApplicationGroup definitions. */ - value?: ApplicationGroup[]; - /** - * 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; +/** List of Application definitions. */ +export interface ApplicationList { + /** The Application items on this page */ + value: Application[]; + /** The link to the next page of items */ + nextLink?: string; } -/** List of StartMenuItem definitions. */ -export interface StartMenuItemList { - /** List of StartMenuItem definitions. */ - value?: StartMenuItem[]; - /** - * 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; +/** Application properties that can be patched. */ +export interface ApplicationPatch { + /** Detailed properties for Application */ + properties?: ApplicationPatchProperties; } /** Application properties that can be patched. */ -export interface ApplicationPatch { - /** tags to be updated */ - tags?: { [propertyName: string]: string }; +export interface ApplicationPatchProperties { /** Description of Application. */ description?: string; /** Friendly name of Application. */ @@ -442,66 +506,96 @@ export interface ApplicationPatch { applicationType?: RemoteApplicationType; } -/** List of Application definitions. */ -export interface ApplicationList { - /** List of Application definitions. */ - value?: Application[]; - /** - * 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; +/** List of Desktop definitions. */ +export interface DesktopList { + /** The Desktop items on this page */ + value: Desktop[]; + /** The link to the next page of items */ + nextLink?: string; } /** Desktop properties that can be patched. */ export interface DesktopPatch { - /** tags to be updated */ - tags?: { [propertyName: string]: string }; + /** Detailed properties for Desktop */ + properties?: DesktopPatchProperties; +} + +/** Desktop properties that can be patched. */ +export interface DesktopPatchProperties { /** Description of Desktop. */ description?: string; /** Friendly name of Desktop. */ friendlyName?: string; } -/** List of Desktop definitions. */ -export interface DesktopList { - /** List of Desktop definitions. */ - value?: Desktop[]; - /** - * 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; -} - -/** 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. */ - registrationTokenOperation?: RegistrationTokenOperation; +/** List of StartMenuItem definitions. */ +export interface StartMenuItemList { + /** The StartMenuItem items on this page */ + value: StartMenuItem[]; + /** The link to the next page of items */ + nextLink?: string; } -/** The session host configuration for updating agent, monitoring agent, and stack component. */ -export interface AgentUpdateProperties { - /** The type of maintenance for session host components. */ - type?: SessionHostComponentUpdateType; - /** Whether to use localTime of the virtual machine. */ - useSessionHostLocalTime?: boolean; - /** Time zone for maintenance as defined in https://docs.microsoft.com/en-us/dotnet/api/system.timezoneinfo.findsystemtimezonebyid?view=net-5.0. Must be set if useLocalTime is true. */ - maintenanceWindowTimeZone?: string; - /** List of maintenance windows. Maintenance windows are 2 hours long. */ - maintenanceWindows?: MaintenanceWindowProperties[]; +/** Schema for StartMenuItem properties. */ +export interface StartMenuItemProperties { + /** 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; } -/** Maintenance window starting hour and day of week. */ -export interface MaintenanceWindowProperties { - /** The update start hour of the day. (0 - 23) */ - hour?: number; - /** Day of the week. */ - dayOfWeek?: DayOfWeek; +/** Properties of HostPool. */ +export interface HostPoolPatchProperties { + /** 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. */ + personalDesktopAssignmentType?: PersonalDesktopAssignmentType; + /** The type of the load balancer. */ + 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. */ + ssoSecretType?: SSOSecretType; + /** The type of preferred application group type, default to Desktop Application Group */ + preferredAppGroupType?: PreferredAppGroupType; + /** The flag to turn on/off StartVMOnConnect feature. */ + startVMOnConnect?: boolean; + /** Enabled to allow this resource to be access from the public network */ + publicNetworkAccess?: HostpoolPublicNetworkAccess; + /** The session host configuration for updating agent, monitoring agent, and stack component. */ + agentUpdate?: AgentUpdatePatchProperties; + /** Default: AVD-wide settings are used to determine connection availability, Enabled: UDP will attempt this connection type when making connections. This means that this connection is possible, but is not guaranteed, as there are other factors that may prevent this connection type, Disabled: UDP will not attempt this connection type when making connections */ + managedPrivateUDP?: ManagedPrivateUDP; + /** Default: AVD-wide settings are used to determine connection availability, Enabled: UDP will attempt this connection type when making connections. This means that this connection is possible, but is not guaranteed, as there are other factors that may prevent this connection type, Disabled: UDP will not attempt this connection type when making connections */ + directUDP?: DirectUDP; + /** Default: AVD-wide settings are used to determine connection availability, Enabled: UDP will attempt this connection type when making connections. This means that this connection is possible, but is not guaranteed, as there are other factors that may prevent this connection type, Disabled: UDP will not attempt this connection type when making connections */ + publicUDP?: PublicUDP; + /** Default: AVD-wide settings are used to determine connection availability, Enabled: UDP will attempt this connection type when making connections. This means that this connection is possible, but is not guaranteed, as there are other factors that may prevent this connection type, Disabled: UDP will not attempt this connection type when making connections */ + relayUDP?: RelayUDP; } /** Represents a RegistrationInfo definition. */ @@ -532,174 +626,125 @@ export interface MaintenanceWindowPatchProperties { dayOfWeek?: DayOfWeek; } -/** List of HostPool definitions. */ -export interface HostPoolList { - /** List of HostPool definitions. */ - value?: HostPool[]; - /** - * 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; +/** List of ActiveSessionHostConfiguration definitions. */ +export interface ActiveSessionHostConfigurationList { + /** The ActiveSessionHostConfiguration items on this page */ + value: ActiveSessionHostConfiguration[]; + /** The link to the next page of items */ + nextLink?: string; } -/** List of RegistrationToken definitions. */ -export interface RegistrationTokenList { - /** List of RegistrationToken definitions. */ - value?: RegistrationTokenMinimal[]; - /** - * 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; +/** Network information. */ +export interface NetworkInfoProperties { + /** The resource ID of the subnet. */ + subnetId: string; + /** The resource ID of the security group. Any allowable/open ports should be specified in the Network Security Group(NSG). */ + securityGroupId?: string; } -/** Represents a Minimal set of properties for RegistrationToken definition. */ -export interface RegistrationTokenMinimal { - /** Expiration time of registration token. */ - expirationTime?: Date; - /** The registration token base64 encoded string. */ - token?: string; +/** Disk information. */ +export interface DiskInfoProperties { + /** The disk type used by virtual machine in hostpool session host. */ + type: VirtualMachineDiskType; } -/** List of UserSession definitions. */ -export interface UserSessionList { - /** List of UserSession definitions. */ - value?: UserSession[]; - /** - * 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; +/** Image configurations of session host in a HostPool */ +export interface ImageInfoProperties { + /** The type of image session hosts use in the hostpool. */ + type: Type; + /** The values to uniquely identify a marketplace image. Only one should be populated based on the image type. */ + marketplaceInfo?: MarketplaceInfoProperties; + /** The values to uniquely identify a custom image. Only one should be populated based on the image type. */ + customInfo?: CustomInfoProperties; } -/** The report for session host information. */ -export interface SessionHostHealthCheckReport { - /** - * Represents the name of the health check operation performed. - * 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. - * 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; +/** Marketplace image information. */ +export interface MarketplaceInfoProperties { + /** The offer of the image. */ + offer: string; + /** The publisher of the image. */ + publisher: string; + /** The SKU of the image. */ + sku: string; + /** The version of the image. */ + exactVersion: 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; +/** Custom image information. */ +export interface CustomInfoProperties { + /** The resource ID of the image. */ + resourceId: string; } -/** List of SessionHost definitions. */ -export interface SessionHostList { - /** List of SessionHost definitions. */ - value?: SessionHost[]; - /** - * 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; +/** Domain configurations of session hosts. */ +export interface DomainInfoProperties { + /** The type of domain join done by the virtual machine. */ + joinType: DomainJoinType; + /** Active directory info. Only one should be populated based on the join type. */ + activeDirectoryInfo?: ActiveDirectoryInfoProperties; + /** Azure active directory info. Only one should be populated based on the join type. */ + azureActiveDirectoryInfo?: AzureActiveDirectoryInfoProperties; } -/** 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; +/** Active directory info. Only one should be populated based on the join type. */ +export interface ActiveDirectoryInfoProperties { + /** Credentials needed to create the virtual machine. */ + domainCredentials: KeyVaultCredentialsProperties; + /** The organizational unit(OU) path. */ + ouPath: string; + /** The domain a virtual machine connected to a hostpool will join. */ + domainName?: 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; +/** Credentials kept in the keyvault. */ +export interface KeyVaultCredentialsProperties { + /** The uri to access the secret that the username is stored in. */ + usernameKeyVaultSecretUri: string; + /** The uri to access the secret that the password is stored in. */ + passwordKeyVaultSecretUri: string; } -/** List of MSIX Package definitions. */ -export interface MsixPackageList { - /** List of MSIX Package definitions. */ - value?: MsixPackage[]; - /** - * 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; +/** Azure Active directory info. Only one should be populated based on the join type */ +export interface AzureActiveDirectoryInfoProperties { + /** The Mobile Device Management(MDM) guid. */ + mdmProviderGuid: string; } -/** Information to import app attach package */ -export interface ImportPackageInfoRequest { - /** URI to Image */ - path?: string; - /** Possible device architectures that an app attach package can be configured for */ - packageArchitecture?: AppAttachPackageArchitectures; +/** Security Information. */ +export interface SecurityInfoProperties { + /** The security type used by virtual machine in hostpool session host. Default is Standard. */ + type?: VirtualMachineSecurityType; + /** Whether to use secureBoot on the virtual machine. */ + secureBootEnabled?: boolean; + /** Whether to use vTpm on the virtual machine. */ + vTpmEnabled?: boolean; } -/** List of App Attach Package definitions. */ -export interface AppAttachPackageList { - /** List of App Attach Package definitions. */ - value?: AppAttachPackage[]; - /** - * 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; +/** Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status.

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor */ +export interface BootDiagnosticsInfoProperties { + /** Whether boot diagnostics should be enabled on the Virtual Machine. */ + enabled?: boolean; + /** Uri of the storage account to use for placing the console output and screenshot.

If storageUri is not specified while enabling boot diagnostics, managed storage will be used. */ + storageUri?: string; } -/** Schema for App Attach Package properties. */ -export interface AppAttachPackageProperties { - /** - * The provisioning state of the App Attach Package. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly provisioningState?: ProvisioningState; - /** Detailed properties for App Attach Package */ - image?: AppAttachPackageInfoProperties; - /** List of Hostpool resource Ids. */ - hostPoolReferences?: string[]; - /** URL path to certificate name located in keyVault */ - keyVaultURL?: string; - /** Parameter indicating how the health check should behave if this package fails staging */ - failHealthCheckOnStagingFailure?: FailHealthCheckOnStagingFailure; +/** Represents URI referring to MSIX Image */ +export interface MsixImageURI { + /** URI to Image */ + uri?: string; } -/** Schema for Import Package Information properties. */ -export interface AppAttachPackageInfoProperties { - /** Alias of App Attach Package. Assigned at import time */ +/** List of MSIX package properties retrieved from MSIX Image expansion. */ +export interface ExpandMsixImageList { + /** The ExpandMsixImage items on this page */ + value: ExpandMsixImage[]; + /** The link to the next page of items */ + nextLink?: string; +} + +/** Schema for Expand MSIX Image properties. */ +export interface ExpandMsixImageProperties { + /** Alias of MSIX Package. */ packageAlias?: string; /** VHD/CIM image path on Network Share. */ imagePath?: string; @@ -729,86 +774,388 @@ export interface AppAttachPackageInfoProperties { certificateName?: string; /** Date certificate expires, found in the appxmanifest.xml. */ certificateExpiry?: Date; - /** Is package timestamped so it can ignore the certificate expiry date */ - isPackageTimestamped?: PackageTimestamped; } -/** Common error response for all Azure Resource Manager APIs to return error details for failed operations. (This also follows the OData error response format.). */ -export interface ErrorResponse { - /** The error object. */ - error?: ErrorDetail; +/** Information to import app attach package */ +export interface ImportPackageInfoRequest { + /** URI to Image */ + path?: string; + /** Possible device architectures that an app attach package can be configured for */ + packageArchitecture?: AppAttachPackageArchitectures; } -/** The error detail. */ -export interface ErrorDetail { +/** List of RegistrationToken definitions. */ +export interface RegistrationTokenList { + /** List of RegistrationToken definitions. */ + value?: RegistrationTokenMinimal[]; /** - * The error code. + * Link to the next page of results. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly code?: string; + readonly nextLink?: string; +} + +/** Represents a Minimal set of properties for RegistrationToken definition. */ +export interface RegistrationTokenMinimal { + /** Expiration time of registration token. */ + expirationTime?: Date; + /** The registration token base64 encoded string. */ + token?: string; +} + +/** List of MSIX Package definitions. */ +export interface MsixPackageList { + /** The MSIXPackage items on this page */ + value: MsixPackage[]; + /** The link to the next page of items */ + nextLink?: string; +} + +/** MSIX Package properties that can be patched. */ +export interface MsixPackagePatchProperties { + /** 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; +} + +/** List of private endpoint connection associated with the specified HostPool */ +export interface PrivateEndpointConnectionListResultWithSystemData { + /** The PrivateEndpointConnectionWithSystemData items on this page */ + value: PrivateEndpointConnectionWithSystemData[]; + /** The link to the next page of items */ + nextLink?: string; +} + +/** A list of private link resources */ +export interface PrivateLinkResourceListResult { + /** The PrivateLinkResource items on this page */ + value: PrivateLinkResource[]; + /** The link to the next page of items */ + nextLink?: string; +} + +/** Properties of a private link resource. */ +export interface PrivateLinkResourceProperties { /** - * The error message. + * The private link resource group id. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly message?: string; + readonly groupId?: string; /** - * The error target. + * The private link resource required member names. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly target?: string; + readonly requiredMembers?: string[]; + /** The private link resource Private link DNS zone name. */ + requiredZoneNames?: string[]; +} + +/** List of SessionHostConfiguration definitions. */ +export interface SessionHostConfigurationList { + /** The SessionHostConfiguration items on this page */ + value: SessionHostConfiguration[]; + /** The link to the next page of items */ + nextLink?: string; +} + +/** SessionHostConfiguration properties that can be patched. */ +export interface SessionHostConfigurationPatch { + /** Detailed properties for SessionHostConfiguration */ + properties?: SessionHostConfigurationPatchProperties; +} + +/** Session host configurations of HostPool. */ +export interface SessionHostConfigurationPatchProperties { + /** Friendly name to describe this version of the SessionHostConfiguration. */ + friendlyName?: string; + /** Hashtable that lists key/value pair tags to apply to the VMs */ + vmTags?: { [propertyName: string]: string }; + /** The Location for the session host to be created in. It will default to the location of the hostpool if not provided */ + vmLocation?: string; + /** The ResourceGroup for the session hosts to be created in. It will default to the ResourceGroup of the hostpool if not provided. */ + vmResourceGroup?: string; + /** The prefix that should be associated with session host names */ + vmNamePrefix?: string; + /** Value for availability zones to be used by the session host. Should be from [1,2,3]. */ + availabilityZones?: number[]; + /** Network information. */ + networkInfo?: NetworkInfoPatchProperties; + /** The id of the size of a virtual machine connected to a hostpool. Example: Standard_D2as_v6 */ + vmSizeId?: string; + /** Disk Information */ + diskInfo?: DiskInfoPatchProperties; + /** The uri to the storage blob containing the arm template to be run on the virtual machine after provisioning. */ + customConfigurationScriptUrl?: string; + /** Image configurations of HostPool. */ + imageInfo?: ImageInfoPatchProperties; + /** Domain configurations of session hosts. */ + domainInfo?: DomainInfoPatchProperties; + /** Security Information */ + securityInfo?: SecurityInfoPatchProperties; + /** Local Admin credentials for session hosts." */ + vmAdminCredentials?: KeyVaultCredentialsPatchProperties; + /** Boot Diagnostics Information */ + bootDiagnosticsInfo?: BootDiagnosticsInfoPatchProperties; +} + +/** Network information. */ +export interface NetworkInfoPatchProperties { + /** The resource ID of the subnet. */ + subnetId?: string; + /** The resource ID of the security group. Any allowable/open ports should be specified in the Network Security Group(NSG). */ + securityGroupId?: string; +} + +/** Disk information. */ +export interface DiskInfoPatchProperties { + /** The disk type used by virtual machine in hostpool session host. */ + type?: VirtualMachineDiskType; +} + +/** Image configurations of session host in a HostPool */ +export interface ImageInfoPatchProperties { + /** The type of image session hosts use in the hostpool. */ + type?: Type; + /** The values to uniquely identify a marketplace image. Only one should be populated based on the image type. */ + marketplaceInfo?: MarketplaceInfoPatchProperties; + /** The values to uniquely identify a custom image. Only one should be populated based on the image type. */ + customInfo?: CustomInfoPatchProperties; +} + +/** Marketplace image information. */ +export interface MarketplaceInfoPatchProperties { + /** The offer of the image. */ + offer?: string; + /** The publisher of the image. */ + publisher?: string; + /** The SKU of the image. */ + sku?: string; + /** The version of the image. */ + exactVersion?: string; +} + +/** Custom image information. */ +export interface CustomInfoPatchProperties { + /** The resource ID of the image. */ + resourceId?: string; +} + +/** Domain configurations of session hosts. */ +export interface DomainInfoPatchProperties { + /** Active directory info. Only one should be populated based on the join type. */ + activeDirectoryInfo?: ActiveDirectoryInfoPatchProperties; +} + +/** Active directory info. Only one should be populated based on the join type */ +export interface ActiveDirectoryInfoPatchProperties { + /** Credentials needed to create the virtual machine. */ + domainCredentials?: KeyVaultCredentialsPatchProperties; +} + +/** Credentials kept in the keyvault. */ +export interface KeyVaultCredentialsPatchProperties { + /** The uri to access the secret that the username is stored in. */ + usernameKeyVaultSecretUri?: string; + /** The uri to access the secret that the password is stored in. */ + passwordKeyVaultSecretUri?: string; +} + +/** Security Information. */ +export interface SecurityInfoPatchProperties { + /** The security type used by virtual machine in hostpool session host. Default is Standard. */ + type?: VirtualMachineSecurityType; + /** Whether to use secureBoot on the virtual machine. */ + secureBootEnabled?: boolean; + /** Whether to use vTpm on the virtual machine. */ + vTpmEnabled?: boolean; +} + +/** Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status.

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor */ +export interface BootDiagnosticsInfoPatchProperties { + /** Whether boot diagnostics should be enabled on the Virtual Machine. */ + enabled?: boolean; + /** Uri of the storage account to use for placing the console output and screenshot.

If storageUri is not specified while enabling boot diagnostics, managed storage will be used. */ + storageUri?: string; +} + +/** List of SessionHostManagement definitions. */ +export interface SessionHostManagementList { + /** The SessionHostManagement items on this page */ + value: SessionHostManagement[]; + /** The link to the next page of items */ + nextLink?: string; +} + +/** The configurations of a hostpool update. */ +export interface HostPoolUpdateConfigurationProperties { + /** Whether not to save original disk. False by default. */ + deleteOriginalVm?: boolean; + /** The maximum number of virtual machines to be removed during hostpool update. */ + maxVmsRemoved: number; + /** Grace period before logging off users in minutes. */ + logOffDelayMinutes: number; + /** Log off message sent to user for logoff. Default value is an empty string. */ + logOffMessage?: string; +} + +/** SessionHostManagement properties that can be patched. */ +export interface SessionHostManagementPatch { + /** Detailed properties for SessionHostManagement */ + properties?: SessionHostManagementPatchProperties; +} + +/** Represents a SessionHostManagementPatch definition. */ +export interface SessionHostManagementPatchProperties { + /** Time zone for sessionHostManagement operations as defined in https://docs.microsoft.com/dotnet/api/system.timezoneinfo.findsystemtimezonebyid. Must be set if useLocalTime is true. */ + scheduledDateTimeZone?: string; + /** Parameters for a hostpool update. */ + update?: HostPoolUpdateConfigurationPatchProperties; +} + +/** The configurations of a hostpool update. */ +export interface HostPoolUpdateConfigurationPatchProperties { + /** Whether not to save original disk. False by default. */ + deleteOriginalVm?: boolean; + /** The maximum number of virtual machines to be removed during hostpool update. */ + maxVmsRemoved?: number; + /** Grace period before logging off users in minutes. */ + logOffDelayMinutes?: number; + /** Log off message sent to user for logoff. Default value is an empty string. */ + logOffMessage?: string; +} + +/** Object containing control action for hostpool update. */ +export interface HostPoolUpdateControlParameter { + /** Action types for controlling hostpool update. */ + action: HostPoolUpdateAction; + /** The cancel message sent to the user on the session host. This is can only be specified if the action is 'Cancel'. */ + cancelMessage?: string; +} + +/** Object containing the definition for properties to be used for a sessionHostUpdate operation. */ +export interface UpdateSessionHostsRequestBody { + /** The timestamp that the update validation is scheduled for. If none is provided, the update will be executed immediately */ + scheduledDateTime?: Date; + /** The timeZone as defined in https://docs.microsoft.com/dotnet/api/system.timezoneinfo.findsystemtimezonebyid. */ + scheduledDateTimeZone?: string; + /** settings for management information for the hostpool update operation. If none is provided the update will use the settings saved in the sessionHostManagement object. */ + update?: HostPoolUpdateConfigurationPatchProperties; +} + +/** Schema for SessionHostManagementUpdateStatus properties. */ +export interface SessionHostManagementUpdateStatus { + /** Fully qualified ID for the async operation. */ + id?: string; + /** Name of the async operation. */ + name?: string; + /** Percent of the operation that is complete. */ + percentComplete?: number; + /** The start time of the operation. */ + startTime?: Date; + /** The end time of the operation. */ + endTime?: Date; + /** If present, details of the operation error. */ + error?: ErrorDetail; /** - * The error details. + * Operation status. Current defined values are < Error | Scheduled | UpdatingSessionHosts | ValidatingSessionHostUpdate | Paused | Pausing | Cancelling > | Succeeded | Failed | Canceled * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly details?: ErrorDetail[]; + readonly status: SessionHostManagementUpdateOperationStatus; + /** Properties bag to hold custom RP properties for sessionHostManagement Update Statuses. */ + properties?: SessionHostManagementUpdateStatusProperties; +} + +/** The current status of the session host update async operation. */ +export interface SessionHostManagementUpdateStatusProperties { + /** The Log Analytics. */ + correlationId?: string; + /** Progress information on the sessionHostManagement operation. */ + progress?: SessionHostManagementOperationProgress; + /** The timestamp that the update is scheduled for. */ + scheduledDateTime?: Date; + /** SessionHostManagement properties used for the operation. */ + sessionHostManagement?: SessionHostManagement; +} + +/** SessionHostManagement Operation Progress information. */ +export interface SessionHostManagementOperationProgress { + /** Time that the sessionHostManagement operation was created. */ + executionStartTime?: Date; + /** The number of sessionHosts to be started in the sessionHostManagement operation. */ + totalSessionHosts?: number; + /** The number of sessionHosts in progress in the sessionHostManagement operation */ + sessionHostsInProgress?: number; + /** The number of sessionHosts completed in the sessionHostManagement operation. */ + sessionHostsCompleted?: number; + /** The number of sessionHosts rollback failed in the sessionHostManagement operation. */ + sessionHostsRollbackFailed?: number; +} + +/** List of SessionHost definitions. */ +export interface SessionHostList { + /** The SessionHost items on this page */ + value: SessionHost[]; + /** The link to the next page of items */ + nextLink?: string; +} + +/** The report for session host information. */ +export interface SessionHostHealthCheckReport { /** - * The error additional info. + * Represents the name of the health check operation performed. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly additionalInfo?: ErrorAdditionalInfo[]; -} - -/** The resource management error additional info. */ -export interface ErrorAdditionalInfo { + readonly healthCheckName?: HealthCheckName; /** - * The additional info type. + * Represents the Health state of the health check we performed. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly type?: string; + readonly healthCheckResult?: HealthCheckResult; /** - * The additional info. + * Additional detailed information on the failure. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly info?: Record; -} - -/** Represents URI referring to MSIX Image */ -export interface MsixImageURI { - /** URI to Image */ - uri?: string; + readonly additionalFailureDetails?: SessionHostHealthCheckFailureDetails; } -/** List of MSIX package properties retrieved from MSIX Image expansion. */ -export interface ExpandMsixImageList { - /** List of MSIX package properties from give MSIX Image. */ - value?: ExpandMsixImage[]; +/** Contains details on the failure. */ +export interface SessionHostHealthCheckFailureDetails { /** - * Link to the next page of results. + * 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 nextLink?: string; + 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; } -/** Schema for patchable fields on an App Attach Package. */ -export interface AppAttachPackagePatchProperties { - /** Detailed properties for App Attach Package */ - image?: AppAttachPackageInfoProperties; - /** List of Hostpool resource Ids. */ - hostPoolReferences?: string[]; - /** URL path to certificate name located in keyVault */ - keyVaultURL?: string; - /** Parameter indicating how the health check should behave if this package fails staging */ - failHealthCheckOnStagingFailure?: FailHealthCheckOnStagingFailure; +/** SessionHost properties that can be patched. */ +export interface SessionHostPatchProperties { + /** Allow a new session. */ + allowNewSession?: boolean; + /** User assigned to SessionHost. */ + assignedUser?: string; + /** Friendly name of SessionHost */ + friendlyName?: string; +} + +/** List of UserSession definitions. */ +export interface UserSessionList { + /** The UserSession items on this page */ + value: UserSession[]; + /** The link to the next page of items */ + nextLink?: string; } /** Represents message sent to a UserSession. */ @@ -819,88 +1166,112 @@ export interface SendMessage { messageBody?: string; } -/** The private endpoint connection resource. */ -export interface PrivateEndpointConnection extends Resource { - /** - * The group ids for the private endpoint resource. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly groupIds?: string[]; - /** The private endpoint resource. */ - 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. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly provisioningState?: PrivateEndpointConnectionProvisioningState; +/** Scaling plan properties that can be patched. */ +export interface ScalingPlanPatch { + /** tags to be updated */ + tags?: { [propertyName: string]: string }; + /** Detailed properties for scaling plan */ + properties?: ScalingPlanPatchProperties; } -/** The resource model definition for an Azure Resource Manager tracked top level resource which has 'tags' and a 'location' */ -export interface TrackedResource extends Resource { - /** Resource tags. */ - tags?: { [propertyName: string]: string }; - /** The geo-location where the resource lives */ - location: string; +/** Scaling plan properties. */ +export interface ScalingPlanPatchProperties { + /** 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[]; } -/** 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[]; +/** List of ScalingPlanPersonalSchedule definitions. */ +export interface ScalingPlanPersonalScheduleList { + /** The ScalingPlanPersonalSchedule items on this page */ + value: ScalingPlanPersonalSchedule[]; + /** The link to the next page of items */ + nextLink?: string; } -/** Represents a ScalingPlanPooledSchedule definition. */ -export interface ScalingPlanPooledSchedule extends Resource { +/** ScalingPlanPersonalSchedule properties that can be patched. */ +export interface ScalingPlanPersonalSchedulePatch { + /** Detailed properties for ScalingPlanPersonalSchedule */ + properties?: ScalingPlanPersonalSchedulePatchProperties; +} + +/** ScalingPlanPersonalSchedule properties that can be patched. */ +export interface ScalingPlanPersonalSchedulePatchProperties { /** Set of days of the week on which this schedule is active. */ daysOfWeek?: DayOfWeek[]; /** Starting time for ramp up period. */ rampUpStartTime?: Time; - /** Load balancing algorithm for ramp up period. */ - rampUpLoadBalancingAlgorithm?: SessionHostLoadBalancingAlgorithm; - /** Minimum host percentage for ramp up period. */ - rampUpMinimumHostsPct?: number; - /** Capacity threshold for ramp up period. */ - rampUpCapacityThresholdPct?: number; + /** The desired startup behavior during the ramp up period for personal vms in the hostpool. */ + rampUpAutoStartHosts?: StartupBehavior; + /** The desired configuration of Start VM On Connect for the hostpool during the ramp up phase. If this is disabled, session hosts must be turned on using rampUpAutoStartHosts or by turning them on manually. */ + rampUpStartVMOnConnect?: SetStartVMOnConnect; + /** Action to be taken after a user disconnect during the ramp up period. */ + rampUpActionOnDisconnect?: SessionHandlingOperation; + /** The time in minutes to wait before performing the desired session handling action when a user disconnects during the ramp up period. */ + rampUpMinutesToWaitOnDisconnect?: number; + /** Action to be taken after a logoff during the ramp up period. */ + rampUpActionOnLogoff?: SessionHandlingOperation; + /** The time in minutes to wait before performing the desired session handling action when a user logs off during the ramp up period. */ + rampUpMinutesToWaitOnLogoff?: number; /** Starting time for peak period. */ peakStartTime?: Time; - /** Load balancing algorithm for peak period. */ - peakLoadBalancingAlgorithm?: SessionHostLoadBalancingAlgorithm; + /** The desired configuration of Start VM On Connect for the hostpool during the peak phase. */ + peakStartVMOnConnect?: SetStartVMOnConnect; + /** Action to be taken after a user disconnect during the peak period. */ + peakActionOnDisconnect?: SessionHandlingOperation; + /** The time in minutes to wait before performing the desired session handling action when a user disconnects during the peak period. */ + peakMinutesToWaitOnDisconnect?: number; + /** Action to be taken after a logoff during the peak period. */ + peakActionOnLogoff?: SessionHandlingOperation; + /** The time in minutes to wait before performing the desired session handling action when a user logs off during the peak period. */ + peakMinutesToWaitOnLogoff?: number; /** Starting time for ramp down period. */ rampDownStartTime?: Time; - /** Load balancing algorithm for ramp down period. */ - 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. */ - 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; + /** The desired configuration of Start VM On Connect for the hostpool during the ramp down phase. */ + rampDownStartVMOnConnect?: SetStartVMOnConnect; + /** Action to be taken after a user disconnect during the ramp down period. */ + rampDownActionOnDisconnect?: SessionHandlingOperation; + /** The time in minutes to wait before performing the desired session handling action when a user disconnects during the ramp down period. */ + rampDownMinutesToWaitOnDisconnect?: number; + /** Action to be taken after a logoff during the ramp down period. */ + rampDownActionOnLogoff?: SessionHandlingOperation; + /** The time in minutes to wait before performing the desired session handling action when a user logs off during the ramp down period. */ + rampDownMinutesToWaitOnLogoff?: number; /** Starting time for off-peak period. */ offPeakStartTime?: Time; - /** Load balancing algorithm for off-peak period. */ - offPeakLoadBalancingAlgorithm?: SessionHostLoadBalancingAlgorithm; + /** The desired configuration of Start VM On Connect for the hostpool during the off-peak phase. */ + offPeakStartVMOnConnect?: SetStartVMOnConnect; + /** Action to be taken after a user disconnect during the off-peak period. */ + offPeakActionOnDisconnect?: SessionHandlingOperation; + /** The time in minutes to wait before performing the desired session handling action when a user disconnects during the off-peak period. */ + offPeakMinutesToWaitOnDisconnect?: number; + /** Action to be taken after a logoff during the off-peak period. */ + offPeakActionOnLogoff?: SessionHandlingOperation; + /** The time in minutes to wait before performing the desired session handling action when a user logs off during the off-peak period. */ + offPeakMinutesToWaitOnLogoff?: number; } -/** ScalingPlanPooledSchedule properties that can be patched. */ -export interface ScalingPlanPooledSchedulePatch extends Resource { +/** List of ScalingPlanPooledSchedule definitions. */ +export interface ScalingPlanPooledScheduleList { + /** The ScalingPlanPooledSchedule items on this page */ + value: ScalingPlanPooledSchedule[]; + /** The link to the next page of items */ + nextLink?: string; +} + +/** A ScalingPlanPooledSchedule that can be patched. */ +export interface ScalingPlanPooledSchedulePatchProperties { + /** Name of the ScalingPlanPooledSchedule */ + name?: string; /** Set of days of the week on which this schedule is active. */ daysOfWeek?: DayOfWeek[]; /** Starting time for ramp up period. */ @@ -937,123 +1308,224 @@ export interface ScalingPlanPooledSchedulePatch extends Resource { offPeakLoadBalancingAlgorithm?: SessionHostLoadBalancingAlgorithm; } -/** The resource model definition for a Azure Resource Manager proxy resource. It will not have tags and a location */ -export interface ProxyResource extends Resource { } +/** Workspace properties that can be patched.A patch model */ +export interface WorkspacePatch { + /** tags to be updated */ + tags?: { [propertyName: string]: string }; + /** Detailed properties for Workspace */ + properties?: WorkspacePatchProperties; +} + +/** Workspace properties that can be patched. */ +export interface WorkspacePatchProperties { + /** 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 */ + publicNetworkAccess?: PublicNetworkAccess; +} + +/** The resource model definition for an Azure Resource Manager tracked top level resource which has 'tags' and a 'location' */ +export interface TrackedResource extends Resource { + /** Resource tags. */ + tags?: { [propertyName: string]: string }; + /** The geo-location where the resource lives */ + location: string; +} + +/** The private endpoint connection resource. */ +export interface PrivateEndpointConnection extends Resource { + /** Resource properties. */ + properties?: PrivateEndpointConnectionProperties; +} + +/** Schema for updatable App Attach Package properties. */ +export interface AppAttachPackagePatch extends Resource { + /** tags to be updated */ + tags?: { [propertyName: string]: string }; + /** Detailed properties for App Attach Package */ + properties?: AppAttachPackagePatchProperties; +} /** 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; - /** Boolean representing whether the applicationGroup is show in the feed. */ - showInFeed?: boolean; + /** ApplicationGroup properties that can be patched. */ + properties?: ApplicationGroupPatchProperties; } +/** The resource model definition for a Azure Resource Manager proxy resource. It will not have tags and a location */ +export interface ProxyResource extends Resource {} + /** 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; + /** Detailed properties for StartMenuItem */ + properties?: StartMenuItemProperties; } -/** Schema for Application properties. */ -export interface Application extends Resource { +/** HostPool properties that can be patched. */ +export interface HostPoolPatch extends Resource { + /** tags to be updated */ + tags?: { [propertyName: string]: string }; + /** HostPool properties that can be patched. */ + properties?: HostPoolPatchProperties; +} + +/** Represents the definition of contents retrieved after expanding the MSIX Image. */ +export interface ExpandMsixImage extends Resource { + /** Detailed properties for ExpandMsixImage */ + properties?: ExpandMsixImageProperties; +} + +/** MSIX Package properties that can be patched. */ +export interface MsixPackagePatch extends Resource { + /** Detailed properties for MSIX Package */ + properties?: MsixPackagePatchProperties; +} + +/** A private link resource */ +export interface PrivateLinkResource extends Resource { + /** Resource properties. */ + properties?: PrivateLinkResourceProperties; +} + +/** SessionHost properties that can be patched. */ +export interface SessionHostPatch extends Resource { + /** Detailed properties for SessionHost */ + properties?: SessionHostPatchProperties; +} + +/** ScalingPlanPooledSchedule properties that can be patched. */ +export interface ScalingPlanPooledSchedulePatch extends Resource { + /** Detailed properties for ScalingPlanPooledSchedule */ + properties?: ScalingPlanPooledSchedulePatchProperties; +} + +/** Schema for App Attach Package properties. */ +export interface AppAttachPackage extends TrackedResource { /** - * ObjectId of Application. (internal use) + * The provisioning state of the App Attach Package. * 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. */ - 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. */ - 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; + readonly provisioningState?: ProvisioningState; + /** Detailed properties for App Attach Package */ + image?: AppAttachPackageInfoProperties; + /** List of Hostpool resource Ids. */ + hostPoolReferences?: string[]; + /** URL path to certificate name located in keyVault */ + keyVaultURL?: string; + /** Parameter indicating how the health check should behave if this package fails staging */ + failHealthCheckOnStagingFailure?: FailHealthCheckOnStagingFailure; + /** Specific name of package owner, is "AppAttach" for native app attach packages */ + packageOwnerName?: string; + /** Lookback url to third party control plane, is null for native app attach packages */ + packageLookbackUrl?: string; + /** Field that can be populated with custom data and filtered on in list GET calls */ + customData?: string; +} + +/** Represents a ApplicationGroup definition. */ +export interface ApplicationGroup extends TrackedResource { + /** The managed service identities assigned to this resource. */ + identity?: ManagedServiceIdentity; /** - * Hash of the icon. + * If etag is provided in the response body, it may 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 iconHash?: string; + readonly etag?: 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 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; + /** Details of the resource plan. */ + plan?: Plan; + /** The SKU (Stock Keeping Unit) assigned to this resource. */ + sku?: Sku; /** - * 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; -} - -/** Schema for Desktop properties. */ -export interface Desktop extends Resource { - /** - * ObjectId of Desktop. (internal use) + * 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 Desktop. */ + /** Description of ApplicationGroup. */ description?: string; - /** Friendly name of Desktop. */ + /** Friendly name of ApplicationGroup. */ friendlyName?: string; + /** HostPool arm path of ApplicationGroup. */ + hostPoolArmPath: string; /** - * Hash of the icon. + * Workspace arm path of ApplicationGroup. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly iconHash?: string; + readonly workspaceArmPath?: string; + /** Resource Type of ApplicationGroup. */ + applicationGroupType: ApplicationGroupType; /** - * The icon a 64 bit string as a byte array. + * Is cloud pc resource. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly iconContent?: Uint8Array; + readonly cloudPcResource?: boolean; + /** Boolean representing whether the applicationGroup is show in the feed. */ + showInFeed?: boolean; } -/** HostPool properties that can be patched. */ -export interface HostPoolPatch extends Resource { - /** tags to be updated */ - tags?: { [propertyName: string]: string }; +/** Represents a HostPool definition. */ +export interface HostPool extends TrackedResource { + /** The managed service identities assigned to this resource. */ + identity?: ManagedServiceIdentity; + /** + * If etag is provided in the response body, it may 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; + /** 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 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; + /** Details of the resource plan. */ + plan?: Plan; + /** The SKU (Stock Keeping Unit) assigned to this resource. */ + sku?: Sku; + /** + * 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. */ + hostPoolType: HostPoolType; + /** PersonalDesktopAssignment type for HostPool. */ + personalDesktopAssignmentType?: PersonalDesktopAssignmentType; /** Custom rdp property of HostPool. */ customRdpProperty?: string; /** The max session limit of HostPool. */ maxSessionLimit?: number; - /** PersonalDesktopAssignment type for HostPool. */ - personalDesktopAssignmentType?: PersonalDesktopAssignmentType; /** The type of the load balancer. */ - loadBalancerType?: LoadBalancerType; + loadBalancerType: LoadBalancerType; /** The ring number of HostPool. */ ring?: number; /** Is validation environment. */ validationEnvironment?: boolean; /** The registration info of HostPool. */ - registrationInfo?: RegistrationInfoPatch; + 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[]; + /** + * List of App Attach Package links. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly appAttachPackageReferences?: 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. */ @@ -1063,102 +1535,220 @@ export interface HostPoolPatch extends Resource { /** The type of single sign on Secret Type. */ ssoSecretType?: SSOSecretType; /** The type of preferred application group type, default to Desktop Application Group */ - preferredAppGroupType?: PreferredAppGroupType; + preferredAppGroupType: PreferredAppGroupType; /** The flag to turn on/off StartVMOnConnect feature. */ startVMOnConnect?: boolean; - /** Enabled to allow this resource to be access from the public network */ + /** + * 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 */ publicNetworkAccess?: HostpoolPublicNetworkAccess; /** The session host configuration for updating agent, monitoring agent, and stack component. */ - agentUpdate?: AgentUpdatePatchProperties; + agentUpdate?: AgentUpdateProperties; + /** + * List of private endpoint connection associated with the specified resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly privateEndpointConnections?: PrivateEndpointConnection[]; + /** Default: AVD-wide settings are used to determine connection availability, Enabled: UDP will attempt this connection type when making connections. This means that this connection is possible, but is not guaranteed, as there are other factors that may prevent this connection type, Disabled: UDP will not attempt this connection type when making connections */ + managedPrivateUDP?: ManagedPrivateUDP; + /** Default: AVD-wide settings are used to determine connection availability, Enabled: UDP will attempt this connection type when making connections. This means that this connection is possible, but is not guaranteed, as there are other factors that may prevent this connection type, Disabled: UDP will not attempt this connection type when making connections */ + directUDP?: DirectUDP; + /** Default: AVD-wide settings are used to determine connection availability, Enabled: UDP will attempt this connection type when making connections. This means that this connection is possible, but is not guaranteed, as there are other factors that may prevent this connection type, Disabled: UDP will not attempt this connection type when making connections */ + publicUDP?: PublicUDP; + /** Default: AVD-wide settings are used to determine connection availability, Enabled: UDP will attempt this connection type when making connections. This means that this connection is possible, but is not guaranteed, as there are other factors that may prevent this connection type, Disabled: UDP will not attempt this connection type when making connections */ + relayUDP?: RelayUDP; + /** The type of management for this hostpool, Automated or Standard. The default value is Automated. */ + managementType?: ManagementType; } -/** Represents a UserSession definition. */ -export interface UserSession extends Resource { +/** Represents a scaling plan definition. */ +export interface ScalingPlan extends TrackedResource { + /** The managed service identities assigned to this resource. */ + identity?: ManagedServiceIdentity; /** - * ObjectId of user session. (internal use) + * If etag is provided in the response body, it may 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; + /** 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 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; + /** Details of the resource plan. */ + plan?: Plan; + /** The SKU (Stock Keeping Unit) assigned to this resource. */ + sku?: Sku; + /** + * ObjectId of scaling plan. (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. */ - applicationType?: ApplicationType; - /** State of user session. */ - sessionState?: SessionState; - /** The active directory user name. */ - activeDirectoryUserName?: string; - /** The timestamp of the user session create. */ - createTime?: Date; + /** 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. */ + hostPoolType?: ScalingHostPoolType; + /** Exclusion tag for scaling plan. */ + exclusionTag?: string; + /** List of ScalingPlanPooledSchedule definitions. */ + schedules?: ScalingSchedule[]; + /** List of ScalingHostPoolReference definitions. */ + hostPoolReferences?: ScalingHostPoolReference[]; } -/** Represents a SessionHost definition. */ -export interface SessionHost extends Resource { +/** Represents a Workspace definition. */ +export interface Workspace extends TrackedResource { + /** The managed service identities assigned to this resource. */ + identity?: ManagedServiceIdentity; /** - * ObjectId of SessionHost. (internal use) + * If etag is provided in the response body, it may 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; + /** 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 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; + /** Details of the resource plan. */ + plan?: Plan; + /** The SKU (Stock Keeping Unit) assigned to this resource. */ + sku?: Sku; + /** + * ObjectId of Workspace. (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; + /** Description of Workspace. */ + description?: string; + /** Friendly name of Workspace. */ + friendlyName?: string; + /** List of applicationGroup resource Ids. */ + applicationGroupReferences?: string[]; /** - * Virtual Machine Id of SessionHost's underlying virtual machine. + * Is cloud pc resource. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly virtualMachineId?: string; + 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 */ + publicNetworkAccess?: PublicNetworkAccess; /** - * Resource Id of SessionHost's underlying virtual machine. + * List of private endpoint connection associated with the specified resource * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly resourceId?: string; - /** User assigned to SessionHost. */ - assignedUser?: string; - /** Friendly name of SessionHost */ + readonly privateEndpointConnections?: PrivateEndpointConnection[]; +} + +/** Schema for Application properties. */ +export interface Application extends ProxyResource { + /** + * 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; - /** Status for a SessionHost. */ - status?: Status; + /** 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. */ + 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. */ + 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; /** - * The timestamp of the status. + * Hash of the icon. * 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. */ - updateState?: UpdateState; + readonly iconHash?: string; /** - * The timestamp of the last update. + * 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 lastUpdateTime?: Date; - /** The error message. */ - updateErrorMessage?: string; + readonly iconContent?: Uint8Array; +} + +/** Schema for Desktop properties. */ +export interface Desktop extends ProxyResource { /** - * List of SessionHostHealthCheckReports + * ObjectId of Desktop. (internal use) * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly sessionHostHealthCheckResults?: SessionHostHealthCheckReport[]; + 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; } -/** SessionHost properties that can be patched. */ -export interface SessionHostPatch extends Resource { - /** Allow a new session. */ - allowNewSession?: boolean; - /** User assigned to SessionHost. */ - assignedUser?: string; - /** Friendly name of SessionHost */ +/** Schema for ActiveSessionHostConfiguration properties. */ +export interface ActiveSessionHostConfiguration extends ProxyResource { + /** + * The timestamp of the last update. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly version?: Date; + /** Friendly name to describe this version of the SessionHostConfiguration */ friendlyName?: string; + /** Hashtable that lists key/value pair tags to apply to the VMs */ + vmTags?: { [propertyName: string]: string }; + /** The Location for the session host to be created in. It will default to the location of the hostpool if not provided. */ + vmLocation?: string; + /** The ResourceGroup for the session hosts to be created in. It will default to the ResourceGroup of the hostpool if not provided. */ + vmResourceGroup?: string; + /** The prefix that should be associated with session host names */ + vmNamePrefix: string; + /** Value for availability zones to be used by the session host. Should be from [1,2,3]. */ + availabilityZones?: number[]; + /** Network information. */ + networkInfo: NetworkInfoProperties; + /** The id of the size of a virtual machine connected to a hostpool. Example: Standard_D2as_v6 */ + vmSizeId: string; + /** Disk information. */ + diskInfo: DiskInfoProperties; + /** The uri to the storage blob containing the arm template to be run on the virtual machine after provisioning. */ + customConfigurationScriptUrl?: string; + /** Image configurations of the HostPool. */ + imageInfo: ImageInfoProperties; + /** Domain configurations of session hosts. */ + domainInfo: DomainInfoProperties; + /** Security information. */ + securityInfo?: SecurityInfoProperties; + /** Local Admin credentials for session hosts. */ + vmAdminCredentials: KeyVaultCredentialsProperties; + /** Boot Diagnostics information. */ + bootDiagnosticsInfo?: BootDiagnosticsInfoProperties; } /** Schema for MSIX Package properties. */ -export interface MsixPackage extends Resource { +export interface MsixPackage extends ProxyResource { /** VHD/CIM image path on Network Share. */ imagePath?: string; /** Package Name from appxmanifest.xml. */ @@ -1183,94 +1773,170 @@ export interface MsixPackage extends Resource { 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; +/** The Private Endpoint Connection resource. */ +export interface PrivateEndpointConnectionWithSystemData extends ProxyResource { + /** + * The group ids for the private endpoint resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly groupIds?: string[]; + /** The private endpoint resource. */ + 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. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: PrivateEndpointConnectionProvisioningState; } -/** 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[]; - /** Certificate name found in the appxmanifest.xml. */ - certificateName?: string; - /** Date certificate expires, found in the appxmanifest.xml. */ - certificateExpiry?: Date; -} - -/** Schema for updatable App Attach Package properties. */ -export interface AppAttachPackagePatch extends Resource { - /** Detailed properties for App Attach Package */ - properties?: AppAttachPackagePatchProperties; +/** Schema for SessionHostConfiguration properties. */ +export interface SessionHostConfiguration extends ProxyResource { + /** + * The timestamp of the last update. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly version?: Date; + /** Friendly name to describe this version of the SessionHostConfiguration. */ + friendlyName?: string; + /** + * Provisioning state of the Session Host Configuration. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: ProvisioningStateSHC; + /** Hashtable that lists key/value pair tags to apply to the VMs */ + vmTags?: { [propertyName: string]: string }; + /** The Location for the session host to be created in. It will default to the location of the hostpool if not provided */ + vmLocation?: string; + /** The ResourceGroup for the session hosts to be created in. It will default to the ResourceGroup of the hostpool if not provided. */ + vmResourceGroup?: string; + /** The prefix that should be associated with session host names */ + vmNamePrefix: string; + /** Value for availability zones to be used by the session host. Should be from [1,2,3]. */ + availabilityZones?: number[]; + /** Network information. */ + networkInfo: NetworkInfoProperties; + /** The id of the size of a virtual machine connected to a hostpool. Example: Standard_D2as_v6 */ + vmSizeId: string; + /** Disk Information */ + diskInfo: DiskInfoProperties; + /** The uri to the storage blob containing the arm template to be run on the virtual machine after provisioning. */ + customConfigurationScriptUrl?: string; + /** Image configurations of HostPool. */ + imageInfo: ImageInfoProperties; + /** Domain configurations of session hosts. */ + domainInfo: DomainInfoProperties; + /** Security Information */ + securityInfo?: SecurityInfoProperties; + /** Local Admin credentials for session hosts." */ + vmAdminCredentials: KeyVaultCredentialsProperties; + /** Boot Diagnostics Information */ + bootDiagnosticsInfo?: BootDiagnosticsInfoProperties; +} + +/** Schema for SessionHostManagement properties. */ +export interface SessionHostManagement extends ProxyResource { + /** Time zone for sessionHostManagement operations as defined in https://docs.microsoft.com/dotnet/api/system.timezoneinfo.findsystemtimezonebyid. Must be set if useLocalTime is true. */ + scheduledDateTimeZone: string; + /** Parameters for a hostpool update. */ + update: HostPoolUpdateConfigurationProperties; } -export interface ResourceModelWithAllowedPropertySetIdentity extends Identity { } - -export interface ResourceModelWithAllowedPropertySetSku extends Sku { } - -export interface ResourceModelWithAllowedPropertySetPlan extends Plan { } - -/** The Private Endpoint Connection resource. */ -export interface PrivateEndpointConnectionWithSystemData - extends PrivateEndpointConnection { } - -/** 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 TrackedResource { - /** 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; +/** Represents a SessionHost definition. */ +export interface SessionHost extends ProxyResource { /** - * 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. + * ObjectId of SessionHost. (internal use) * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly etag?: string; - identity?: ResourceModelWithAllowedPropertySetIdentity; - sku?: ResourceModelWithAllowedPropertySetSku; - plan?: ResourceModelWithAllowedPropertySetPlan; + 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; + /** Friendly name of SessionHost */ + friendlyName?: string; + /** Status for a SessionHost. */ + 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. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly 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; + /** + * The last time update was completed. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly lastSessionHostUpdateTime?: Date; + /** + * SessionHostConfiguration version reference at the time the update is initiated, in the format of date time. Example: 2024-04-26T04:56:45Z + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly sessionHostConfiguration?: string; + /** + * List of SessionHostHealthCheckReports + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly sessionHostHealthCheckResults?: SessionHostHealthCheckReport[]; } -/** Schema for App Attach Package properties. */ -export interface AppAttachPackage extends TrackedResource { - /** Detailed properties for App Attach Package */ - properties: AppAttachPackageProperties; +/** Represents a UserSession definition. */ +export interface UserSession extends ProxyResource { + /** + * 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. */ + applicationType?: ApplicationType; + /** State of user session. */ + sessionState?: SessionState; + /** The active directory user name. */ + activeDirectoryUserName?: string; + /** The timestamp of the user session create. */ + createTime?: Date; } /** Represents a ScalingPlanPersonalSchedule definition. */ export interface ScalingPlanPersonalSchedule extends ProxyResource { /** Set of days of the week on which this schedule is active. */ - daysOfWeek?: DayOfWeek[]; + daysOfWeek: DayOfWeek[]; /** Starting time for ramp up period. */ - rampUpStartTime?: Time; + rampUpStartTime: Time; /** The desired startup behavior during the ramp up period for personal vms in the hostpool. */ rampUpAutoStartHosts?: StartupBehavior; /** The desired configuration of Start VM On Connect for the hostpool during the ramp up phase. If this is disabled, session hosts must be turned on using rampUpAutoStartHosts or by turning them on manually. */ @@ -1284,7 +1950,7 @@ export interface ScalingPlanPersonalSchedule extends ProxyResource { /** The time in minutes to wait before performing the desired session handling action when a user logs off during the ramp up period. */ rampUpMinutesToWaitOnLogoff?: number; /** Starting time for peak period. */ - peakStartTime?: Time; + peakStartTime: Time; /** The desired configuration of Start VM On Connect for the hostpool during the peak phase. */ peakStartVMOnConnect?: SetStartVMOnConnect; /** Action to be taken after a user disconnect during the peak period. */ @@ -1296,7 +1962,7 @@ export interface ScalingPlanPersonalSchedule extends ProxyResource { /** The time in minutes to wait before performing the desired session handling action when a user logs off during the peak period. */ peakMinutesToWaitOnLogoff?: number; /** Starting time for ramp down period. */ - rampDownStartTime?: Time; + rampDownStartTime: Time; /** The desired configuration of Start VM On Connect for the hostpool during the ramp down phase. */ rampDownStartVMOnConnect?: SetStartVMOnConnect; /** Action to be taken after a user disconnect during the ramp down period. */ @@ -1308,7 +1974,7 @@ export interface ScalingPlanPersonalSchedule extends ProxyResource { /** The time in minutes to wait before performing the desired session handling action when a user logs off during the ramp down period. */ rampDownMinutesToWaitOnLogoff?: number; /** Starting time for off-peak period. */ - offPeakStartTime?: Time; + offPeakStartTime: Time; /** The desired configuration of Start VM On Connect for the hostpool during the off-peak phase. */ offPeakStartVMOnConnect?: SetStartVMOnConnect; /** Action to be taken after a user disconnect during the off-peak period. */ @@ -1321,177 +1987,377 @@ export interface ScalingPlanPersonalSchedule extends ProxyResource { offPeakMinutesToWaitOnLogoff?: number; } -/** Represents a Workspace definition. */ -export interface Workspace extends ResourceModelWithAllowedPropertySet { - /** - * 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 */ - publicNetworkAccess?: PublicNetworkAccess; - /** - * List of private endpoint connection associated with the specified resource - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly privateEndpointConnections?: PrivateEndpointConnection[]; +/** Represents a ScalingPlanPooledSchedule definition. */ +export interface ScalingPlanPooledSchedule extends ProxyResource { + /** Name of the ScalingPlanPooledSchedule */ + namePropertiesName?: string; + /** Set of days of the week on which this schedule is active. */ + daysOfWeek: DayOfWeek[]; + /** Starting time for ramp up period. */ + rampUpStartTime: Time; + /** Load balancing algorithm for ramp up period. */ + 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. */ + peakLoadBalancingAlgorithm?: SessionHostLoadBalancingAlgorithm; + /** Starting time for ramp down period. */ + rampDownStartTime: Time; + /** Load balancing algorithm for ramp down period. */ + 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. */ + 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. */ + offPeakLoadBalancingAlgorithm?: SessionHostLoadBalancingAlgorithm; } -/** Represents a scaling plan definition. */ -export interface ScalingPlan extends ResourceModelWithAllowedPropertySet { - /** - * 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. */ - hostPoolType?: ScalingHostPoolType; - /** Exclusion tag for scaling plan. */ - exclusionTag?: string; - /** List of ScalingPlanPooledSchedule definitions. */ - schedules?: ScalingSchedule[]; - /** List of ScalingHostPoolReference definitions. */ - hostPoolReferences?: ScalingHostPoolReference[]; +/** Defines headers for SessionHostConfigurations_createOrUpdate operation. */ +export interface SessionHostConfigurationsCreateOrUpdateHeaders { + /** A link to the status monitor */ + azureAsyncOperation?: string; + /** The Retry-After header can indicate how long the client should wait before polling the operation status. */ + retryAfter?: number; } -/** Represents a ApplicationGroup definition. */ -export interface ApplicationGroup extends ResourceModelWithAllowedPropertySet { - /** - * 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. */ - applicationGroupType: ApplicationGroupType; - /** - * Is cloud pc resource. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly cloudPcResource?: boolean; - /** Boolean representing whether the applicationGroup is show in the feed. */ - showInFeed?: boolean; +/** Defines headers for SessionHostConfigurations_update operation. */ +export interface SessionHostConfigurationsUpdateHeaders { + /** The Location header contains the URL where the status of the long running operation can be checked. */ + location?: string; + /** The Retry-After header can indicate how long the client should wait before polling the operation status. */ + retryAfter?: number; } -/** Represents a HostPool definition. */ -export interface HostPool extends ResourceModelWithAllowedPropertySet { - /** - * 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. */ - hostPoolType: HostPoolType; - /** PersonalDesktopAssignment type for HostPool. */ - personalDesktopAssignmentType?: PersonalDesktopAssignmentType; - /** Custom rdp property of HostPool. */ - customRdpProperty?: string; - /** The max session limit of HostPool. */ - maxSessionLimit?: number; - /** The type of the load balancer. */ - 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[]; - /** - * List of App Attach Package links. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly appAttachPackageReferences?: 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. */ - ssoSecretType?: SSOSecretType; - /** The type of preferred application group type, default to Desktop Application Group */ - preferredAppGroupType: PreferredAppGroupType; - /** The flag to turn on/off StartVMOnConnect feature. */ - startVMOnConnect?: boolean; - /** - * 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 */ - publicNetworkAccess?: HostpoolPublicNetworkAccess; - /** The session host configuration for updating agent, monitoring agent, and stack component. */ - agentUpdate?: AgentUpdateProperties; - /** - * List of private endpoint connection associated with the specified resource - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly privateEndpointConnections?: PrivateEndpointConnection[]; +/** Defines headers for ControlSessionHostUpdate_post operation. */ +export interface ControlSessionHostUpdatePostHeaders { + /** The Location header contains the URL where the status of the long running operation can be checked. */ + location?: string; + /** The Retry-After header can indicate how long the client should wait before polling the operation status. */ + retryAfter?: number; +} + +/** Known values of {@link ProvisioningState} that the service accepts. */ +export enum KnownProvisioningState { + /** Provisioning Successful */ + Succeeded = "Succeeded", + /** Provisioning in Progress */ + Provisioning = "Provisioning", + /** Provisioning Failed */ + Failed = "Failed", + /** Provisioning was Canceled */ + Canceled = "Canceled", +} + +/** + * Defines values for ProvisioningState. \ + * {@link KnownProvisioningState} can be used interchangeably with ProvisioningState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Succeeded**: Provisioning Successful \ + * **Provisioning**: Provisioning in Progress \ + * **Failed**: Provisioning Failed \ + * **Canceled**: Provisioning was Canceled + */ +export type ProvisioningState = string; + +/** Known values of {@link PackageTimestamped} that the service accepts. */ +export enum KnownPackageTimestamped { + /** Package is timestamped */ + Timestamped = "Timestamped", + /** Package is not timestamped, use certificate expiry date */ + NotTimestamped = "NotTimestamped", +} + +/** + * Defines values for PackageTimestamped. \ + * {@link KnownPackageTimestamped} can be used interchangeably with PackageTimestamped, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Timestamped**: Package is timestamped \ + * **NotTimestamped**: Package is not timestamped, use certificate expiry date + */ +export type PackageTimestamped = string; + +/** Known values of {@link FailHealthCheckOnStagingFailure} that the service accepts. */ +export enum KnownFailHealthCheckOnStagingFailure { + /** Health Check will report unhealthy */ + Unhealthy = "Unhealthy", + /** Health Check will report NeedsAssistance */ + NeedsAssistance = "NeedsAssistance", + /** Health Check will not report failure */ + DoNotFail = "DoNotFail", +} + +/** + * Defines values for FailHealthCheckOnStagingFailure. \ + * {@link KnownFailHealthCheckOnStagingFailure} can be used interchangeably with FailHealthCheckOnStagingFailure, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Unhealthy**: Health Check will report unhealthy \ + * **NeedsAssistance**: Health Check will report NeedsAssistance \ + * **DoNotFail**: Health Check will not report failure + */ +export type FailHealthCheckOnStagingFailure = string; + +/** Known values of {@link CreatedByType} that the service accepts. */ +export enum KnownCreatedByType { + /** User */ + User = "User", + /** Application */ + Application = "Application", + /** ManagedIdentity */ + ManagedIdentity = "ManagedIdentity", + /** Key */ + Key = "Key", +} + +/** + * Defines values for CreatedByType. \ + * {@link KnownCreatedByType} can be used interchangeably with CreatedByType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **User** \ + * **Application** \ + * **ManagedIdentity** \ + * **Key** + */ +export type CreatedByType = string; + +/** Known values of {@link ApplicationGroupType} that the service accepts. */ +export enum KnownApplicationGroupType { + /** Application group is Remote and can launch individual applications without a Desktop. */ + RemoteApp = "RemoteApp", + /** Application Group delivers a full expected Desktop experience */ + Desktop = "Desktop", +} + +/** + * Defines values for ApplicationGroupType. \ + * {@link KnownApplicationGroupType} can be used interchangeably with ApplicationGroupType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **RemoteApp**: Application group is Remote and can launch individual applications without a Desktop. \ + * **Desktop**: Application Group delivers a full expected Desktop experience + */ +export type ApplicationGroupType = string; + +/** Known values of {@link ManagedServiceIdentityType} that the service accepts. */ +export enum KnownManagedServiceIdentityType { + /** None */ + None = "None", + /** SystemAssigned */ + SystemAssigned = "SystemAssigned", + /** UserAssigned */ + UserAssigned = "UserAssigned", + /** SystemAssignedUserAssigned */ + SystemAssignedUserAssigned = "SystemAssigned,UserAssigned", +} + +/** + * Defines values for ManagedServiceIdentityType. \ + * {@link KnownManagedServiceIdentityType} can be used interchangeably with ManagedServiceIdentityType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **None** \ + * **SystemAssigned** \ + * **UserAssigned** \ + * **SystemAssigned,UserAssigned** + */ +export type ManagedServiceIdentityType = string; + +/** Known values of {@link HostPoolType} that the service accepts. */ +export enum KnownHostPoolType { + /** Users will be assigned a SessionHost either by administrators (PersonalDesktopAssignmentType = Direct) or upon connecting to the pool (PersonalDesktopAssignmentType = Automatic). They will always be redirected to their assigned SessionHost. */ + Personal = "Personal", + /** Users get a new (random) SessionHost every time it connects to the HostPool. */ + Pooled = "Pooled", + /** Users assign their own machines, load balancing logic remains the same as Personal. PersonalDesktopAssignmentType must be Direct. */ + BYODesktop = "BYODesktop", +} + +/** + * Defines values for HostPoolType. \ + * {@link KnownHostPoolType} can be used interchangeably with HostPoolType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Personal**: Users will be assigned a SessionHost either by administrators (PersonalDesktopAssignmentType = Direct) or upon connecting to the pool (PersonalDesktopAssignmentType = Automatic). They will always be redirected to their assigned SessionHost. \ + * **Pooled**: Users get a new (random) SessionHost every time it connects to the HostPool. \ + * **BYODesktop**: Users assign their own machines, load balancing logic remains the same as Personal. PersonalDesktopAssignmentType must be Direct. + */ +export type HostPoolType = string; + +/** Known values of {@link PersonalDesktopAssignmentType} that the service accepts. */ +export enum KnownPersonalDesktopAssignmentType { + /** Automatically assigns an available personal desktop to the user. */ + Automatic = "Automatic", + /** Manually assigns a specific personal desktop to the user. */ + Direct = "Direct", +} + +/** + * Defines values for PersonalDesktopAssignmentType. \ + * {@link KnownPersonalDesktopAssignmentType} can be used interchangeably with PersonalDesktopAssignmentType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Automatic**: Automatically assigns an available personal desktop to the user. \ + * **Direct**: Manually assigns a specific personal desktop to the user. + */ +export type PersonalDesktopAssignmentType = string; + +/** Known values of {@link LoadBalancerType} that the service accepts. */ +export enum KnownLoadBalancerType { + /** Uses BreadthFirst algorithm for load balancing. */ + BreadthFirst = "BreadthFirst", + /** Uses DepthFirst algorithm for load balancing. */ + DepthFirst = "DepthFirst", + /** Maintains persistent connections. */ + Persistent = "Persistent", + /** Maintains multiple persistents connections. */ + MultiplePersistent = "MultiplePersistent", +} + +/** + * Defines values for LoadBalancerType. \ + * {@link KnownLoadBalancerType} can be used interchangeably with LoadBalancerType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **BreadthFirst**: Uses BreadthFirst algorithm for load balancing. \ + * **DepthFirst**: Uses DepthFirst algorithm for load balancing. \ + * **Persistent**: Maintains persistent connections. \ + * **MultiplePersistent**: Maintains multiple persistents connections. + */ +export type LoadBalancerType = string; + +/** Known values of {@link RegistrationTokenOperation} that the service accepts. */ +export enum KnownRegistrationTokenOperation { + /** Delete operation */ + Delete = "Delete", + /** No Operation */ + None = "None", + /** Update Operation */ + Update = "Update", +} + +/** + * Defines values for RegistrationTokenOperation. \ + * {@link KnownRegistrationTokenOperation} can be used interchangeably with RegistrationTokenOperation, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Delete**: Delete operation \ + * **None**: No Operation \ + * **Update**: Update Operation + */ +export type RegistrationTokenOperation = string; + +/** Known values of {@link SSOSecretType} that the service accepts. */ +export enum KnownSSOSecretType { + /** The SSO Secret is a Shared Key. */ + SharedKey = "SharedKey", + /** The SSO Secret is a Certificate. */ + Certificate = "Certificate", + /** The SSO Secret is a SharedKey that is stored in KeyVault. */ + SharedKeyInKeyVault = "SharedKeyInKeyVault", + /** The SSO Secret is a Certificate that is stored in KeyVault. */ + CertificateInKeyVault = "CertificateInKeyVault", } -/** Known values of {@link PublicNetworkAccess} that the service accepts. */ -export enum KnownPublicNetworkAccess { - /** Enabled */ +/** + * Defines values for SSOSecretType. \ + * {@link KnownSSOSecretType} can be used interchangeably with SSOSecretType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **SharedKey**: The SSO Secret is a Shared Key. \ + * **Certificate**: The SSO Secret is a Certificate. \ + * **SharedKeyInKeyVault**: The SSO Secret is a SharedKey that is stored in KeyVault. \ + * **CertificateInKeyVault**: The SSO Secret is a Certificate that is stored in KeyVault. + */ +export type SSOSecretType = string; + +/** Known values of {@link PreferredAppGroupType} that the service accepts. */ +export enum KnownPreferredAppGroupType { + /** Internal Use Only */ + None = "None", + /** Use Desktop Application Group */ + Desktop = "Desktop", + /** Use RailApplications (RemoteApp) */ + RailApplications = "RailApplications", +} + +/** + * Defines values for PreferredAppGroupType. \ + * {@link KnownPreferredAppGroupType} can be used interchangeably with PreferredAppGroupType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **None**: Internal Use Only \ + * **Desktop**: Use Desktop Application Group \ + * **RailApplications**: Use RailApplications (RemoteApp) + */ +export type PreferredAppGroupType = string; + +/** Known values of {@link HostpoolPublicNetworkAccess} that the service accepts. */ +export enum KnownHostpoolPublicNetworkAccess { + /** Allows this resource to be accessed from the public network */ Enabled = "Enabled", - /** Disabled */ + /** Prevents this resource from being accessed from the public network */ Disabled = "Disabled", + /** Allows SessionHosts to be accessed from the public network */ + EnabledForSessionHostsOnly = "EnabledForSessionHostsOnly", + /** Allows Clients to be accessed from the public network */ + EnabledForClientsOnly = "EnabledForClientsOnly", } /** - * Defines values for PublicNetworkAccess. \ - * {@link KnownPublicNetworkAccess} can be used interchangeably with PublicNetworkAccess, + * Defines values for HostpoolPublicNetworkAccess. \ + * {@link KnownHostpoolPublicNetworkAccess} can be used interchangeably with HostpoolPublicNetworkAccess, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **Enabled** \ - * **Disabled** + * **Enabled**: Allows this resource to be accessed from the public network \ + * **Disabled**: Prevents this resource from being accessed from the public network \ + * **EnabledForSessionHostsOnly**: Allows SessionHosts to be accessed from the public network \ + * **EnabledForClientsOnly**: Allows Clients to be accessed from the public network */ -export type PublicNetworkAccess = string; +export type HostpoolPublicNetworkAccess = string; + +/** Known values of {@link SessionHostComponentUpdateType} that the service accepts. */ +export enum KnownSessionHostComponentUpdateType { + /** Agent and other agent side components are delivery schedule is controlled by WVD Infra. */ + Default = "Default", + /** TenantAdmin have opted in for Scheduled Component Update feature. */ + Scheduled = "Scheduled", +} + +/** + * Defines values for SessionHostComponentUpdateType. \ + * {@link KnownSessionHostComponentUpdateType} can be used interchangeably with SessionHostComponentUpdateType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Default**: Agent and other agent side components are delivery schedule is controlled by WVD Infra. \ + * **Scheduled**: TenantAdmin have opted in for Scheduled Component Update feature. + */ +export type SessionHostComponentUpdateType = string; /** Known values of {@link PrivateEndpointServiceConnectionStatus} that the service accepts. */ export enum KnownPrivateEndpointServiceConnectionStatus { - /** Pending */ + /** Connection is Pending */ Pending = "Pending", - /** Approved */ + /** Connection was Approved */ Approved = "Approved", - /** Rejected */ + /** Connection was rejected */ Rejected = "Rejected", } @@ -1500,21 +2366,21 @@ export enum KnownPrivateEndpointServiceConnectionStatus { * {@link KnownPrivateEndpointServiceConnectionStatus} can be used interchangeably with PrivateEndpointServiceConnectionStatus, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **Pending** \ - * **Approved** \ - * **Rejected** + * **Pending**: Connection is Pending \ + * **Approved**: Connection was Approved \ + * **Rejected**: Connection was rejected */ export type PrivateEndpointServiceConnectionStatus = string; /** Known values of {@link PrivateEndpointConnectionProvisioningState} that the service accepts. */ export enum KnownPrivateEndpointConnectionProvisioningState { - /** Succeeded */ + /** Provisioning was successful */ Succeeded = "Succeeded", - /** Creating */ + /** A PrivateEndpointConnection is being created */ Creating = "Creating", - /** Deleting */ + /** A PrivateEndpointConnection is being deleted */ Deleting = "Deleting", - /** Failed */ + /** Provisioning failed */ Failed = "Failed", } @@ -1523,204 +2389,192 @@ export enum KnownPrivateEndpointConnectionProvisioningState { * {@link KnownPrivateEndpointConnectionProvisioningState} can be used interchangeably with PrivateEndpointConnectionProvisioningState, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **Succeeded** \ - * **Creating** \ - * **Deleting** \ - * **Failed** + * **Succeeded**: Provisioning was successful \ + * **Creating**: A PrivateEndpointConnection is being created \ + * **Deleting**: A PrivateEndpointConnection is being deleted \ + * **Failed**: Provisioning failed */ export type PrivateEndpointConnectionProvisioningState = string; -/** Known values of {@link CreatedByType} that the service accepts. */ -export enum KnownCreatedByType { - /** User */ - User = "User", - /** Application */ - Application = "Application", - /** ManagedIdentity */ - ManagedIdentity = "ManagedIdentity", - /** Key */ - Key = "Key", +/** Known values of {@link ManagedPrivateUDP} that the service accepts. */ +export enum KnownManagedPrivateUDP { + /** AVD-wide settings are used to determine connection availability */ + Default = "Default", + /** UDP will attempt this connection type when making connections. */ + Enabled = "Enabled", + /** UDP will not attempt this connection type when making connections */ + Disabled = "Disabled", } /** - * Defines values for CreatedByType. \ - * {@link KnownCreatedByType} can be used interchangeably with CreatedByType, + * Defines values for ManagedPrivateUDP. \ + * {@link KnownManagedPrivateUDP} can be used interchangeably with ManagedPrivateUDP, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **User** \ - * **Application** \ - * **ManagedIdentity** \ - * **Key** + * **Default**: AVD-wide settings are used to determine connection availability \ + * **Enabled**: UDP will attempt this connection type when making connections. \ + * **Disabled**: UDP will not attempt this connection type when making connections */ -export type CreatedByType = string; +export type ManagedPrivateUDP = string; -/** Known values of {@link ScalingHostPoolType} that the service accepts. */ -export enum KnownScalingHostPoolType { - /** Users get a new (random) SessionHost every time it connects to the HostPool. */ - Pooled = "Pooled", +/** Known values of {@link DirectUDP} that the service accepts. */ +export enum KnownDirectUDP { + /** AVD-wide settings are used to determine connection availability */ + Default = "Default", + /** UDP will attempt this connection type when making connections. */ + Enabled = "Enabled", + /** UDP will not attempt this connection type when making connections */ + Disabled = "Disabled", } /** - * Defines values for ScalingHostPoolType. \ - * {@link KnownScalingHostPoolType} can be used interchangeably with ScalingHostPoolType, + * Defines values for DirectUDP. \ + * {@link KnownDirectUDP} can be used interchangeably with DirectUDP, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **Pooled**: Users get a new (random) SessionHost every time it connects to the HostPool. + * **Default**: AVD-wide settings are used to determine connection availability \ + * **Enabled**: UDP will attempt this connection type when making connections. \ + * **Disabled**: UDP will not attempt this connection type when making connections */ -export type ScalingHostPoolType = string; +export type DirectUDP = string; -/** Known values of {@link ScalingScheduleDaysOfWeekItem} that the service accepts. */ -export enum KnownScalingScheduleDaysOfWeekItem { - /** Sunday */ - Sunday = "Sunday", - /** Monday */ - Monday = "Monday", - /** Tuesday */ - Tuesday = "Tuesday", - /** Wednesday */ - Wednesday = "Wednesday", - /** Thursday */ - Thursday = "Thursday", - /** Friday */ - Friday = "Friday", - /** Saturday */ - Saturday = "Saturday", +/** Known values of {@link PublicUDP} that the service accepts. */ +export enum KnownPublicUDP { + /** AVD-wide settings are used to determine connection availability */ + Default = "Default", + /** UDP will attempt this connection type when making connections. */ + Enabled = "Enabled", + /** UDP will not attempt this connection type when making connections */ + Disabled = "Disabled", } /** - * Defines values for ScalingScheduleDaysOfWeekItem. \ - * {@link KnownScalingScheduleDaysOfWeekItem} can be used interchangeably with ScalingScheduleDaysOfWeekItem, + * Defines values for PublicUDP. \ + * {@link KnownPublicUDP} can be used interchangeably with PublicUDP, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **Sunday** \ - * **Monday** \ - * **Tuesday** \ - * **Wednesday** \ - * **Thursday** \ - * **Friday** \ - * **Saturday** + * **Default**: AVD-wide settings are used to determine connection availability \ + * **Enabled**: UDP will attempt this connection type when making connections. \ + * **Disabled**: UDP will not attempt this connection type when making connections */ -export type ScalingScheduleDaysOfWeekItem = string; +export type PublicUDP = string; -/** Known values of {@link SessionHostLoadBalancingAlgorithm} that the service accepts. */ -export enum KnownSessionHostLoadBalancingAlgorithm { - /** BreadthFirst */ - BreadthFirst = "BreadthFirst", - /** DepthFirst */ - DepthFirst = "DepthFirst", +/** Known values of {@link RelayUDP} that the service accepts. */ +export enum KnownRelayUDP { + /** AVD-wide settings are used to determine connection availability */ + Default = "Default", + /** UDP will attempt this connection type when making connections. */ + Enabled = "Enabled", + /** UDP will not attempt this connection type when making connections */ + Disabled = "Disabled", } /** - * Defines values for SessionHostLoadBalancingAlgorithm. \ - * {@link KnownSessionHostLoadBalancingAlgorithm} can be used interchangeably with SessionHostLoadBalancingAlgorithm, + * Defines values for RelayUDP. \ + * {@link KnownRelayUDP} can be used interchangeably with RelayUDP, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **BreadthFirst** \ - * **DepthFirst** + * **Default**: AVD-wide settings are used to determine connection availability \ + * **Enabled**: UDP will attempt this connection type when making connections. \ + * **Disabled**: UDP will not attempt this connection type when making connections */ -export type SessionHostLoadBalancingAlgorithm = string; +export type RelayUDP = string; -/** Known values of {@link StopHostsWhen} that the service accepts. */ -export enum KnownStopHostsWhen { - /** ZeroSessions */ - ZeroSessions = "ZeroSessions", - /** ZeroActiveSessions */ - ZeroActiveSessions = "ZeroActiveSessions", +/** Known values of {@link ManagementType} that the service accepts. */ +export enum KnownManagementType { + /** Automated management of the hostpool */ + Automated = "Automated", + /** Standard management of the hostpool */ + Standard = "Standard", } /** - * Defines values for StopHostsWhen. \ - * {@link KnownStopHostsWhen} can be used interchangeably with StopHostsWhen, + * Defines values for ManagementType. \ + * {@link KnownManagementType} can be used interchangeably with ManagementType, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **ZeroSessions** \ - * **ZeroActiveSessions** + * **Automated**: Automated management of the hostpool \ + * **Standard**: Standard management of the hostpool */ -export type StopHostsWhen = string; +export type ManagementType = string; -/** Known values of {@link StartupBehavior} that the service accepts. */ -export enum KnownStartupBehavior { - /** Session hosts will not be started by the service. This setting depends on Start VM on Connect to be enabled to start the session hosts. */ - None = "None", - /** Session hosts with an assigned user will be started during Ramp Up */ - WithAssignedUser = "WithAssignedUser", - /** All personal session hosts in the hostpool will be started during ramp up. */ - All = "All", +/** Known values of {@link ScalingHostPoolType} that the service accepts. */ +export enum KnownScalingHostPoolType { + /** Users get a new (random) SessionHost every time it connects to the HostPool. */ + Pooled = "Pooled", + /** Users will be assigned a SessionHost either by administrators (PersonalDesktopAssignmentType = Direct) or upon connecting to the pool (PersonalDesktopAssignmentType = Automatic). They will always be redirected to their assigned SessionHost. */ + Personal = "Personal", } /** - * Defines values for StartupBehavior. \ - * {@link KnownStartupBehavior} can be used interchangeably with StartupBehavior, + * Defines values for ScalingHostPoolType. \ + * {@link KnownScalingHostPoolType} can be used interchangeably with ScalingHostPoolType, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **None**: Session hosts will not be started by the service. This setting depends on Start VM on Connect to be enabled to start the session hosts. \ - * **WithAssignedUser**: Session hosts with an assigned user will be started during Ramp Up \ - * **All**: All personal session hosts in the hostpool will be started during ramp up. + * **Pooled**: Users get a new (random) SessionHost every time it connects to the HostPool. \ + * **Personal**: Users will be assigned a SessionHost either by administrators (PersonalDesktopAssignmentType = Direct) or upon connecting to the pool (PersonalDesktopAssignmentType = Automatic). They will always be redirected to their assigned SessionHost. */ -export type StartupBehavior = string; +export type ScalingHostPoolType = string; -/** Known values of {@link SetStartVMOnConnect} that the service accepts. */ -export enum KnownSetStartVMOnConnect { - /** Enable */ - Enable = "Enable", - /** Disable */ - Disable = "Disable", +/** Known values of {@link SessionHostLoadBalancingAlgorithm} that the service accepts. */ +export enum KnownSessionHostLoadBalancingAlgorithm { + /** Breadth First Algorithm for Load Balancing */ + BreadthFirst = "BreadthFirst", + /** Depth First Algorithm for Load Balancing */ + DepthFirst = "DepthFirst", } /** - * Defines values for SetStartVMOnConnect. \ - * {@link KnownSetStartVMOnConnect} can be used interchangeably with SetStartVMOnConnect, + * Defines values for SessionHostLoadBalancingAlgorithm. \ + * {@link KnownSessionHostLoadBalancingAlgorithm} can be used interchangeably with SessionHostLoadBalancingAlgorithm, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **Enable** \ - * **Disable** + * **BreadthFirst**: Breadth First Algorithm for Load Balancing \ + * **DepthFirst**: Depth First Algorithm for Load Balancing */ -export type SetStartVMOnConnect = string; +export type SessionHostLoadBalancingAlgorithm = string; -/** Known values of {@link SessionHandlingOperation} that the service accepts. */ -export enum KnownSessionHandlingOperation { - /** None */ - None = "None", - /** Deallocate */ - Deallocate = "Deallocate", - /** Hibernate */ - Hibernate = "Hibernate", +/** Known values of {@link StopHostsWhen} that the service accepts. */ +export enum KnownStopHostsWhen { + /** Zero Total Sessions */ + ZeroSessions = "ZeroSessions", + /** Zero Active Sessions */ + ZeroActiveSessions = "ZeroActiveSessions", } /** - * Defines values for SessionHandlingOperation. \ - * {@link KnownSessionHandlingOperation} can be used interchangeably with SessionHandlingOperation, + * Defines values for StopHostsWhen. \ + * {@link KnownStopHostsWhen} can be used interchangeably with StopHostsWhen, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **None** \ - * **Deallocate** \ - * **Hibernate** + * **ZeroSessions**: Zero Total Sessions \ + * **ZeroActiveSessions**: Zero Active Sessions */ -export type SessionHandlingOperation = string; +export type StopHostsWhen = string; -/** Known values of {@link ApplicationGroupType} that the service accepts. */ -export enum KnownApplicationGroupType { - /** RemoteApp */ - RemoteApp = "RemoteApp", - /** Desktop */ - Desktop = "Desktop", +/** Known values of {@link PublicNetworkAccess} that the service accepts. */ +export enum KnownPublicNetworkAccess { + /** This resource is accessible from the public network. */ + Enabled = "Enabled", + /** This resource is not accessible from the public network. */ + Disabled = "Disabled", } /** - * Defines values for ApplicationGroupType. \ - * {@link KnownApplicationGroupType} can be used interchangeably with ApplicationGroupType, + * Defines values for PublicNetworkAccess. \ + * {@link KnownPublicNetworkAccess} can be used interchangeably with PublicNetworkAccess, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **RemoteApp** \ - * **Desktop** + * **Enabled**: This resource is accessible from the public network. \ + * **Disabled**: This resource is not accessible from the public network. */ -export type ApplicationGroupType = string; +export type PublicNetworkAccess = string; /** Known values of {@link RemoteApplicationType} that the service accepts. */ export enum KnownRemoteApplicationType { - /** InBuilt */ + /** Built-in applications */ InBuilt = "InBuilt", - /** MsixApplication */ + /** Imported MSIX application packages */ MsixApplication = "MsixApplication", } @@ -1729,18 +2583,18 @@ export enum KnownRemoteApplicationType { * {@link KnownRemoteApplicationType} can be used interchangeably with RemoteApplicationType, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **InBuilt** \ - * **MsixApplication** + * **InBuilt**: Built-in applications \ + * **MsixApplication**: Imported MSIX application packages */ export type RemoteApplicationType = string; /** Known values of {@link CommandLineSetting} that the service accepts. */ export enum KnownCommandLineSetting { - /** DoNotAllow */ + /** Cannot be launched with command line arguments. */ DoNotAllow = "DoNotAllow", - /** Allow */ + /** Can optionally be launched with command line arguments. */ Allow = "Allow", - /** Require */ + /** Required to be launched with command line arguments. */ Require = "Require", } @@ -1749,227 +2603,215 @@ export enum KnownCommandLineSetting { * {@link KnownCommandLineSetting} can be used interchangeably with CommandLineSetting, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **DoNotAllow** \ - * **Allow** \ - * **Require** + * **DoNotAllow**: Cannot be launched with command line arguments. \ + * **Allow**: Can optionally be launched with command line arguments. \ + * **Require**: Required to be launched with command line arguments. */ export type CommandLineSetting = string; -/** Known values of {@link HostPoolType} that the service accepts. */ -export enum KnownHostPoolType { - /** Users will be assigned a SessionHost either by administrators (PersonalDesktopAssignmentType = Direct) or upon connecting to the pool (PersonalDesktopAssignmentType = Automatic). They will always be redirected to their assigned SessionHost. */ - Personal = "Personal", - /** Users get a new (random) SessionHost every time it connects to the HostPool. */ - Pooled = "Pooled", - /** Users assign their own machines, load balancing logic remains the same as Personal. PersonalDesktopAssignmentType must be Direct. */ - BYODesktop = "BYODesktop", -} - -/** - * Defines values for HostPoolType. \ - * {@link KnownHostPoolType} can be used interchangeably with HostPoolType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Personal**: Users will be assigned a SessionHost either by administrators (PersonalDesktopAssignmentType = Direct) or upon connecting to the pool (PersonalDesktopAssignmentType = Automatic). They will always be redirected to their assigned SessionHost. \ - * **Pooled**: Users get a new (random) SessionHost every time it connects to the HostPool. \ - * **BYODesktop**: Users assign their own machines, load balancing logic remains the same as Personal. PersonalDesktopAssignmentType must be Direct. - */ -export type HostPoolType = string; - -/** Known values of {@link PersonalDesktopAssignmentType} that the service accepts. */ -export enum KnownPersonalDesktopAssignmentType { - /** Automatic */ - Automatic = "Automatic", - /** Direct */ - Direct = "Direct", -} - -/** - * Defines values for PersonalDesktopAssignmentType. \ - * {@link KnownPersonalDesktopAssignmentType} can be used interchangeably with PersonalDesktopAssignmentType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Automatic** \ - * **Direct** - */ -export type PersonalDesktopAssignmentType = string; - -/** Known values of {@link LoadBalancerType} that the service accepts. */ -export enum KnownLoadBalancerType { - /** BreadthFirst */ - BreadthFirst = "BreadthFirst", - /** DepthFirst */ - DepthFirst = "DepthFirst", - /** Persistent */ - Persistent = "Persistent", +/** Known values of {@link VirtualMachineDiskType} that the service accepts. */ +export enum KnownVirtualMachineDiskType { + /** Standard HDD locally redundant storage. Best for backup, non-critical, and infrequent access. */ + StandardLRS = "Standard_LRS", + /** Premium SSD locally redundant storage. Best for production and performance sensitive workloads. */ + PremiumLRS = "Premium_LRS", + /** Standard SSD locally redundant storage. Best for web servers, lightly used enterprise applications and dev\/test. */ + StandardSSDLRS = "StandardSSD_LRS", } /** - * Defines values for LoadBalancerType. \ - * {@link KnownLoadBalancerType} can be used interchangeably with LoadBalancerType, + * Defines values for VirtualMachineDiskType. \ + * {@link KnownVirtualMachineDiskType} can be used interchangeably with VirtualMachineDiskType, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **BreadthFirst** \ - * **DepthFirst** \ - * **Persistent** + * **Standard_LRS**: Standard HDD locally redundant storage. Best for backup, non-critical, and infrequent access. \ + * **Premium_LRS**: Premium SSD locally redundant storage. Best for production and performance sensitive workloads. \ + * **StandardSSD_LRS**: Standard SSD locally redundant storage. Best for web servers, lightly used enterprise applications and dev\/test. */ -export type LoadBalancerType = string; +export type VirtualMachineDiskType = string; -/** Known values of {@link RegistrationTokenOperation} that the service accepts. */ -export enum KnownRegistrationTokenOperation { - /** Delete */ - Delete = "Delete", - /** None */ - None = "None", - /** Update */ - Update = "Update", +/** Known values of {@link Type} that the service accepts. */ +export enum KnownType { + /** Using default marketplace images offered by Azure Marketplace. */ + Marketplace = "Marketplace", + /** Using a custom image. */ + Custom = "Custom", } /** - * Defines values for RegistrationTokenOperation. \ - * {@link KnownRegistrationTokenOperation} can be used interchangeably with RegistrationTokenOperation, + * Defines values for Type. \ + * {@link KnownType} can be used interchangeably with Type, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **Delete** \ - * **None** \ - * **Update** + * **Marketplace**: Using default marketplace images offered by Azure Marketplace. \ + * **Custom**: Using a custom image. */ -export type RegistrationTokenOperation = string; +export type Type = string; -/** Known values of {@link SSOSecretType} that the service accepts. */ -export enum KnownSSOSecretType { - /** SharedKey */ - SharedKey = "SharedKey", - /** Certificate */ - Certificate = "Certificate", - /** SharedKeyInKeyVault */ - SharedKeyInKeyVault = "SharedKeyInKeyVault", - /** CertificateInKeyVault */ - CertificateInKeyVault = "CertificateInKeyVault", +/** Known values of {@link DomainJoinType} that the service accepts. */ +export enum KnownDomainJoinType { + /** Using microsoft active directory. */ + ActiveDirectory = "ActiveDirectory", + /** Using microsoft azure active directory. */ + AzureActiveDirectory = "AzureActiveDirectory", } /** - * Defines values for SSOSecretType. \ - * {@link KnownSSOSecretType} can be used interchangeably with SSOSecretType, + * Defines values for DomainJoinType. \ + * {@link KnownDomainJoinType} can be used interchangeably with DomainJoinType, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **SharedKey** \ - * **Certificate** \ - * **SharedKeyInKeyVault** \ - * **CertificateInKeyVault** + * **ActiveDirectory**: Using microsoft active directory. \ + * **AzureActiveDirectory**: Using microsoft azure active directory. */ -export type SSOSecretType = string; +export type DomainJoinType = string; -/** Known values of {@link PreferredAppGroupType} that the service accepts. */ -export enum KnownPreferredAppGroupType { - /** None */ - None = "None", - /** Desktop */ - Desktop = "Desktop", - /** RailApplications */ - RailApplications = "RailApplications", +/** Known values of {@link VirtualMachineSecurityType} that the service accepts. */ +export enum KnownVirtualMachineSecurityType { + /** Standard security protocol. No additional parameters */ + Standard = "Standard", + /** TrustedLaunch allows for secure boot and vTpm */ + TrustedLaunch = "TrustedLaunch", + /** Confidential Virtual Machine security protocol */ + ConfidentialVM = "ConfidentialVM", } /** - * Defines values for PreferredAppGroupType. \ - * {@link KnownPreferredAppGroupType} can be used interchangeably with PreferredAppGroupType, + * Defines values for VirtualMachineSecurityType. \ + * {@link KnownVirtualMachineSecurityType} can be used interchangeably with VirtualMachineSecurityType, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **None** \ - * **Desktop** \ - * **RailApplications** + * **Standard**: Standard security protocol. No additional parameters \ + * **TrustedLaunch**: TrustedLaunch allows for secure boot and vTpm \ + * **ConfidentialVM**: Confidential Virtual Machine security protocol */ -export type PreferredAppGroupType = string; +export type VirtualMachineSecurityType = string; -/** Known values of {@link HostpoolPublicNetworkAccess} that the service accepts. */ -export enum KnownHostpoolPublicNetworkAccess { - /** Enabled */ - Enabled = "Enabled", - /** Disabled */ - Disabled = "Disabled", - /** EnabledForSessionHostsOnly */ - EnabledForSessionHostsOnly = "EnabledForSessionHostsOnly", - /** EnabledForClientsOnly */ - EnabledForClientsOnly = "EnabledForClientsOnly", +/** Known values of {@link AppAttachPackageArchitectures} that the service accepts. */ +export enum KnownAppAttachPackageArchitectures { + /** ARM 32-bit */ + ARM = "ARM", + /** ARM 64-bit */ + ARM64 = "ARM64", + /** 32-bit x86 */ + X86 = "x86", + /** 64-bit */ + X64 = "x64", + /** Any architecture can be used */ + Neutral = "Neutral", + /** X86 Compiled Hybrid Portable Executable for ARM64 */ + X86A64 = "x86a64", + /** Select all listed applications, no filters */ + ALL = "ALL", } /** - * Defines values for HostpoolPublicNetworkAccess. \ - * {@link KnownHostpoolPublicNetworkAccess} can be used interchangeably with HostpoolPublicNetworkAccess, + * Defines values for AppAttachPackageArchitectures. \ + * {@link KnownAppAttachPackageArchitectures} can be used interchangeably with AppAttachPackageArchitectures, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **Enabled** \ - * **Disabled** \ - * **EnabledForSessionHostsOnly** \ - * **EnabledForClientsOnly** + * **ARM**: ARM 32-bit \ + * **ARM64**: ARM 64-bit \ + * **x86**: 32-bit x86 \ + * **x64**: 64-bit \ + * **Neutral**: Any architecture can be used \ + * **x86a64**: X86 Compiled Hybrid Portable Executable for ARM64 \ + * **ALL**: Select all listed applications, no filters */ -export type HostpoolPublicNetworkAccess = string; +export type AppAttachPackageArchitectures = string; -/** Known values of {@link SessionHostComponentUpdateType} that the service accepts. */ -export enum KnownSessionHostComponentUpdateType { - /** Agent and other agent side components are delivery schedule is controlled by WVD Infra. */ - Default = "Default", - /** TenantAdmin have opted in for Scheduled Component Update feature. */ - Scheduled = "Scheduled", +/** Known values of {@link ProvisioningStateSHC} that the service accepts. */ +export enum KnownProvisioningStateSHC { + /** Provisioning Successful */ + Succeeded = "Succeeded", + /** Provisioning Failed */ + Failed = "Failed", + /** Provisioning was Canceled */ + Canceled = "Canceled", + /** Provisioning in Progress */ + Provisioning = "Provisioning", } /** - * Defines values for SessionHostComponentUpdateType. \ - * {@link KnownSessionHostComponentUpdateType} can be used interchangeably with SessionHostComponentUpdateType, + * Defines values for ProvisioningStateSHC. \ + * {@link KnownProvisioningStateSHC} can be used interchangeably with ProvisioningStateSHC, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **Default**: Agent and other agent side components are delivery schedule is controlled by WVD Infra. \ - * **Scheduled**: TenantAdmin have opted in for Scheduled Component Update feature. + * **Succeeded**: Provisioning Successful \ + * **Failed**: Provisioning Failed \ + * **Canceled**: Provisioning was Canceled \ + * **Provisioning**: Provisioning in Progress */ -export type SessionHostComponentUpdateType = string; - -/** Known values of {@link ApplicationType} that the service accepts. */ -export enum KnownApplicationType { - /** RemoteApp */ - RemoteApp = "RemoteApp", - /** Desktop */ - Desktop = "Desktop", +export type ProvisioningStateSHC = string; + +/** Known values of {@link HostPoolUpdateAction} that the service accepts. */ +export enum KnownHostPoolUpdateAction { + /** Start the hostpool update. */ + Start = "Start", + /** Pause the hostpool update. */ + Pause = "Pause", + /** Cancel the hostpool update. */ + Cancel = "Cancel", + /** Retry the hostpool update. */ + Retry = "Retry", + /** Resume the hostpool update */ + Resume = "Resume", } /** - * Defines values for ApplicationType. \ - * {@link KnownApplicationType} can be used interchangeably with ApplicationType, + * Defines values for HostPoolUpdateAction. \ + * {@link KnownHostPoolUpdateAction} can be used interchangeably with HostPoolUpdateAction, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **RemoteApp** \ - * **Desktop** + * **Start**: Start the hostpool update. \ + * **Pause**: Pause the hostpool update. \ + * **Cancel**: Cancel the hostpool update. \ + * **Retry**: Retry the hostpool update. \ + * **Resume**: Resume the hostpool update */ -export type ApplicationType = string; +export type HostPoolUpdateAction = string; -/** Known values of {@link SessionState} that the service accepts. */ -export enum KnownSessionState { - /** Unknown */ - Unknown = "Unknown", - /** Active */ - Active = "Active", - /** Disconnected */ - Disconnected = "Disconnected", - /** Pending */ - Pending = "Pending", - /** LogOff */ - LogOff = "LogOff", - /** UserProfileDiskMounted */ - UserProfileDiskMounted = "UserProfileDiskMounted", +/** Known values of {@link SessionHostManagementUpdateOperationStatus} that the service accepts. */ +export enum KnownSessionHostManagementUpdateOperationStatus { + /** The operation has an error. */ + Error = "Error", + /** The operation is scheduled. */ + Scheduled = "Scheduled", + /** The operation is currently updating Session Hosts. */ + UpdatingSessionHosts = "UpdatingSessionHosts", + /** The operation is validating the update. */ + ValidatingSessionHostUpdate = "ValidatingSessionHostUpdate", + /** The operation is paused. */ + Paused = "Paused", + /** The operation is pausing. */ + Pausing = "Pausing", + /** Canceling the operation. */ + Cancelling = "Cancelling", + /** The operation succeeded. */ + Succeeded = "Succeeded", + /** The operation failed. */ + Failed = "Failed", + /** The operation is canceled */ + Cancelled = "Cancelled", } /** - * Defines values for SessionState. \ - * {@link KnownSessionState} can be used interchangeably with SessionState, + * Defines values for SessionHostManagementUpdateOperationStatus. \ + * {@link KnownSessionHostManagementUpdateOperationStatus} can be used interchangeably with SessionHostManagementUpdateOperationStatus, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **Unknown** \ - * **Active** \ - * **Disconnected** \ - * **Pending** \ - * **LogOff** \ - * **UserProfileDiskMounted** + * **Error**: The operation has an error. \ + * **Scheduled**: The operation is scheduled. \ + * **UpdatingSessionHosts**: The operation is currently updating Session Hosts. \ + * **ValidatingSessionHostUpdate**: The operation is validating the update. \ + * **Paused**: The operation is paused. \ + * **Pausing**: The operation is pausing. \ + * **Cancelling**: Canceling the operation. \ + * **Succeeded**: The operation succeeded. \ + * **Failed**: The operation failed. \ + * **Cancelled**: The operation is canceled */ -export type SessionState = string; +export type SessionHostManagementUpdateOperationStatus = string; /** Known values of {@link Status} that the service accepts. */ export enum KnownStatus { @@ -2021,15 +2863,15 @@ export type Status = string; /** Known values of {@link UpdateState} that the service accepts. */ export enum KnownUpdateState { - /** Initial */ + /** Update is initializing */ Initial = "Initial", - /** Pending */ + /** Update is pending */ Pending = "Pending", - /** Started */ + /** Update has started */ Started = "Started", - /** Succeeded */ + /** Update has succeeded */ Succeeded = "Succeeded", - /** Failed */ + /** Update has failed */ Failed = "Failed", } @@ -2038,11 +2880,11 @@ export enum KnownUpdateState { * {@link KnownUpdateState} can be used interchangeably with UpdateState, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **Initial** \ - * **Pending** \ - * **Started** \ - * **Succeeded** \ - * **Failed** + * **Initial**: Update is initializing \ + * **Pending**: Update is pending \ + * **Started**: Update has started \ + * **Succeeded**: Update has succeeded \ + * **Failed**: Update has failed */ export type UpdateState = string; @@ -2068,7 +2910,7 @@ export enum KnownHealthCheckName { SupportedEncryptionCheck = "SupportedEncryptionCheck", /** Verifies the metadata service is accessible and return compute properties. (Currently Enabled) */ MetaDataServiceCheck = "MetaDataServiceCheck", - /** Verifies that the AppAttachService is healthy (there were no issues during package staging). The AppAttachService is used to enable the staging\/registration (and eventual deregistration\/destaging) of MSIX apps that have been set up by the tenant admin. This checks whether the component had any failures during package staging. Failures in staging will prevent some MSIX apps from working properly for the end user. If this check fails, it is non fatal and the machine still can service connections, main issue may be certain apps will not work for end-users. (Currently Enabled) */ + /** Verifies that the AppAttachService is healthy (there were no issues during package staging). The AppAttachService is used to enable the staging\/registration (and eventual de-registration\/destaging) of MSIX apps that have been set up by the tenant admin. This checks whether the component had any failures during package staging. Failures in staging will prevent some MSIX apps from working properly for the end user. If this check fails, it is non fatal and the machine still can service connections, main issue may be certain apps will not work for end-users. (Currently Enabled) */ AppAttachHealthCheck = "AppAttachHealthCheck", } @@ -2087,7 +2929,7 @@ export enum KnownHealthCheckName { * **WebRTCRedirectorCheck**: Verifies whether the WebRTCRedirector component is healthy. The WebRTCRedirector component is used to optimize video and audio performance in Microsoft Teams. This checks whether the component is still running, and whether there is a higher version available. If this check fails, it is non fatal and the machine still can service connections, main issue may be the WebRTCRedirector component has to be restarted or updated. (Currently Disabled) \ * **SupportedEncryptionCheck**: Verifies the value of SecurityLayer registration key. If the value is 0 (SecurityLayer.RDP) this check fails with Error code = NativeMethodErrorCode.E_FAIL and is fatal. If the value is 1 (SecurityLayer.Negotiate) this check fails with Error code = NativeMethodErrorCode.ERROR_SUCCESS and is non fatal. (Currently Disabled) \ * **MetaDataServiceCheck**: Verifies the metadata service is accessible and return compute properties. (Currently Enabled) \ - * **AppAttachHealthCheck**: Verifies that the AppAttachService is healthy (there were no issues during package staging). The AppAttachService is used to enable the staging\/registration (and eventual deregistration\/destaging) of MSIX apps that have been set up by the tenant admin. This checks whether the component had any failures during package staging. Failures in staging will prevent some MSIX apps from working properly for the end user. If this check fails, it is non fatal and the machine still can service connections, main issue may be certain apps will not work for end-users. (Currently Enabled) + * **AppAttachHealthCheck**: Verifies that the AppAttachService is healthy (there were no issues during package staging). The AppAttachService is used to enable the staging\/registration (and eventual de-registration\/destaging) of MSIX apps that have been set up by the tenant admin. This checks whether the component had any failures during package staging. Failures in staging will prevent some MSIX apps from working properly for the end user. If this check fails, it is non fatal and the machine still can service connections, main issue may be certain apps will not work for end-users. (Currently Enabled) */ export type HealthCheckName = string; @@ -2115,101 +2957,113 @@ export enum KnownHealthCheckResult { */ export type HealthCheckResult = string; -/** Known values of {@link AppAttachPackageArchitectures} that the service accepts. */ -export enum KnownAppAttachPackageArchitectures { - /** ARM */ - ARM = "ARM", - /** ARM64 */ - ARM64 = "ARM64", - /** X86 */ - X86 = "x86", - /** X64 */ - X64 = "x64", - /** Neutral */ - Neutral = "Neutral", - /** X86A64 */ - X86A64 = "x86a64", - /** ALL */ - ALL = "ALL", +/** Known values of {@link ApplicationType} that the service accepts. */ +export enum KnownApplicationType { + /** Remote Applications (non-desktop) */ + RemoteApp = "RemoteApp", + /** Desktop Applications */ + Desktop = "Desktop", } /** - * Defines values for AppAttachPackageArchitectures. \ - * {@link KnownAppAttachPackageArchitectures} can be used interchangeably with AppAttachPackageArchitectures, + * Defines values for ApplicationType. \ + * {@link KnownApplicationType} can be used interchangeably with ApplicationType, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **ARM** \ - * **ARM64** \ - * **x86** \ - * **x64** \ - * **Neutral** \ - * **x86a64** \ - * **ALL** + * **RemoteApp**: Remote Applications (non-desktop) \ + * **Desktop**: Desktop Applications */ -export type AppAttachPackageArchitectures = string; +export type ApplicationType = string; -/** Known values of {@link ProvisioningState} that the service accepts. */ -export enum KnownProvisioningState { - /** Succeeded */ - Succeeded = "Succeeded", - /** Provisioning */ - Provisioning = "Provisioning", - /** Failed */ - Failed = "Failed", - /** Canceled */ - Canceled = "Canceled", +/** Known values of {@link SessionState} that the service accepts. */ +export enum KnownSessionState { + /** SessionState is unknown */ + Unknown = "Unknown", + /** Session is active */ + Active = "Active", + /** Session is disconnected */ + Disconnected = "Disconnected", + /** Session is pending connection */ + Pending = "Pending", + /** Session is logging off */ + LogOff = "LogOff", + /** Session has mounted user profile disk */ + UserProfileDiskMounted = "UserProfileDiskMounted", } /** - * Defines values for ProvisioningState. \ - * {@link KnownProvisioningState} can be used interchangeably with ProvisioningState, + * Defines values for SessionState. \ + * {@link KnownSessionState} can be used interchangeably with SessionState, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **Succeeded** \ - * **Provisioning** \ - * **Failed** \ - * **Canceled** + * **Unknown**: SessionState is unknown \ + * **Active**: Session is active \ + * **Disconnected**: Session is disconnected \ + * **Pending**: Session is pending connection \ + * **LogOff**: Session is logging off \ + * **UserProfileDiskMounted**: Session has mounted user profile disk */ -export type ProvisioningState = string; +export type SessionState = string; -/** Known values of {@link PackageTimestamped} that the service accepts. */ -export enum KnownPackageTimestamped { - /** Timestamped */ - Timestamped = "Timestamped", - /** NotTimestamped */ - NotTimestamped = "NotTimestamped", +/** Known values of {@link StartupBehavior} that the service accepts. */ +export enum KnownStartupBehavior { + /** Session hosts will not be started by the service. This setting depends on Start VM on Connect to be enabled to start the session hosts. */ + None = "None", + /** Session hosts with an assigned user will be started during Ramp Up */ + WithAssignedUser = "WithAssignedUser", + /** All personal session hosts in the hostpool will be started during ramp up. */ + All = "All", } /** - * Defines values for PackageTimestamped. \ - * {@link KnownPackageTimestamped} can be used interchangeably with PackageTimestamped, + * Defines values for StartupBehavior. \ + * {@link KnownStartupBehavior} can be used interchangeably with StartupBehavior, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **Timestamped** \ - * **NotTimestamped** + * **None**: Session hosts will not be started by the service. This setting depends on Start VM on Connect to be enabled to start the session hosts. \ + * **WithAssignedUser**: Session hosts with an assigned user will be started during Ramp Up \ + * **All**: All personal session hosts in the hostpool will be started during ramp up. */ -export type PackageTimestamped = string; +export type StartupBehavior = string; -/** Known values of {@link FailHealthCheckOnStagingFailure} that the service accepts. */ -export enum KnownFailHealthCheckOnStagingFailure { - /** Unhealthy */ - Unhealthy = "Unhealthy", - /** NeedsAssistance */ - NeedsAssistance = "NeedsAssistance", - /** DoNotFail */ - DoNotFail = "DoNotFail", +/** Known values of {@link SetStartVMOnConnect} that the service accepts. */ +export enum KnownSetStartVMOnConnect { + /** Start VM on Connect is enabled */ + Enable = "Enable", + /** Start VM on Connect is disabled, must use rampUpAutoStartHosts or turn on manually */ + Disable = "Disable", } /** - * Defines values for FailHealthCheckOnStagingFailure. \ - * {@link KnownFailHealthCheckOnStagingFailure} can be used interchangeably with FailHealthCheckOnStagingFailure, + * Defines values for SetStartVMOnConnect. \ + * {@link KnownSetStartVMOnConnect} can be used interchangeably with SetStartVMOnConnect, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **Unhealthy** \ - * **NeedsAssistance** \ - * **DoNotFail** + * **Enable**: Start VM on Connect is enabled \ + * **Disable**: Start VM on Connect is disabled, must use rampUpAutoStartHosts or turn on manually */ -export type FailHealthCheckOnStagingFailure = string; +export type SetStartVMOnConnect = string; + +/** Known values of {@link SessionHandlingOperation} that the service accepts. */ +export enum KnownSessionHandlingOperation { + /** No action will be taken after disconnect */ + None = "None", + /** Session Host will be deallocated after disconnect */ + Deallocate = "Deallocate", + /** Session Host will hibernate after disconnect */ + Hibernate = "Hibernate", +} + +/** + * Defines values for SessionHandlingOperation. \ + * {@link KnownSessionHandlingOperation} can be used interchangeably with SessionHandlingOperation, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **None**: No action will be taken after disconnect \ + * **Deallocate**: Session Host will be deallocated after disconnect \ + * **Hibernate**: Session Host will hibernate after disconnect + */ +export type SessionHandlingOperation = string; /** Defines values for SkuTier. */ export type SkuTier = "Free" | "Basic" | "Standard" | "Premium"; /** Defines values for DayOfWeek. */ @@ -2224,48 +3078,171 @@ export type DayOfWeek = /** Optional parameters. */ export interface OperationsListOptionalParams - extends coreClient.OperationOptions { } + extends coreClient.OperationOptions {} /** Contains response data for the list operation. */ -export type OperationsListResponse = ResourceProviderOperationList; +export type OperationsListResponse = ResourceProviderOperationListResult; /** Optional parameters. */ export interface OperationsListNextOptionalParams - extends coreClient.OperationOptions { } + extends coreClient.OperationOptions {} /** Contains response data for the listNext operation. */ -export type OperationsListNextResponse = ResourceProviderOperationList; +export type OperationsListNextResponse = ResourceProviderOperationListResult; /** Optional parameters. */ -export interface WorkspacesGetOptionalParams - extends coreClient.OperationOptions { } +export interface AppAttachPackageListBySubscriptionOptionalParams + extends coreClient.OperationOptions { + /** OData filter expression. Valid properties for filtering are package name, host pool, and resource group. */ + filter?: string; +} + +/** Contains response data for the listBySubscription operation. */ +export type AppAttachPackageListBySubscriptionResponse = AppAttachPackageList; + +/** Optional parameters. */ +export interface AppAttachPackageListByResourceGroupOptionalParams + extends coreClient.OperationOptions { + /** OData filter expression. Valid properties for filtering are package name and host pool. */ + filter?: string; +} + +/** Contains response data for the listByResourceGroup operation. */ +export type AppAttachPackageListByResourceGroupResponse = AppAttachPackageList; + +/** Optional parameters. */ +export interface AppAttachPackageGetOptionalParams + extends coreClient.OperationOptions {} /** Contains response data for the get operation. */ -export type WorkspacesGetResponse = Workspace; +export type AppAttachPackageGetResponse = AppAttachPackage; /** Optional parameters. */ -export interface WorkspacesCreateOrUpdateOptionalParams - extends coreClient.OperationOptions { } +export interface AppAttachPackageCreateOrUpdateOptionalParams + extends coreClient.OperationOptions {} /** Contains response data for the createOrUpdate operation. */ -export type WorkspacesCreateOrUpdateResponse = Workspace; +export type AppAttachPackageCreateOrUpdateResponse = AppAttachPackage; /** Optional parameters. */ -export interface WorkspacesDeleteOptionalParams - extends coreClient.OperationOptions { } +export interface AppAttachPackageUpdateOptionalParams + extends coreClient.OperationOptions { + /** The resource properties to be updated */ + appAttachPackagePatch?: AppAttachPackagePatch; +} + +/** Contains response data for the update operation. */ +export type AppAttachPackageUpdateResponse = AppAttachPackage; + +/** Optional parameters. */ +export interface AppAttachPackageDeleteOptionalParams + extends coreClient.OperationOptions { + /** Allows force delete */ + force?: boolean; +} + +/** Optional parameters. */ +export interface AppAttachPackageListBySubscriptionNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listBySubscriptionNext operation. */ +export type AppAttachPackageListBySubscriptionNextResponse = + AppAttachPackageList; + +/** Optional parameters. */ +export interface AppAttachPackageListByResourceGroupNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByResourceGroupNext operation. */ +export type AppAttachPackageListByResourceGroupNextResponse = + AppAttachPackageList; + +/** Optional parameters. */ +export interface ApplicationGroupsListBySubscriptionOptionalParams + extends coreClient.OperationOptions { + /** OData filter expression. Valid properties for filtering are applicationGroupType. */ + filter?: string; +} + +/** Contains response data for the listBySubscription operation. */ +export type ApplicationGroupsListBySubscriptionResponse = ApplicationGroupList; + +/** Optional parameters. */ +export interface ApplicationGroupsListByResourceGroupOptionalParams + extends coreClient.OperationOptions { + /** OData filter expression. Valid properties for filtering are applicationGroupType. */ + filter?: string; + /** Number of items per page. */ + pageSize?: number; + /** Indicates whether the collection is descending. */ + isDescending?: boolean; + /** Initial number of items to skip. */ + initialSkip?: number; +} + +/** Contains response data for the listByResourceGroup operation. */ +export type ApplicationGroupsListByResourceGroupResponse = ApplicationGroupList; + +/** Optional parameters. */ +export interface ApplicationGroupsGetOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the get operation. */ +export type ApplicationGroupsGetResponse = ApplicationGroup; + +/** Optional parameters. */ +export interface ApplicationGroupsCreateOrUpdateOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the createOrUpdate operation. */ +export type ApplicationGroupsCreateOrUpdateResponse = ApplicationGroup; + +/** Optional parameters. */ +export interface ApplicationGroupsUpdateOptionalParams + extends coreClient.OperationOptions { + /** The AppGroup properties to be updated */ + applicationGroup?: ApplicationGroupPatch; +} + +/** Contains response data for the update operation. */ +export type ApplicationGroupsUpdateResponse = ApplicationGroup; + +/** Optional parameters. */ +export interface ApplicationGroupsDeleteOptionalParams + extends coreClient.OperationOptions {} + +/** Optional parameters. */ +export interface ApplicationGroupsListBySubscriptionNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listBySubscriptionNext operation. */ +export type ApplicationGroupsListBySubscriptionNextResponse = + ApplicationGroupList; + +/** Optional parameters. */ +export interface ApplicationGroupsListByResourceGroupNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByResourceGroupNext operation. */ +export type ApplicationGroupsListByResourceGroupNextResponse = + ApplicationGroupList; /** Optional parameters. */ -export interface WorkspacesUpdateOptionalParams +export interface HostPoolsListOptionalParams extends coreClient.OperationOptions { - /** Object containing Workspace definitions. */ - workspace?: WorkspacePatch; + /** Number of items per page. */ + pageSize?: number; + /** Indicates whether the collection is descending. */ + isDescending?: boolean; + /** Initial number of items to skip. */ + initialSkip?: number; } -/** Contains response data for the update operation. */ -export type WorkspacesUpdateResponse = Workspace; +/** Contains response data for the list operation. */ +export type HostPoolsListResponse = HostPoolList; /** Optional parameters. */ -export interface WorkspacesListByResourceGroupOptionalParams +export interface HostPoolsListByResourceGroupOptionalParams extends coreClient.OperationOptions { /** Number of items per page. */ pageSize?: number; @@ -2276,59 +3253,69 @@ export interface WorkspacesListByResourceGroupOptionalParams } /** Contains response data for the listByResourceGroup operation. */ -export type WorkspacesListByResourceGroupResponse = WorkspaceList; +export type HostPoolsListByResourceGroupResponse = HostPoolList; /** Optional parameters. */ -export interface WorkspacesListBySubscriptionOptionalParams - extends coreClient.OperationOptions { } +export interface HostPoolsGetOptionalParams + extends coreClient.OperationOptions {} -/** Contains response data for the listBySubscription operation. */ -export type WorkspacesListBySubscriptionResponse = WorkspaceList; +/** Contains response data for the get operation. */ +export type HostPoolsGetResponse = HostPool; /** Optional parameters. */ -export interface WorkspacesListByResourceGroupNextOptionalParams - extends coreClient.OperationOptions { } +export interface HostPoolsCreateOrUpdateOptionalParams + extends coreClient.OperationOptions {} -/** Contains response data for the listByResourceGroupNext operation. */ -export type WorkspacesListByResourceGroupNextResponse = WorkspaceList; +/** Contains response data for the createOrUpdate operation. */ +export type HostPoolsCreateOrUpdateResponse = HostPool; /** Optional parameters. */ -export interface WorkspacesListBySubscriptionNextOptionalParams - extends coreClient.OperationOptions { } +export interface HostPoolsUpdateOptionalParams + extends coreClient.OperationOptions { + /** The properties to be updated. */ + hostPool?: HostPoolPatch; +} -/** Contains response data for the listBySubscriptionNext operation. */ -export type WorkspacesListBySubscriptionNextResponse = WorkspaceList; +/** Contains response data for the update operation. */ +export type HostPoolsUpdateResponse = HostPool; /** Optional parameters. */ -export interface PrivateEndpointConnectionsListByWorkspaceOptionalParams - extends coreClient.OperationOptions { } +export interface HostPoolsDeleteOptionalParams + extends coreClient.OperationOptions { + /** Force flag to delete sessionHost. */ + force?: boolean; +} -/** Contains response data for the listByWorkspace operation. */ -export type PrivateEndpointConnectionsListByWorkspaceResponse = - PrivateEndpointConnectionListResultWithSystemData; +/** Optional parameters. */ +export interface HostPoolsListRegistrationTokensOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listRegistrationTokens operation. */ +export type HostPoolsListRegistrationTokensResponse = RegistrationTokenList; /** Optional parameters. */ -export interface PrivateEndpointConnectionsGetByWorkspaceOptionalParams - extends coreClient.OperationOptions { } +export interface HostPoolsRetrieveRegistrationTokenOptionalParams + extends coreClient.OperationOptions {} -/** Contains response data for the getByWorkspace operation. */ -export type PrivateEndpointConnectionsGetByWorkspaceResponse = - PrivateEndpointConnectionWithSystemData; +/** Contains response data for the retrieveRegistrationToken operation. */ +export type HostPoolsRetrieveRegistrationTokenResponse = RegistrationInfo; /** Optional parameters. */ -export interface PrivateEndpointConnectionsDeleteByWorkspaceOptionalParams - extends coreClient.OperationOptions { } +export interface HostPoolsListNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listNext operation. */ +export type HostPoolsListNextResponse = HostPoolList; /** Optional parameters. */ -export interface PrivateEndpointConnectionsUpdateByWorkspaceOptionalParams - extends coreClient.OperationOptions { } +export interface HostPoolsListByResourceGroupNextOptionalParams + extends coreClient.OperationOptions {} -/** Contains response data for the updateByWorkspace operation. */ -export type PrivateEndpointConnectionsUpdateByWorkspaceResponse = - PrivateEndpointConnectionWithSystemData; +/** Contains response data for the listByResourceGroupNext operation. */ +export type HostPoolsListByResourceGroupNextResponse = HostPoolList; /** Optional parameters. */ -export interface PrivateEndpointConnectionsListByHostPoolOptionalParams +export interface ScalingPlansListBySubscriptionOptionalParams extends coreClient.OperationOptions { /** Number of items per page. */ pageSize?: number; @@ -2338,48 +3325,11 @@ export interface PrivateEndpointConnectionsListByHostPoolOptionalParams initialSkip?: number; } -/** Contains response data for the listByHostPool operation. */ -export type PrivateEndpointConnectionsListByHostPoolResponse = - PrivateEndpointConnectionListResultWithSystemData; - -/** Optional parameters. */ -export interface PrivateEndpointConnectionsGetByHostPoolOptionalParams - extends coreClient.OperationOptions { } - -/** Contains response data for the getByHostPool operation. */ -export type PrivateEndpointConnectionsGetByHostPoolResponse = - PrivateEndpointConnectionWithSystemData; - -/** Optional parameters. */ -export interface PrivateEndpointConnectionsDeleteByHostPoolOptionalParams - extends coreClient.OperationOptions { } - -/** Optional parameters. */ -export interface PrivateEndpointConnectionsUpdateByHostPoolOptionalParams - extends coreClient.OperationOptions { } - -/** Contains response data for the updateByHostPool operation. */ -export type PrivateEndpointConnectionsUpdateByHostPoolResponse = - PrivateEndpointConnectionWithSystemData; - -/** Optional parameters. */ -export interface PrivateEndpointConnectionsListByWorkspaceNextOptionalParams - extends coreClient.OperationOptions { } - -/** Contains response data for the listByWorkspaceNext operation. */ -export type PrivateEndpointConnectionsListByWorkspaceNextResponse = - PrivateEndpointConnectionListResultWithSystemData; - -/** Optional parameters. */ -export interface PrivateEndpointConnectionsListByHostPoolNextOptionalParams - extends coreClient.OperationOptions { } - -/** Contains response data for the listByHostPoolNext operation. */ -export type PrivateEndpointConnectionsListByHostPoolNextResponse = - PrivateEndpointConnectionListResultWithSystemData; +/** Contains response data for the listBySubscription operation. */ +export type ScalingPlansListBySubscriptionResponse = ScalingPlanList; /** Optional parameters. */ -export interface PrivateLinkResourcesListByWorkspaceOptionalParams +export interface ScalingPlansListByHostPoolOptionalParams extends coreClient.OperationOptions { /** Number of items per page. */ pageSize?: number; @@ -2389,12 +3339,11 @@ export interface PrivateLinkResourcesListByWorkspaceOptionalParams initialSkip?: number; } -/** Contains response data for the listByWorkspace operation. */ -export type PrivateLinkResourcesListByWorkspaceResponse = - PrivateLinkResourceListResult; +/** Contains response data for the listByHostPool operation. */ +export type ScalingPlansListByHostPoolResponse = ScalingPlanList; /** Optional parameters. */ -export interface PrivateLinkResourcesListByHostPoolOptionalParams +export interface ScalingPlansListByResourceGroupOptionalParams extends coreClient.OperationOptions { /** Number of items per page. */ pageSize?: number; @@ -2404,48 +3353,27 @@ export interface PrivateLinkResourcesListByHostPoolOptionalParams initialSkip?: number; } -/** Contains response data for the listByHostPool operation. */ -export type PrivateLinkResourcesListByHostPoolResponse = - PrivateLinkResourceListResult; - -/** Optional parameters. */ -export interface PrivateLinkResourcesListByWorkspaceNextOptionalParams - extends coreClient.OperationOptions { } - -/** Contains response data for the listByWorkspaceNext operation. */ -export type PrivateLinkResourcesListByWorkspaceNextResponse = - PrivateLinkResourceListResult; - -/** Optional parameters. */ -export interface PrivateLinkResourcesListByHostPoolNextOptionalParams - extends coreClient.OperationOptions { } - -/** Contains response data for the listByHostPoolNext operation. */ -export type PrivateLinkResourcesListByHostPoolNextResponse = - PrivateLinkResourceListResult; +/** Contains response data for the listByResourceGroup operation. */ +export type ScalingPlansListByResourceGroupResponse = ScalingPlanList; /** Optional parameters. */ export interface ScalingPlansGetOptionalParams - extends coreClient.OperationOptions { } + extends coreClient.OperationOptions {} /** Contains response data for the get operation. */ export type ScalingPlansGetResponse = ScalingPlan; /** Optional parameters. */ export interface ScalingPlansCreateOptionalParams - extends coreClient.OperationOptions { } + extends coreClient.OperationOptions {} /** Contains response data for the create operation. */ export type ScalingPlansCreateResponse = ScalingPlan; -/** Optional parameters. */ -export interface ScalingPlansDeleteOptionalParams - extends coreClient.OperationOptions { } - /** Optional parameters. */ export interface ScalingPlansUpdateOptionalParams extends coreClient.OperationOptions { - /** Object containing scaling plan definitions. */ + /** The resource properties to be updated */ scalingPlan?: ScalingPlanPatch; } @@ -2453,7 +3381,39 @@ export interface ScalingPlansUpdateOptionalParams export type ScalingPlansUpdateResponse = ScalingPlan; /** Optional parameters. */ -export interface ScalingPlansListByResourceGroupOptionalParams +export interface ScalingPlansDeleteOptionalParams + extends coreClient.OperationOptions {} + +/** Optional parameters. */ +export interface ScalingPlansListBySubscriptionNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listBySubscriptionNext operation. */ +export type ScalingPlansListBySubscriptionNextResponse = ScalingPlanList; + +/** Optional parameters. */ +export interface ScalingPlansListByHostPoolNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByHostPoolNext operation. */ +export type ScalingPlansListByHostPoolNextResponse = ScalingPlanList; + +/** Optional parameters. */ +export interface ScalingPlansListByResourceGroupNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByResourceGroupNext operation. */ +export type ScalingPlansListByResourceGroupNextResponse = ScalingPlanList; + +/** Optional parameters. */ +export interface WorkspacesListBySubscriptionOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listBySubscription operation. */ +export type WorkspacesListBySubscriptionResponse = WorkspaceList; + +/** Optional parameters. */ +export interface WorkspacesListByResourceGroupOptionalParams extends coreClient.OperationOptions { /** Number of items per page. */ pageSize?: number; @@ -2464,24 +3424,52 @@ export interface ScalingPlansListByResourceGroupOptionalParams } /** Contains response data for the listByResourceGroup operation. */ -export type ScalingPlansListByResourceGroupResponse = ScalingPlanList; +export type WorkspacesListByResourceGroupResponse = WorkspaceList; /** Optional parameters. */ -export interface ScalingPlansListBySubscriptionOptionalParams +export interface WorkspacesGetOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the get operation. */ +export type WorkspacesGetResponse = Workspace; + +/** Optional parameters. */ +export interface WorkspacesCreateOrUpdateOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the createOrUpdate operation. */ +export type WorkspacesCreateOrUpdateResponse = Workspace; + +/** Optional parameters. */ +export interface WorkspacesUpdateOptionalParams extends coreClient.OperationOptions { - /** Number of items per page. */ - pageSize?: number; - /** Indicates whether the collection is descending. */ - isDescending?: boolean; - /** Initial number of items to skip. */ - initialSkip?: number; + /** The resource properties to be updated */ + workspace?: WorkspacePatch; } -/** Contains response data for the listBySubscription operation. */ -export type ScalingPlansListBySubscriptionResponse = ScalingPlanList; +/** Contains response data for the update operation. */ +export type WorkspacesUpdateResponse = Workspace; /** Optional parameters. */ -export interface ScalingPlansListByHostPoolOptionalParams +export interface WorkspacesDeleteOptionalParams + extends coreClient.OperationOptions {} + +/** Optional parameters. */ +export interface WorkspacesListBySubscriptionNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listBySubscriptionNext operation. */ +export type WorkspacesListBySubscriptionNextResponse = WorkspaceList; + +/** Optional parameters. */ +export interface WorkspacesListByResourceGroupNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByResourceGroupNext operation. */ +export type WorkspacesListByResourceGroupNextResponse = WorkspaceList; + +/** Optional parameters. */ +export interface ApplicationsListOptionalParams extends coreClient.OperationOptions { /** Number of items per page. */ pageSize?: number; @@ -2491,62 +3479,84 @@ export interface ScalingPlansListByHostPoolOptionalParams initialSkip?: number; } -/** Contains response data for the listByHostPool operation. */ -export type ScalingPlansListByHostPoolResponse = ScalingPlanList; +/** Contains response data for the list operation. */ +export type ApplicationsListResponse = ApplicationList; /** Optional parameters. */ -export interface ScalingPlansListByResourceGroupNextOptionalParams - extends coreClient.OperationOptions { } +export interface ApplicationsGetOptionalParams + extends coreClient.OperationOptions {} -/** Contains response data for the listByResourceGroupNext operation. */ -export type ScalingPlansListByResourceGroupNextResponse = ScalingPlanList; +/** Contains response data for the get operation. */ +export type ApplicationsGetResponse = Application; /** Optional parameters. */ -export interface ScalingPlansListBySubscriptionNextOptionalParams - extends coreClient.OperationOptions { } +export interface ApplicationsCreateOrUpdateOptionalParams + extends coreClient.OperationOptions {} -/** Contains response data for the listBySubscriptionNext operation. */ -export type ScalingPlansListBySubscriptionNextResponse = ScalingPlanList; +/** Contains response data for the createOrUpdate operation. */ +export type ApplicationsCreateOrUpdateResponse = Application; /** Optional parameters. */ -export interface ScalingPlansListByHostPoolNextOptionalParams - extends coreClient.OperationOptions { } +export interface ApplicationsUpdateOptionalParams + extends coreClient.OperationOptions { + /** The resource properties to be updated */ + application?: ApplicationPatch; +} -/** Contains response data for the listByHostPoolNext operation. */ -export type ScalingPlansListByHostPoolNextResponse = ScalingPlanList; +/** Contains response data for the update operation. */ +export type ApplicationsUpdateResponse = Application; /** Optional parameters. */ -export interface ScalingPlanPooledSchedulesGetOptionalParams - extends coreClient.OperationOptions { } +export interface ApplicationsDeleteOptionalParams + extends coreClient.OperationOptions {} + +/** Optional parameters. */ +export interface ApplicationsListNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listNext operation. */ +export type ApplicationsListNextResponse = ApplicationList; + +/** Optional parameters. */ +export interface DesktopsListOptionalParams + extends coreClient.OperationOptions { + /** Number of items per page. */ + pageSize?: number; + /** Indicates whether the collection is descending. */ + isDescending?: boolean; + /** Initial number of items to skip. */ + initialSkip?: number; +} -/** Contains response data for the get operation. */ -export type ScalingPlanPooledSchedulesGetResponse = ScalingPlanPooledSchedule; +/** Contains response data for the list operation. */ +export type DesktopsListResponse = DesktopList; /** Optional parameters. */ -export interface ScalingPlanPooledSchedulesCreateOptionalParams - extends coreClient.OperationOptions { } - -/** Contains response data for the create operation. */ -export type ScalingPlanPooledSchedulesCreateResponse = - ScalingPlanPooledSchedule; +export interface DesktopsGetOptionalParams + extends coreClient.OperationOptions {} -/** Optional parameters. */ -export interface ScalingPlanPooledSchedulesDeleteOptionalParams - extends coreClient.OperationOptions { } +/** Contains response data for the get operation. */ +export type DesktopsGetResponse = Desktop; /** Optional parameters. */ -export interface ScalingPlanPooledSchedulesUpdateOptionalParams +export interface DesktopsUpdateOptionalParams extends coreClient.OperationOptions { - /** Object containing ScalingPlanPooledSchedule definitions. */ - scalingPlanSchedule?: ScalingPlanPooledSchedulePatch; + /** The resource properties to be updated */ + desktop?: DesktopPatch; } /** Contains response data for the update operation. */ -export type ScalingPlanPooledSchedulesUpdateResponse = - ScalingPlanPooledSchedule; +export type DesktopsUpdateResponse = Desktop; /** Optional parameters. */ -export interface ScalingPlanPooledSchedulesListOptionalParams +export interface DesktopsListNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listNext operation. */ +export type DesktopsListNextResponse = DesktopList; + +/** Optional parameters. */ +export interface StartMenuItemsListOptionalParams extends coreClient.OperationOptions { /** Number of items per page. */ pageSize?: number; @@ -2557,50 +3567,69 @@ export interface ScalingPlanPooledSchedulesListOptionalParams } /** Contains response data for the list operation. */ -export type ScalingPlanPooledSchedulesListResponse = - ScalingPlanPooledScheduleList; +export type StartMenuItemsListResponse = StartMenuItemList; /** Optional parameters. */ -export interface ScalingPlanPooledSchedulesListNextOptionalParams - extends coreClient.OperationOptions { } +export interface StartMenuItemsListNextOptionalParams + extends coreClient.OperationOptions {} /** Contains response data for the listNext operation. */ -export type ScalingPlanPooledSchedulesListNextResponse = - ScalingPlanPooledScheduleList; +export type StartMenuItemsListNextResponse = StartMenuItemList; /** Optional parameters. */ -export interface ScalingPlanPersonalSchedulesGetOptionalParams - extends coreClient.OperationOptions { } +export interface ActiveSessionHostConfigurationsListByHostPoolOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByHostPool operation. */ +export type ActiveSessionHostConfigurationsListByHostPoolResponse = + ActiveSessionHostConfigurationList; + +/** Optional parameters. */ +export interface ActiveSessionHostConfigurationsGetOptionalParams + extends coreClient.OperationOptions {} /** Contains response data for the get operation. */ -export type ScalingPlanPersonalSchedulesGetResponse = - ScalingPlanPersonalSchedule; +export type ActiveSessionHostConfigurationsGetResponse = + ActiveSessionHostConfiguration; /** Optional parameters. */ -export interface ScalingPlanPersonalSchedulesCreateOptionalParams - extends coreClient.OperationOptions { } +export interface ActiveSessionHostConfigurationsListByHostPoolNextOptionalParams + extends coreClient.OperationOptions {} -/** Contains response data for the create operation. */ -export type ScalingPlanPersonalSchedulesCreateResponse = - ScalingPlanPersonalSchedule; +/** Contains response data for the listByHostPoolNext operation. */ +export type ActiveSessionHostConfigurationsListByHostPoolNextResponse = + ActiveSessionHostConfigurationList; /** Optional parameters. */ -export interface ScalingPlanPersonalSchedulesDeleteOptionalParams - extends coreClient.OperationOptions { } +export interface MsixImagesExpandOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the expand operation. */ +export type MsixImagesExpandResponse = ExpandMsixImageList; /** Optional parameters. */ -export interface ScalingPlanPersonalSchedulesUpdateOptionalParams - extends coreClient.OperationOptions { - /** Object containing ScalingPlanPersonalSchedule definitions. */ - scalingPlanSchedule?: ScalingPlanPersonalSchedulePatch; -} +export interface MsixImagesExpandNextOptionalParams + extends coreClient.OperationOptions {} -/** Contains response data for the update operation. */ -export type ScalingPlanPersonalSchedulesUpdateResponse = - ScalingPlanPersonalSchedule; +/** Contains response data for the expandNext operation. */ +export type MsixImagesExpandNextResponse = ExpandMsixImageList; /** Optional parameters. */ -export interface ScalingPlanPersonalSchedulesListOptionalParams +export interface AppAttachPackageInfoImportOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the import operation. */ +export type AppAttachPackageInfoImportResponse = AppAttachPackageList; + +/** Optional parameters. */ +export interface AppAttachPackageInfoImportNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the importNext operation. */ +export type AppAttachPackageInfoImportNextResponse = AppAttachPackageList; + +/** Optional parameters. */ +export interface MsixPackagesListOptionalParams extends coreClient.OperationOptions { /** Number of items per page. */ pageSize?: number; @@ -2611,47 +3640,42 @@ export interface ScalingPlanPersonalSchedulesListOptionalParams } /** Contains response data for the list operation. */ -export type ScalingPlanPersonalSchedulesListResponse = - ScalingPlanPersonalScheduleList; +export type MsixPackagesListResponse = MsixPackageList; /** Optional parameters. */ -export interface ScalingPlanPersonalSchedulesListNextOptionalParams - extends coreClient.OperationOptions { } +export interface MsixPackagesGetOptionalParams + extends coreClient.OperationOptions {} -/** Contains response data for the listNext operation. */ -export type ScalingPlanPersonalSchedulesListNextResponse = - ScalingPlanPersonalScheduleList; +/** Contains response data for the get operation. */ +export type MsixPackagesGetResponse = MsixPackage; /** Optional parameters. */ -export interface ApplicationGroupsGetOptionalParams - extends coreClient.OperationOptions { } +export interface MsixPackagesCreateOrUpdateOptionalParams + extends coreClient.OperationOptions {} -/** Contains response data for the get operation. */ -export type ApplicationGroupsGetResponse = ApplicationGroup; +/** Contains response data for the createOrUpdate operation. */ +export type MsixPackagesCreateOrUpdateResponse = MsixPackage; /** Optional parameters. */ -export interface ApplicationGroupsCreateOrUpdateOptionalParams - extends coreClient.OperationOptions { } +export interface MsixPackagesUpdateOptionalParams + extends coreClient.OperationOptions {} -/** Contains response data for the createOrUpdate operation. */ -export type ApplicationGroupsCreateOrUpdateResponse = ApplicationGroup; +/** Contains response data for the update operation. */ +export type MsixPackagesUpdateResponse = MsixPackage; /** Optional parameters. */ -export interface ApplicationGroupsDeleteOptionalParams - extends coreClient.OperationOptions { } +export interface MsixPackagesDeleteOptionalParams + extends coreClient.OperationOptions {} /** Optional parameters. */ -export interface ApplicationGroupsUpdateOptionalParams - extends coreClient.OperationOptions { - /** Object containing ApplicationGroup definitions. */ - applicationGroup?: ApplicationGroupPatch; -} +export interface MsixPackagesListNextOptionalParams + extends coreClient.OperationOptions {} -/** Contains response data for the update operation. */ -export type ApplicationGroupsUpdateResponse = ApplicationGroup; +/** Contains response data for the listNext operation. */ +export type MsixPackagesListNextResponse = MsixPackageList; /** Optional parameters. */ -export interface ApplicationGroupsListByResourceGroupOptionalParams +export interface PrivateEndpointConnectionsListByHostPoolOptionalParams extends coreClient.OperationOptions { /** Number of items per page. */ pageSize?: number; @@ -2659,90 +3683,93 @@ export interface ApplicationGroupsListByResourceGroupOptionalParams isDescending?: boolean; /** Initial number of items to skip. */ initialSkip?: number; - /** OData filter expression. Valid properties for filtering are applicationGroupType. */ - filter?: string; } -/** Contains response data for the listByResourceGroup operation. */ -export type ApplicationGroupsListByResourceGroupResponse = ApplicationGroupList; +/** Contains response data for the listByHostPool operation. */ +export type PrivateEndpointConnectionsListByHostPoolResponse = + PrivateEndpointConnectionListResultWithSystemData; /** Optional parameters. */ -export interface ApplicationGroupsListBySubscriptionOptionalParams - extends coreClient.OperationOptions { - /** OData filter expression. Valid properties for filtering are applicationGroupType. */ - filter?: string; -} +export interface PrivateEndpointConnectionsGetByHostPoolOptionalParams + extends coreClient.OperationOptions {} -/** Contains response data for the listBySubscription operation. */ -export type ApplicationGroupsListBySubscriptionResponse = ApplicationGroupList; +/** Contains response data for the getByHostPool operation. */ +export type PrivateEndpointConnectionsGetByHostPoolResponse = + PrivateEndpointConnectionWithSystemData; /** Optional parameters. */ -export interface ApplicationGroupsListByResourceGroupNextOptionalParams - extends coreClient.OperationOptions { } +export interface PrivateEndpointConnectionsUpdateByHostPoolOptionalParams + extends coreClient.OperationOptions {} -/** Contains response data for the listByResourceGroupNext operation. */ -export type ApplicationGroupsListByResourceGroupNextResponse = - ApplicationGroupList; +/** Contains response data for the updateByHostPool operation. */ +export type PrivateEndpointConnectionsUpdateByHostPoolResponse = + PrivateEndpointConnectionWithSystemData; /** Optional parameters. */ -export interface ApplicationGroupsListBySubscriptionNextOptionalParams - extends coreClient.OperationOptions { } - -/** Contains response data for the listBySubscriptionNext operation. */ -export type ApplicationGroupsListBySubscriptionNextResponse = - ApplicationGroupList; +export interface PrivateEndpointConnectionsDeleteByHostPoolOptionalParams + extends coreClient.OperationOptions {} /** Optional parameters. */ -export interface StartMenuItemsListOptionalParams - extends coreClient.OperationOptions { - /** Number of items per page. */ - pageSize?: number; - /** Indicates whether the collection is descending. */ - isDescending?: boolean; - /** Initial number of items to skip. */ - initialSkip?: number; -} +export interface PrivateEndpointConnectionsListByWorkspaceOptionalParams + extends coreClient.OperationOptions {} -/** Contains response data for the list operation. */ -export type StartMenuItemsListResponse = StartMenuItemList; +/** Contains response data for the listByWorkspace operation. */ +export type PrivateEndpointConnectionsListByWorkspaceResponse = + PrivateEndpointConnectionListResultWithSystemData; /** Optional parameters. */ -export interface StartMenuItemsListNextOptionalParams - extends coreClient.OperationOptions { } +export interface PrivateEndpointConnectionsGetByWorkspaceOptionalParams + extends coreClient.OperationOptions {} -/** Contains response data for the listNext operation. */ -export type StartMenuItemsListNextResponse = StartMenuItemList; +/** Contains response data for the getByWorkspace operation. */ +export type PrivateEndpointConnectionsGetByWorkspaceResponse = + PrivateEndpointConnectionWithSystemData; /** Optional parameters. */ -export interface ApplicationsGetOptionalParams - extends coreClient.OperationOptions { } +export interface PrivateEndpointConnectionsUpdateByWorkspaceOptionalParams + extends coreClient.OperationOptions {} -/** Contains response data for the get operation. */ -export type ApplicationsGetResponse = Application; +/** Contains response data for the updateByWorkspace operation. */ +export type PrivateEndpointConnectionsUpdateByWorkspaceResponse = + PrivateEndpointConnectionWithSystemData; /** Optional parameters. */ -export interface ApplicationsCreateOrUpdateOptionalParams - extends coreClient.OperationOptions { } +export interface PrivateEndpointConnectionsDeleteByWorkspaceOptionalParams + extends coreClient.OperationOptions {} -/** Contains response data for the createOrUpdate operation. */ -export type ApplicationsCreateOrUpdateResponse = Application; +/** Optional parameters. */ +export interface PrivateEndpointConnectionsListByHostPoolNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByHostPoolNext operation. */ +export type PrivateEndpointConnectionsListByHostPoolNextResponse = + PrivateEndpointConnectionListResultWithSystemData; /** Optional parameters. */ -export interface ApplicationsDeleteOptionalParams - extends coreClient.OperationOptions { } +export interface PrivateEndpointConnectionsListByWorkspaceNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByWorkspaceNext operation. */ +export type PrivateEndpointConnectionsListByWorkspaceNextResponse = + PrivateEndpointConnectionListResultWithSystemData; /** Optional parameters. */ -export interface ApplicationsUpdateOptionalParams +export interface PrivateLinkResourcesListByHostPoolOptionalParams extends coreClient.OperationOptions { - /** Object containing Application definitions. */ - application?: ApplicationPatch; + /** Number of items per page. */ + pageSize?: number; + /** Indicates whether the collection is descending. */ + isDescending?: boolean; + /** Initial number of items to skip. */ + initialSkip?: number; } -/** Contains response data for the update operation. */ -export type ApplicationsUpdateResponse = Application; +/** Contains response data for the listByHostPool operation. */ +export type PrivateLinkResourcesListByHostPoolResponse = + PrivateLinkResourceListResult; /** Optional parameters. */ -export interface ApplicationsListOptionalParams +export interface PrivateLinkResourcesListByWorkspaceOptionalParams extends coreClient.OperationOptions { /** Number of items per page. */ pageSize?: number; @@ -2752,101 +3779,147 @@ export interface ApplicationsListOptionalParams initialSkip?: number; } -/** Contains response data for the list operation. */ -export type ApplicationsListResponse = ApplicationList; +/** Contains response data for the listByWorkspace operation. */ +export type PrivateLinkResourcesListByWorkspaceResponse = + PrivateLinkResourceListResult; /** Optional parameters. */ -export interface ApplicationsListNextOptionalParams - extends coreClient.OperationOptions { } +export interface PrivateLinkResourcesListByHostPoolNextOptionalParams + extends coreClient.OperationOptions {} -/** Contains response data for the listNext operation. */ -export type ApplicationsListNextResponse = ApplicationList; +/** Contains response data for the listByHostPoolNext operation. */ +export type PrivateLinkResourcesListByHostPoolNextResponse = + PrivateLinkResourceListResult; /** Optional parameters. */ -export interface DesktopsGetOptionalParams - extends coreClient.OperationOptions { } +export interface PrivateLinkResourcesListByWorkspaceNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByWorkspaceNext operation. */ +export type PrivateLinkResourcesListByWorkspaceNextResponse = + PrivateLinkResourceListResult; + +/** Optional parameters. */ +export interface SessionHostConfigurationsListByHostPoolOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByHostPool operation. */ +export type SessionHostConfigurationsListByHostPoolResponse = + SessionHostConfigurationList; + +/** Optional parameters. */ +export interface SessionHostConfigurationsGetOptionalParams + extends coreClient.OperationOptions {} /** Contains response data for the get operation. */ -export type DesktopsGetResponse = Desktop; +export type SessionHostConfigurationsGetResponse = SessionHostConfiguration; /** Optional parameters. */ -export interface DesktopsUpdateOptionalParams +export interface SessionHostConfigurationsCreateOrUpdateOptionalParams extends coreClient.OperationOptions { - /** Object containing Desktop definitions. */ - desktop?: DesktopPatch; + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; } -/** Contains response data for the update operation. */ -export type DesktopsUpdateResponse = Desktop; +/** Contains response data for the createOrUpdate operation. */ +export type SessionHostConfigurationsCreateOrUpdateResponse = + SessionHostConfiguration; /** Optional parameters. */ -export interface DesktopsListOptionalParams +export interface SessionHostConfigurationsUpdateOptionalParams extends coreClient.OperationOptions { - /** Number of items per page. */ - pageSize?: number; - /** Indicates whether the collection is descending. */ - isDescending?: boolean; - /** Initial number of items to skip. */ - initialSkip?: number; + /** The resource properties to be updated */ + sessionHostConfiguration?: SessionHostConfigurationPatch; + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; } -/** Contains response data for the list operation. */ -export type DesktopsListResponse = DesktopList; +/** Contains response data for the update operation. */ +export type SessionHostConfigurationsUpdateResponse = SessionHostConfiguration; /** Optional parameters. */ -export interface DesktopsListNextOptionalParams - extends coreClient.OperationOptions { } +export interface SessionHostConfigurationsListByHostPoolNextOptionalParams + extends coreClient.OperationOptions {} -/** Contains response data for the listNext operation. */ -export type DesktopsListNextResponse = DesktopList; +/** Contains response data for the listByHostPoolNext operation. */ +export type SessionHostConfigurationsListByHostPoolNextResponse = + SessionHostConfigurationList; + +/** Optional parameters. */ +export interface SessionHostManagementsListByHostPoolOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByHostPool operation. */ +export type SessionHostManagementsListByHostPoolResponse = + SessionHostManagementList; /** Optional parameters. */ -export interface HostPoolsGetOptionalParams - extends coreClient.OperationOptions { } +export interface SessionHostManagementsGetOptionalParams + extends coreClient.OperationOptions {} /** Contains response data for the get operation. */ -export type HostPoolsGetResponse = HostPool; +export type SessionHostManagementsGetResponse = SessionHostManagement; /** Optional parameters. */ -export interface HostPoolsCreateOrUpdateOptionalParams - extends coreClient.OperationOptions { } +export interface SessionHostManagementsCreateOrUpdateOptionalParams + extends coreClient.OperationOptions {} /** Contains response data for the createOrUpdate operation. */ -export type HostPoolsCreateOrUpdateResponse = HostPool; +export type SessionHostManagementsCreateOrUpdateResponse = + SessionHostManagement; /** Optional parameters. */ -export interface HostPoolsDeleteOptionalParams +export interface SessionHostManagementsUpdateOptionalParams extends coreClient.OperationOptions { - /** Force flag to delete sessionHost. */ - force?: boolean; + /** The properties to be updated. */ + sessionHostManagement?: SessionHostManagementPatch; } +/** Contains response data for the update operation. */ +export type SessionHostManagementsUpdateResponse = SessionHostManagement; + /** Optional parameters. */ -export interface HostPoolsUpdateOptionalParams +export interface SessionHostManagementsListByHostPoolNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByHostPoolNext operation. */ +export type SessionHostManagementsListByHostPoolNextResponse = + SessionHostManagementList; + +/** Optional parameters. */ +export interface ControlSessionHostUpdatePostOptionalParams extends coreClient.OperationOptions { - /** Object containing HostPool definitions. */ - hostPool?: HostPoolPatch; + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; } -/** Contains response data for the update operation. */ -export type HostPoolsUpdateResponse = HostPool; +/** Contains response data for the post operation. */ +export type ControlSessionHostUpdatePostResponse = + ControlSessionHostUpdatePostHeaders; /** Optional parameters. */ -export interface HostPoolsListByResourceGroupOptionalParams +export interface InitiateSessionHostUpdatePostOptionalParams extends coreClient.OperationOptions { - /** Number of items per page. */ - pageSize?: number; - /** Indicates whether the collection is descending. */ - isDescending?: boolean; - /** Initial number of items to skip. */ - initialSkip?: number; + /** The resource properties to be updated */ + updateSessionHostsRequestBody?: UpdateSessionHostsRequestBody; } -/** Contains response data for the listByResourceGroup operation. */ -export type HostPoolsListByResourceGroupResponse = HostPoolList; +/** Optional parameters. */ +export interface SessionHostManagementsUpdateStatusGetOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the get operation. */ +export type SessionHostManagementsUpdateStatusGetResponse = + SessionHostManagementUpdateStatus; /** Optional parameters. */ -export interface HostPoolsListOptionalParams +export interface SessionHostsListOptionalParams extends coreClient.OperationOptions { /** Number of items per page. */ pageSize?: number; @@ -2854,41 +3927,52 @@ export interface HostPoolsListOptionalParams isDescending?: boolean; /** Initial number of items to skip. */ initialSkip?: number; + /** The path to the VM. */ + vmPath?: string; } /** Contains response data for the list operation. */ -export type HostPoolsListResponse = HostPoolList; +export type SessionHostsListResponse = SessionHostList; /** Optional parameters. */ -export interface HostPoolsRetrieveRegistrationTokenOptionalParams - extends coreClient.OperationOptions { } +export interface SessionHostsGetOptionalParams + extends coreClient.OperationOptions {} -/** Contains response data for the retrieveRegistrationToken operation. */ -export type HostPoolsRetrieveRegistrationTokenResponse = RegistrationInfo; +/** Contains response data for the get operation. */ +export type SessionHostsGetResponse = SessionHost; /** Optional parameters. */ -export interface HostPoolsListRegistrationTokensOptionalParams - extends coreClient.OperationOptions { } +export interface SessionHostsUpdateOptionalParams + extends coreClient.OperationOptions { + /** Force flag to update assign, unassign or reassign personal desktop. */ + force?: boolean; + /** The resource properties to be updated */ + sessionHost?: SessionHostPatch; +} -/** Contains response data for the listRegistrationTokens operation. */ -export type HostPoolsListRegistrationTokensResponse = RegistrationTokenList; +/** Contains response data for the update operation. */ +export type SessionHostsUpdateResponse = SessionHost; /** Optional parameters. */ -export interface HostPoolsListByResourceGroupNextOptionalParams - extends coreClient.OperationOptions { } +export interface SessionHostsDeleteOptionalParams + extends coreClient.OperationOptions { + /** Force flag to force sessionHost deletion even when userSession exists. */ + force?: boolean; +} -/** Contains response data for the listByResourceGroupNext operation. */ -export type HostPoolsListByResourceGroupNextResponse = HostPoolList; +/** Optional parameters. */ +export interface SessionHostsRetryProvisioningOptionalParams + extends coreClient.OperationOptions {} /** Optional parameters. */ -export interface HostPoolsListNextOptionalParams - extends coreClient.OperationOptions { } +export interface SessionHostsListNextOptionalParams + extends coreClient.OperationOptions {} /** Contains response data for the listNext operation. */ -export type HostPoolsListNextResponse = HostPoolList; +export type SessionHostsListNextResponse = SessionHostList; /** Optional parameters. */ -export interface UserSessionsListByHostPoolOptionalParams +export interface UserSessionsListOptionalParams extends coreClient.OperationOptions { /** Number of items per page. */ pageSize?: number; @@ -2896,16 +3980,14 @@ export interface UserSessionsListByHostPoolOptionalParams isDescending?: boolean; /** Initial number of items to skip. */ initialSkip?: number; - /** OData filter expression. Valid properties for filtering are userprincipalname and sessionstate. */ - filter?: string; } -/** Contains response data for the listByHostPool operation. */ -export type UserSessionsListByHostPoolResponse = UserSessionList; +/** Contains response data for the list operation. */ +export type UserSessionsListResponse = UserSessionList; /** Optional parameters. */ export interface UserSessionsGetOptionalParams - extends coreClient.OperationOptions { } + extends coreClient.OperationOptions {} /** Contains response data for the get operation. */ export type UserSessionsGetResponse = UserSession; @@ -2917,73 +3999,49 @@ export interface UserSessionsDeleteOptionalParams force?: boolean; } -/** Optional parameters. */ -export interface UserSessionsListOptionalParams - extends coreClient.OperationOptions { - /** Number of items per page. */ - pageSize?: number; - /** Indicates whether the collection is descending. */ - isDescending?: boolean; - /** Initial number of items to skip. */ - initialSkip?: number; -} - -/** Contains response data for the list operation. */ -export type UserSessionsListResponse = UserSessionList; - /** Optional parameters. */ export interface UserSessionsDisconnectOptionalParams - extends coreClient.OperationOptions { } + extends coreClient.OperationOptions {} /** Optional parameters. */ export interface UserSessionsSendMessageOptionalParams extends coreClient.OperationOptions { - /** Object containing message includes title and message body */ + /** Represents message sent to a UserSession. */ sendMessage?: SendMessage; } /** Optional parameters. */ -export interface UserSessionsListByHostPoolNextOptionalParams - extends coreClient.OperationOptions { } +export interface UserSessionsListByHostPoolOptionalParams + extends coreClient.OperationOptions { + /** OData filter expression. Valid properties for filtering are userprincipalname and sessionstate. */ + filter?: string; + /** Number of items per page. */ + pageSize?: number; + /** Indicates whether the collection is descending. */ + isDescending?: boolean; + /** Initial number of items to skip. */ + initialSkip?: number; +} -/** Contains response data for the listByHostPoolNext operation. */ -export type UserSessionsListByHostPoolNextResponse = UserSessionList; +/** Contains response data for the listByHostPool operation. */ +export type UserSessionsListByHostPoolResponse = UserSessionList; /** Optional parameters. */ export interface UserSessionsListNextOptionalParams - extends coreClient.OperationOptions { } + extends coreClient.OperationOptions {} /** Contains response data for the listNext operation. */ export type UserSessionsListNextResponse = UserSessionList; /** Optional parameters. */ -export interface SessionHostsGetOptionalParams - extends coreClient.OperationOptions { } - -/** Contains response data for the get operation. */ -export type SessionHostsGetResponse = SessionHost; - -/** Optional parameters. */ -export interface SessionHostsDeleteOptionalParams - extends coreClient.OperationOptions { - /** Force flag to force sessionHost deletion even when userSession exists. */ - force?: boolean; -} - -/** Optional parameters. */ -export interface SessionHostsUpdateOptionalParams - extends coreClient.OperationOptions { - /** Force flag to update assign, unassign or reassign personal desktop. */ - force?: boolean; - /** Object containing SessionHost definitions. */ - sessionHost?: SessionHostPatch; -} +export interface UserSessionsListByHostPoolNextOptionalParams + extends coreClient.OperationOptions {} -/** Contains response data for the update operation. */ -export type SessionHostsUpdateResponse = SessionHost; +/** Contains response data for the listByHostPoolNext operation. */ +export type UserSessionsListByHostPoolNextResponse = UserSessionList; /** Optional parameters. */ -export interface SessionHostsListOptionalParams +export interface ScalingPlanPersonalSchedulesListOptionalParams extends coreClient.OperationOptions { /** Number of items per page. */ pageSize?: number; @@ -2994,45 +4052,50 @@ export interface SessionHostsListOptionalParams } /** Contains response data for the list operation. */ -export type SessionHostsListResponse = SessionHostList; +export type ScalingPlanPersonalSchedulesListResponse = + ScalingPlanPersonalScheduleList; /** Optional parameters. */ -export interface SessionHostsListNextOptionalParams - extends coreClient.OperationOptions { } +export interface ScalingPlanPersonalSchedulesGetOptionalParams + extends coreClient.OperationOptions {} -/** Contains response data for the listNext operation. */ -export type SessionHostsListNextResponse = SessionHostList; +/** Contains response data for the get operation. */ +export type ScalingPlanPersonalSchedulesGetResponse = + ScalingPlanPersonalSchedule; /** Optional parameters. */ -export interface MsixPackagesGetOptionalParams - extends coreClient.OperationOptions { } +export interface ScalingPlanPersonalSchedulesCreateOptionalParams + extends coreClient.OperationOptions {} -/** Contains response data for the get operation. */ -export type MsixPackagesGetResponse = MsixPackage; +/** Contains response data for the create operation. */ +export type ScalingPlanPersonalSchedulesCreateResponse = + ScalingPlanPersonalSchedule; /** Optional parameters. */ -export interface MsixPackagesCreateOrUpdateOptionalParams - extends coreClient.OperationOptions { } +export interface ScalingPlanPersonalSchedulesUpdateOptionalParams + extends coreClient.OperationOptions { + /** The resource properties to be updated */ + scalingPlanSchedule?: ScalingPlanPersonalSchedulePatch; +} -/** Contains response data for the createOrUpdate operation. */ -export type MsixPackagesCreateOrUpdateResponse = MsixPackage; +/** Contains response data for the update operation. */ +export type ScalingPlanPersonalSchedulesUpdateResponse = + ScalingPlanPersonalSchedule; /** Optional parameters. */ -export interface MsixPackagesDeleteOptionalParams - extends coreClient.OperationOptions { } +export interface ScalingPlanPersonalSchedulesDeleteOptionalParams + extends coreClient.OperationOptions {} /** Optional parameters. */ -export interface MsixPackagesUpdateOptionalParams - extends coreClient.OperationOptions { - /** Object containing MSIX Package definitions. */ - msixPackage?: MsixPackagePatch; -} +export interface ScalingPlanPersonalSchedulesListNextOptionalParams + extends coreClient.OperationOptions {} -/** Contains response data for the update operation. */ -export type MsixPackagesUpdateResponse = MsixPackage; +/** Contains response data for the listNext operation. */ +export type ScalingPlanPersonalSchedulesListNextResponse = + ScalingPlanPersonalScheduleList; /** Optional parameters. */ -export interface MsixPackagesListOptionalParams +export interface ScalingPlanPooledSchedulesListOptionalParams extends coreClient.OperationOptions { /** Number of items per page. */ pageSize?: number; @@ -3043,106 +4106,46 @@ export interface MsixPackagesListOptionalParams } /** Contains response data for the list operation. */ -export type MsixPackagesListResponse = MsixPackageList; - -/** Optional parameters. */ -export interface MsixPackagesListNextOptionalParams - extends coreClient.OperationOptions { } - -/** Contains response data for the listNext operation. */ -export type MsixPackagesListNextResponse = MsixPackageList; - -/** Optional parameters. */ -export interface AppAttachPackageInfoImportOptionalParams - extends coreClient.OperationOptions { } - -/** Contains response data for the import operation. */ -export type AppAttachPackageInfoImportResponse = AppAttachPackageList; - -/** Optional parameters. */ -export interface AppAttachPackageInfoImportNextOptionalParams - extends coreClient.OperationOptions { } - -/** Contains response data for the importNext operation. */ -export type AppAttachPackageInfoImportNextResponse = AppAttachPackageList; - -/** Optional parameters. */ -export interface MsixImagesExpandOptionalParams - extends coreClient.OperationOptions { } - -/** Contains response data for the expand operation. */ -export type MsixImagesExpandResponse = ExpandMsixImageList; - -/** Optional parameters. */ -export interface MsixImagesExpandNextOptionalParams - extends coreClient.OperationOptions { } - -/** Contains response data for the expandNext operation. */ -export type MsixImagesExpandNextResponse = ExpandMsixImageList; +export type ScalingPlanPooledSchedulesListResponse = + ScalingPlanPooledScheduleList; /** Optional parameters. */ -export interface AppAttachPackageGetOptionalParams - extends coreClient.OperationOptions { } +export interface ScalingPlanPooledSchedulesGetOptionalParams + extends coreClient.OperationOptions {} /** Contains response data for the get operation. */ -export type AppAttachPackageGetResponse = AppAttachPackage; +export type ScalingPlanPooledSchedulesGetResponse = ScalingPlanPooledSchedule; /** Optional parameters. */ -export interface AppAttachPackageCreateOrUpdateOptionalParams - extends coreClient.OperationOptions { } - -/** Contains response data for the createOrUpdate operation. */ -export type AppAttachPackageCreateOrUpdateResponse = AppAttachPackage; +export interface ScalingPlanPooledSchedulesCreateOptionalParams + extends coreClient.OperationOptions {} -/** Optional parameters. */ -export interface AppAttachPackageDeleteOptionalParams - extends coreClient.OperationOptions { } +/** Contains response data for the create operation. */ +export type ScalingPlanPooledSchedulesCreateResponse = + ScalingPlanPooledSchedule; /** Optional parameters. */ -export interface AppAttachPackageUpdateOptionalParams +export interface ScalingPlanPooledSchedulesUpdateOptionalParams extends coreClient.OperationOptions { - /** Object containing App Attach Package definition. */ - appAttachPackagePatch?: AppAttachPackagePatch; + /** The resource properties to be updated */ + scalingPlanSchedule?: ScalingPlanPooledSchedulePatch; } /** Contains response data for the update operation. */ -export type AppAttachPackageUpdateResponse = AppAttachPackage; - -/** Optional parameters. */ -export interface AppAttachPackageListByResourceGroupOptionalParams - extends coreClient.OperationOptions { - /** OData filter expression. Valid properties for filtering are package name and host pool. */ - filter?: string; -} - -/** Contains response data for the listByResourceGroup operation. */ -export type AppAttachPackageListByResourceGroupResponse = AppAttachPackageList; - -/** Optional parameters. */ -export interface AppAttachPackageListBySubscriptionOptionalParams - extends coreClient.OperationOptions { - /** OData filter expression. Valid properties for filtering are package name, host pool, and resource group. */ - filter?: string; -} - -/** Contains response data for the listBySubscription operation. */ -export type AppAttachPackageListBySubscriptionResponse = AppAttachPackageList; +export type ScalingPlanPooledSchedulesUpdateResponse = + ScalingPlanPooledSchedule; /** Optional parameters. */ -export interface AppAttachPackageListByResourceGroupNextOptionalParams - extends coreClient.OperationOptions { } - -/** Contains response data for the listByResourceGroupNext operation. */ -export type AppAttachPackageListByResourceGroupNextResponse = - AppAttachPackageList; +export interface ScalingPlanPooledSchedulesDeleteOptionalParams + extends coreClient.OperationOptions {} /** Optional parameters. */ -export interface AppAttachPackageListBySubscriptionNextOptionalParams - extends coreClient.OperationOptions { } +export interface ScalingPlanPooledSchedulesListNextOptionalParams + extends coreClient.OperationOptions {} -/** Contains response data for the listBySubscriptionNext operation. */ -export type AppAttachPackageListBySubscriptionNextResponse = - AppAttachPackageList; +/** Contains response data for the listNext operation. */ +export type ScalingPlanPooledSchedulesListNextResponse = + ScalingPlanPooledScheduleList; /** Optional parameters. */ export interface DesktopVirtualizationAPIClientOptionalParams diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/mappers.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/mappers.ts index c78b84bd4885..9467f8b399f6 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/mappers.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/mappers.ts @@ -8,13 +8,14 @@ import * as coreClient from "@azure/core-client"; -export const ResourceProviderOperationList: coreClient.CompositeMapper = { +export const ResourceProviderOperationListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ResourceProviderOperationList", + className: "ResourceProviderOperationListResult", modelProperties: { value: { serializedName: "value", + required: true, type: { name: "Sequence", element: { @@ -27,7 +28,6 @@ export const ResourceProviderOperationList: coreClient.CompositeMapper = { }, nextLink: { serializedName: "nextLink", - readOnly: true, type: { name: "String", }, @@ -168,78 +168,122 @@ export const LogSpecification: coreClient.CompositeMapper = { }, }; -export const CloudError: coreClient.CompositeMapper = { +export const ErrorResponse: coreClient.CompositeMapper = { type: { name: "Composite", - className: "CloudError", + className: "ErrorResponse", modelProperties: { error: { serializedName: "error", type: { name: "Composite", - className: "CloudErrorProperties", + className: "ErrorDetail", }, }, }, }, }; -export const CloudErrorProperties: coreClient.CompositeMapper = { +export const ErrorDetail: coreClient.CompositeMapper = { type: { name: "Composite", - className: "CloudErrorProperties", + className: "ErrorDetail", modelProperties: { code: { serializedName: "code", + readOnly: true, type: { name: "String", }, }, message: { serializedName: "message", + readOnly: true, + type: { + name: "String", + }, + }, + target: { + serializedName: "target", + readOnly: true, type: { name: "String", }, }, + details: { + serializedName: "details", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ErrorDetail", + }, + }, + }, + }, + additionalInfo: { + serializedName: "additionalInfo", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ErrorAdditionalInfo", + }, + }, + }, + }, }, }, }; -export const PrivateEndpoint: coreClient.CompositeMapper = { +export const ErrorAdditionalInfo: coreClient.CompositeMapper = { type: { name: "Composite", - className: "PrivateEndpoint", + className: "ErrorAdditionalInfo", modelProperties: { - id: { - serializedName: "id", + type: { + serializedName: "type", readOnly: true, type: { name: "String", }, }, + info: { + serializedName: "info", + readOnly: true, + type: { + name: "Dictionary", + value: { type: { name: "any" } }, + }, + }, }, }, }; -export const PrivateLinkServiceConnectionState: coreClient.CompositeMapper = { +export const AppAttachPackageList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "PrivateLinkServiceConnectionState", + className: "AppAttachPackageList", modelProperties: { - status: { - serializedName: "status", - type: { - name: "String", - }, - }, - description: { - serializedName: "description", + value: { + serializedName: "value", + required: true, type: { - name: "String", + name: "Sequence", + element: { + type: { + name: "Composite", + className: "AppAttachPackage", + }, + }, }, }, - actionsRequired: { - serializedName: "actionsRequired", + nextLink: { + serializedName: "nextLink", type: { name: "String", }, @@ -248,111 +292,115 @@ export const PrivateLinkServiceConnectionState: coreClient.CompositeMapper = { }, }; -export const Resource: coreClient.CompositeMapper = { +export const AppAttachPackageInfoProperties: coreClient.CompositeMapper = { type: { name: "Composite", - className: "Resource", + className: "AppAttachPackageInfoProperties", modelProperties: { - id: { - serializedName: "id", - readOnly: true, + packageAlias: { + serializedName: "packageAlias", type: { name: "String", }, }, - name: { - serializedName: "name", - readOnly: true, + imagePath: { + serializedName: "imagePath", type: { name: "String", }, }, - type: { - serializedName: "type", - readOnly: true, + packageName: { + serializedName: "packageName", type: { name: "String", }, }, - systemData: { - serializedName: "systemData", + packageFamilyName: { + serializedName: "packageFamilyName", type: { - name: "Composite", - className: "SystemData", + name: "String", }, }, - }, - }, -}; - -export const SystemData: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SystemData", - modelProperties: { - createdBy: { - serializedName: "createdBy", + packageFullName: { + serializedName: "packageFullName", type: { name: "String", }, }, - createdByType: { - serializedName: "createdByType", + displayName: { + serializedName: "displayName", type: { name: "String", }, }, - createdAt: { - serializedName: "createdAt", + packageRelativePath: { + serializedName: "packageRelativePath", type: { - name: "DateTime", + name: "String", }, }, - lastModifiedBy: { - serializedName: "lastModifiedBy", + isRegularRegistration: { + serializedName: "isRegularRegistration", type: { - name: "String", + name: "Boolean", }, }, - lastModifiedByType: { - serializedName: "lastModifiedByType", + isActive: { + serializedName: "isActive", + type: { + name: "Boolean", + }, + }, + packageDependencies: { + serializedName: "packageDependencies", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MsixPackageDependencies", + }, + }, + }, + }, + version: { + serializedName: "version", type: { name: "String", }, }, - lastModifiedAt: { - serializedName: "lastModifiedAt", + lastUpdated: { + serializedName: "lastUpdated", type: { name: "DateTime", }, }, - }, - }, -}; - -export const Identity: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Identity", - modelProperties: { - principalId: { - serializedName: "principalId", - readOnly: true, + packageApplications: { + serializedName: "packageApplications", type: { - name: "Uuid", + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MsixPackageApplications", + }, + }, }, }, - tenantId: { - serializedName: "tenantId", - readOnly: true, + certificateName: { + serializedName: "certificateName", type: { - name: "Uuid", + name: "String", }, }, - type: { - defaultValue: "SystemAssigned", - isConstant: true, - serializedName: "type", + certificateExpiry: { + serializedName: "certificateExpiry", + type: { + name: "DateTime", + }, + }, + isPackageTimestamped: { + serializedName: "isPackageTimestamped", type: { name: "String", }, @@ -361,186 +409,186 @@ export const Identity: coreClient.CompositeMapper = { }, }; -export const Sku: coreClient.CompositeMapper = { +export const MsixPackageDependencies: coreClient.CompositeMapper = { type: { name: "Composite", - className: "Sku", + className: "MsixPackageDependencies", modelProperties: { - name: { - serializedName: "name", - required: true, + dependencyName: { + serializedName: "dependencyName", type: { name: "String", }, }, - tier: { - serializedName: "tier", - type: { - name: "Enum", - allowedValues: ["Free", "Basic", "Standard", "Premium"], - }, - }, - size: { - serializedName: "size", + publisher: { + serializedName: "publisher", type: { name: "String", }, }, - family: { - serializedName: "family", + minVersion: { + serializedName: "minVersion", type: { name: "String", }, }, - capacity: { - serializedName: "capacity", - type: { - name: "Number", - }, - }, }, }, }; -export const Plan: coreClient.CompositeMapper = { +export const MsixPackageApplications: coreClient.CompositeMapper = { type: { name: "Composite", - className: "Plan", + className: "MsixPackageApplications", modelProperties: { - name: { - serializedName: "name", - required: true, + appId: { + serializedName: "appId", type: { name: "String", }, }, - publisher: { - serializedName: "publisher", - required: true, + description: { + serializedName: "description", type: { name: "String", }, }, - product: { - serializedName: "product", - required: true, + appUserModelID: { + serializedName: "appUserModelID", type: { name: "String", }, }, - promotionCode: { - serializedName: "promotionCode", + friendlyName: { + serializedName: "friendlyName", type: { name: "String", }, }, - version: { - serializedName: "version", + iconImageName: { + serializedName: "iconImageName", type: { name: "String", }, }, + rawIcon: { + serializedName: "rawIcon", + type: { + name: "ByteArray", + }, + }, + rawPng: { + serializedName: "rawPng", + type: { + name: "ByteArray", + }, + }, }, }, }; -export const WorkspacePatch: coreClient.CompositeMapper = { +export const Resource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "WorkspacePatch", + className: "Resource", modelProperties: { - tags: { - serializedName: "tags", - nullable: true, - type: { - name: "Dictionary", - value: { type: { name: "String" } }, - }, - }, - description: { - serializedName: "properties.description", + id: { + serializedName: "id", + readOnly: true, type: { name: "String", }, }, - friendlyName: { - serializedName: "properties.friendlyName", + name: { + serializedName: "name", + readOnly: true, type: { name: "String", }, }, - applicationGroupReferences: { - serializedName: "properties.applicationGroupReferences", - nullable: true, + type: { + serializedName: "type", + readOnly: true, type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, + name: "String", }, }, - publicNetworkAccess: { - serializedName: "properties.publicNetworkAccess", - nullable: true, + systemData: { + serializedName: "systemData", type: { - name: "String", + name: "Composite", + className: "SystemData", }, }, }, }, }; -export const PrivateEndpointConnectionListResultWithSystemData: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "PrivateEndpointConnectionListResultWithSystemData", - modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "PrivateEndpointConnectionWithSystemData", - }, - }, - }, +export const SystemData: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SystemData", + modelProperties: { + createdBy: { + serializedName: "createdBy", + type: { + name: "String", }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - 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 PrivateLinkResourceListResult: coreClient.CompositeMapper = { +export const ApplicationGroupList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "PrivateLinkResourceListResult", + className: "ApplicationGroupList", modelProperties: { value: { serializedName: "value", + required: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "PrivateLinkResource", + className: "ApplicationGroup", }, }, }, }, nextLink: { serializedName: "nextLink", - readOnly: true, type: { name: "String", }, @@ -549,168 +597,198 @@ export const PrivateLinkResourceListResult: coreClient.CompositeMapper = { }, }; -export const WorkspaceList: coreClient.CompositeMapper = { +export const ManagedServiceIdentity: coreClient.CompositeMapper = { type: { name: "Composite", - className: "WorkspaceList", + className: "ManagedServiceIdentity", modelProperties: { - value: { - serializedName: "value", + principalId: { + serializedName: "principalId", + readOnly: true, type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "Workspace", - }, - }, + name: "Uuid", }, }, - nextLink: { - serializedName: "nextLink", + tenantId: { + serializedName: "tenantId", readOnly: true, + type: { + name: "Uuid", + }, + }, + type: { + serializedName: "type", + required: true, type: { name: "String", }, }, + userAssignedIdentities: { + serializedName: "userAssignedIdentities", + type: { + name: "Dictionary", + value: { + type: { name: "Composite", className: "UserAssignedIdentity" }, + }, + }, + }, }, }, }; -export const ScalingSchedule: coreClient.CompositeMapper = { +export const UserAssignedIdentity: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ScalingSchedule", + className: "UserAssignedIdentity", modelProperties: { - name: { - serializedName: "name", + principalId: { + serializedName: "principalId", + readOnly: true, type: { - name: "String", + name: "Uuid", }, }, - daysOfWeek: { - serializedName: "daysOfWeek", + clientId: { + serializedName: "clientId", + readOnly: true, type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, + name: "Uuid", }, }, - rampUpStartTime: { - serializedName: "rampUpStartTime", + }, + }, +}; + +export const Plan: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "Plan", + modelProperties: { + name: { + serializedName: "name", + required: true, type: { - name: "Composite", - className: "Time", + name: "String", }, }, - rampUpLoadBalancingAlgorithm: { - serializedName: "rampUpLoadBalancingAlgorithm", + publisher: { + serializedName: "publisher", + required: true, type: { name: "String", }, }, - rampUpMinimumHostsPct: { - constraints: { - InclusiveMaximum: 100, - InclusiveMinimum: 0, - }, - serializedName: "rampUpMinimumHostsPct", + product: { + serializedName: "product", + required: true, type: { - name: "Number", + name: "String", }, }, - rampUpCapacityThresholdPct: { - constraints: { - InclusiveMaximum: 100, - InclusiveMinimum: 1, - }, - serializedName: "rampUpCapacityThresholdPct", + promotionCode: { + serializedName: "promotionCode", type: { - name: "Number", + name: "String", }, }, - peakStartTime: { - serializedName: "peakStartTime", + version: { + serializedName: "version", type: { - name: "Composite", - className: "Time", + name: "String", }, }, - peakLoadBalancingAlgorithm: { - serializedName: "peakLoadBalancingAlgorithm", + }, + }, +}; + +export const Sku: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "Sku", + modelProperties: { + name: { + serializedName: "name", + required: true, type: { name: "String", }, }, - rampDownStartTime: { - serializedName: "rampDownStartTime", + tier: { + serializedName: "tier", type: { - name: "Composite", - className: "Time", + name: "Enum", + allowedValues: ["Free", "Basic", "Standard", "Premium"], }, }, - rampDownLoadBalancingAlgorithm: { - serializedName: "rampDownLoadBalancingAlgorithm", + size: { + serializedName: "size", type: { name: "String", }, }, - rampDownMinimumHostsPct: { - constraints: { - InclusiveMaximum: 100, - InclusiveMinimum: 0, - }, - serializedName: "rampDownMinimumHostsPct", + family: { + serializedName: "family", type: { - name: "Number", + name: "String", }, }, - rampDownCapacityThresholdPct: { - constraints: { - InclusiveMaximum: 100, - InclusiveMinimum: 1, - }, - serializedName: "rampDownCapacityThresholdPct", + capacity: { + serializedName: "capacity", type: { name: "Number", }, }, - rampDownForceLogoffUsers: { - serializedName: "rampDownForceLogoffUsers", + }, + }, +}; + +export const HostPoolList: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "HostPoolList", + modelProperties: { + value: { + serializedName: "value", + required: true, type: { - name: "Boolean", + name: "Sequence", + element: { + type: { + name: "Composite", + className: "HostPool", + }, + }, }, }, - rampDownStopHostsWhen: { - serializedName: "rampDownStopHostsWhen", + nextLink: { + serializedName: "nextLink", type: { name: "String", }, }, - rampDownWaitTimeMinutes: { - serializedName: "rampDownWaitTimeMinutes", + }, + }, +}; + +export const RegistrationInfo: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "RegistrationInfo", + modelProperties: { + expirationTime: { + serializedName: "expirationTime", type: { - name: "Number", + name: "DateTime", }, }, - rampDownNotificationMessage: { - serializedName: "rampDownNotificationMessage", + token: { + serializedName: "token", type: { name: "String", }, }, - offPeakStartTime: { - serializedName: "offPeakStartTime", - type: { - name: "Composite", - className: "Time", - }, - }, - offPeakLoadBalancingAlgorithm: { - serializedName: "offPeakLoadBalancingAlgorithm", + registrationTokenOperation: { + serializedName: "registrationTokenOperation", type: { name: "String", }, @@ -719,143 +797,152 @@ export const ScalingSchedule: coreClient.CompositeMapper = { }, }; -export const Time: coreClient.CompositeMapper = { +export const AgentUpdateProperties: coreClient.CompositeMapper = { type: { name: "Composite", - className: "Time", + className: "AgentUpdateProperties", modelProperties: { - hour: { - constraints: { - InclusiveMaximum: 23, - InclusiveMinimum: 0, + type: { + serializedName: "type", + type: { + name: "String", }, - serializedName: "hour", - required: true, + }, + useSessionHostLocalTime: { + serializedName: "useSessionHostLocalTime", type: { - name: "Number", + name: "Boolean", }, }, - minute: { - constraints: { - InclusiveMaximum: 59, - InclusiveMinimum: 0, + maintenanceWindowTimeZone: { + serializedName: "maintenanceWindowTimeZone", + type: { + name: "String", }, - serializedName: "minute", - required: true, + }, + maintenanceWindows: { + serializedName: "maintenanceWindows", type: { - name: "Number", + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MaintenanceWindowProperties", + }, + }, }, }, }, }, }; -export const ScalingHostPoolReference: coreClient.CompositeMapper = { +export const MaintenanceWindowProperties: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ScalingHostPoolReference", + className: "MaintenanceWindowProperties", modelProperties: { - hostPoolArmPath: { - serializedName: "hostPoolArmPath", + hour: { + serializedName: "hour", type: { - name: "String", + name: "Number", }, }, - scalingPlanEnabled: { - serializedName: "scalingPlanEnabled", + dayOfWeek: { + serializedName: "dayOfWeek", type: { - name: "Boolean", + name: "Enum", + allowedValues: [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday", + "Sunday", + ], }, }, }, }, }; -export const ScalingPlanPatch: coreClient.CompositeMapper = { +export const PrivateEndpointConnectionProperties: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ScalingPlanPatch", + className: "PrivateEndpointConnectionProperties", modelProperties: { - tags: { - serializedName: "tags", - nullable: true, + groupIds: { + serializedName: "groupIds", + readOnly: true, type: { - name: "Dictionary", - value: { type: { name: "String" } }, + name: "Sequence", + element: { + type: { + name: "String", + }, + }, }, }, - description: { - serializedName: "properties.description", + privateEndpoint: { + serializedName: "privateEndpoint", type: { - name: "String", + name: "Composite", + className: "PrivateEndpoint", }, }, - friendlyName: { - serializedName: "properties.friendlyName", + privateLinkServiceConnectionState: { + serializedName: "privateLinkServiceConnectionState", type: { - name: "String", + name: "Composite", + className: "PrivateLinkServiceConnectionState", }, }, - timeZone: { - serializedName: "properties.timeZone", + provisioningState: { + serializedName: "provisioningState", + readOnly: true, type: { name: "String", }, }, - exclusionTag: { - serializedName: "properties.exclusionTag", + }, + }, +}; + +export const PrivateEndpoint: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PrivateEndpoint", + modelProperties: { + id: { + serializedName: "id", + readOnly: true, 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 ScalingPlanList: coreClient.CompositeMapper = { +export const PrivateLinkServiceConnectionState: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ScalingPlanList", + className: "PrivateLinkServiceConnectionState", modelProperties: { - value: { - serializedName: "value", + status: { + serializedName: "status", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ScalingPlan", - }, - }, + name: "String", }, }, - nextLink: { - serializedName: "nextLink", - readOnly: true, + description: { + serializedName: "description", + type: { + name: "String", + }, + }, + actionsRequired: { + serializedName: "actionsRequired", type: { name: "String", }, @@ -864,26 +951,26 @@ export const ScalingPlanList: coreClient.CompositeMapper = { }, }; -export const ScalingPlanPooledScheduleList: coreClient.CompositeMapper = { +export const ScalingPlanList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ScalingPlanPooledScheduleList", + className: "ScalingPlanList", modelProperties: { value: { serializedName: "value", + required: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "ScalingPlanPooledSchedule", + className: "ScalingPlan", }, }, }, }, nextLink: { serializedName: "nextLink", - readOnly: true, type: { name: "String", }, @@ -892,13 +979,19 @@ export const ScalingPlanPooledScheduleList: coreClient.CompositeMapper = { }, }; -export const ScalingPlanPersonalSchedulePatch: coreClient.CompositeMapper = { +export const ScalingSchedule: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ScalingPlanPersonalSchedulePatch", + className: "ScalingSchedule", modelProperties: { + name: { + serializedName: "name", + type: { + name: "String", + }, + }, daysOfWeek: { - serializedName: "properties.daysOfWeek", + serializedName: "daysOfWeek", type: { name: "Sequence", element: { @@ -918,207 +1011,197 @@ export const ScalingPlanPersonalSchedulePatch: coreClient.CompositeMapper = { }, }, rampUpStartTime: { - serializedName: "properties.rampUpStartTime", + serializedName: "rampUpStartTime", type: { name: "Composite", className: "Time", }, }, - rampUpAutoStartHosts: { - serializedName: "properties.rampUpAutoStartHosts", - type: { - name: "String", - }, - }, - rampUpStartVMOnConnect: { - serializedName: "properties.rampUpStartVMOnConnect", - type: { - name: "String", - }, - }, - rampUpActionOnDisconnect: { - serializedName: "properties.rampUpActionOnDisconnect", + rampUpLoadBalancingAlgorithm: { + serializedName: "rampUpLoadBalancingAlgorithm", type: { name: "String", }, }, - rampUpMinutesToWaitOnDisconnect: { + rampUpMinimumHostsPct: { constraints: { + InclusiveMaximum: 100, InclusiveMinimum: 0, }, - serializedName: "properties.rampUpMinutesToWaitOnDisconnect", + serializedName: "rampUpMinimumHostsPct", type: { name: "Number", }, }, - rampUpActionOnLogoff: { - serializedName: "properties.rampUpActionOnLogoff", - type: { - name: "String", - }, - }, - rampUpMinutesToWaitOnLogoff: { + rampUpCapacityThresholdPct: { constraints: { - InclusiveMinimum: 0, + InclusiveMaximum: 100, + InclusiveMinimum: 1, }, - serializedName: "properties.rampUpMinutesToWaitOnLogoff", + serializedName: "rampUpCapacityThresholdPct", type: { name: "Number", }, }, peakStartTime: { - serializedName: "properties.peakStartTime", + serializedName: "peakStartTime", type: { name: "Composite", className: "Time", }, }, - peakStartVMOnConnect: { - serializedName: "properties.peakStartVMOnConnect", - type: { - name: "String", - }, - }, - peakActionOnDisconnect: { - serializedName: "properties.peakActionOnDisconnect", + peakLoadBalancingAlgorithm: { + serializedName: "peakLoadBalancingAlgorithm", type: { name: "String", }, }, - peakMinutesToWaitOnDisconnect: { - constraints: { - InclusiveMinimum: 0, - }, - serializedName: "properties.peakMinutesToWaitOnDisconnect", + rampDownStartTime: { + serializedName: "rampDownStartTime", type: { - name: "Number", + name: "Composite", + className: "Time", }, }, - peakActionOnLogoff: { - serializedName: "properties.peakActionOnLogoff", + rampDownLoadBalancingAlgorithm: { + serializedName: "rampDownLoadBalancingAlgorithm", type: { name: "String", }, }, - peakMinutesToWaitOnLogoff: { + rampDownMinimumHostsPct: { constraints: { + InclusiveMaximum: 100, InclusiveMinimum: 0, }, - serializedName: "properties.peakMinutesToWaitOnLogoff", + serializedName: "rampDownMinimumHostsPct", type: { name: "Number", }, }, - rampDownStartTime: { - serializedName: "properties.rampDownStartTime", + rampDownCapacityThresholdPct: { + constraints: { + InclusiveMaximum: 100, + InclusiveMinimum: 1, + }, + serializedName: "rampDownCapacityThresholdPct", type: { - name: "Composite", - className: "Time", + name: "Number", }, }, - rampDownStartVMOnConnect: { - serializedName: "properties.rampDownStartVMOnConnect", + rampDownForceLogoffUsers: { + serializedName: "rampDownForceLogoffUsers", type: { - name: "String", + name: "Boolean", }, }, - rampDownActionOnDisconnect: { - serializedName: "properties.rampDownActionOnDisconnect", + rampDownStopHostsWhen: { + serializedName: "rampDownStopHostsWhen", type: { name: "String", }, }, - rampDownMinutesToWaitOnDisconnect: { - constraints: { - InclusiveMinimum: 0, - }, - serializedName: "properties.rampDownMinutesToWaitOnDisconnect", + rampDownWaitTimeMinutes: { + serializedName: "rampDownWaitTimeMinutes", type: { name: "Number", }, }, - rampDownActionOnLogoff: { - serializedName: "properties.rampDownActionOnLogoff", + rampDownNotificationMessage: { + serializedName: "rampDownNotificationMessage", type: { name: "String", }, }, - rampDownMinutesToWaitOnLogoff: { - constraints: { - InclusiveMinimum: 0, - }, - serializedName: "properties.rampDownMinutesToWaitOnLogoff", - type: { - name: "Number", - }, - }, offPeakStartTime: { - serializedName: "properties.offPeakStartTime", + serializedName: "offPeakStartTime", type: { name: "Composite", className: "Time", }, }, - offPeakStartVMOnConnect: { - serializedName: "properties.offPeakStartVMOnConnect", + offPeakLoadBalancingAlgorithm: { + serializedName: "offPeakLoadBalancingAlgorithm", type: { name: "String", }, }, - offPeakActionOnDisconnect: { - serializedName: "properties.offPeakActionOnDisconnect", + }, + }, +}; + +export const Time: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "Time", + modelProperties: { + hour: { + constraints: { + InclusiveMaximum: 23, + InclusiveMinimum: 0, + }, + serializedName: "hour", + required: true, type: { - name: "String", + name: "Number", }, }, - offPeakMinutesToWaitOnDisconnect: { + minute: { constraints: { + InclusiveMaximum: 59, InclusiveMinimum: 0, }, - serializedName: "properties.offPeakMinutesToWaitOnDisconnect", + serializedName: "minute", + required: true, type: { name: "Number", }, }, - offPeakActionOnLogoff: { - serializedName: "properties.offPeakActionOnLogoff", + }, + }, +}; + +export const ScalingHostPoolReference: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ScalingHostPoolReference", + modelProperties: { + hostPoolArmPath: { + serializedName: "hostPoolArmPath", type: { name: "String", }, }, - offPeakMinutesToWaitOnLogoff: { - constraints: { - InclusiveMinimum: 0, - }, - serializedName: "properties.offPeakMinutesToWaitOnLogoff", + scalingPlanEnabled: { + serializedName: "scalingPlanEnabled", type: { - name: "Number", + name: "Boolean", }, }, }, }, }; -export const ScalingPlanPersonalScheduleList: coreClient.CompositeMapper = { +export const WorkspaceList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ScalingPlanPersonalScheduleList", + className: "WorkspaceList", modelProperties: { value: { serializedName: "value", + required: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "ScalingPlanPersonalSchedule", + className: "Workspace", }, }, }, }, nextLink: { serializedName: "nextLink", - readOnly: true, type: { name: "String", }, @@ -1127,26 +1210,49 @@ export const ScalingPlanPersonalScheduleList: coreClient.CompositeMapper = { }, }; -export const ApplicationGroupList: coreClient.CompositeMapper = { +export const AppAttachPackagePatchProperties: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ApplicationGroupList", + className: "AppAttachPackagePatchProperties", modelProperties: { - value: { - serializedName: "value", + image: { + serializedName: "image", + type: { + name: "Composite", + className: "AppAttachPackageInfoProperties", + }, + }, + hostPoolReferences: { + serializedName: "hostPoolReferences", type: { name: "Sequence", element: { type: { - name: "Composite", - className: "ApplicationGroup", + name: "String", }, }, }, }, - nextLink: { - serializedName: "nextLink", - readOnly: true, + keyVaultURL: { + serializedName: "keyVaultURL", + type: { + name: "String", + }, + }, + failHealthCheckOnStagingFailure: { + serializedName: "failHealthCheckOnStagingFailure", + type: { + name: "String", + }, + }, + packageLookbackUrl: { + serializedName: "packageLookbackUrl", + type: { + name: "String", + }, + }, + customData: { + serializedName: "customData", type: { name: "String", }, @@ -1155,26 +1261,53 @@ export const ApplicationGroupList: coreClient.CompositeMapper = { }, }; -export const StartMenuItemList: coreClient.CompositeMapper = { +export const ApplicationGroupPatchProperties: coreClient.CompositeMapper = { type: { name: "Composite", - className: "StartMenuItemList", + className: "ApplicationGroupPatchProperties", + modelProperties: { + description: { + serializedName: "description", + type: { + name: "String", + }, + }, + friendlyName: { + serializedName: "friendlyName", + type: { + name: "String", + }, + }, + showInFeed: { + serializedName: "showInFeed", + type: { + name: "Boolean", + }, + }, + }, + }, +}; + +export const ApplicationList: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ApplicationList", modelProperties: { value: { serializedName: "value", + required: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "StartMenuItem", + className: "Application", }, }, }, }, nextLink: { serializedName: "nextLink", - readOnly: true, type: { name: "String", }, @@ -1188,78 +1321,84 @@ export const ApplicationPatch: coreClient.CompositeMapper = { name: "Composite", className: "ApplicationPatch", modelProperties: { - tags: { - serializedName: "tags", - nullable: true, + properties: { + serializedName: "properties", type: { - name: "Dictionary", - value: { type: { name: "String" } }, + name: "Composite", + className: "ApplicationPatchProperties", }, }, + }, + }, +}; + +export const ApplicationPatchProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ApplicationPatchProperties", + modelProperties: { description: { - serializedName: "properties.description", + serializedName: "description", type: { name: "String", }, }, friendlyName: { - serializedName: "properties.friendlyName", + serializedName: "friendlyName", type: { name: "String", }, }, filePath: { - serializedName: "properties.filePath", + serializedName: "filePath", type: { name: "String", }, }, commandLineSetting: { - serializedName: "properties.commandLineSetting", + serializedName: "commandLineSetting", type: { name: "String", }, }, commandLineArguments: { - serializedName: "properties.commandLineArguments", + serializedName: "commandLineArguments", type: { name: "String", }, }, showInPortal: { - serializedName: "properties.showInPortal", + serializedName: "showInPortal", type: { name: "Boolean", }, }, iconPath: { - serializedName: "properties.iconPath", + serializedName: "iconPath", type: { name: "String", }, }, iconIndex: { - serializedName: "properties.iconIndex", + serializedName: "iconIndex", type: { name: "Number", }, }, msixPackageFamilyName: { - serializedName: "properties.msixPackageFamilyName", - nullable: true, + serializedName: "msixPackageFamilyName", type: { name: "String", }, }, msixPackageApplicationId: { - serializedName: "properties.msixPackageApplicationId", - nullable: true, + serializedName: "msixPackageApplicationId", type: { name: "String", }, }, applicationType: { - serializedName: "properties.applicationType", + serializedName: "applicationType", type: { name: "String", }, @@ -1268,26 +1407,26 @@ export const ApplicationPatch: coreClient.CompositeMapper = { }, }; -export const ApplicationList: coreClient.CompositeMapper = { +export const DesktopList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ApplicationList", + className: "DesktopList", modelProperties: { value: { serializedName: "value", + required: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "Application", + className: "Desktop", }, }, }, }, nextLink: { serializedName: "nextLink", - readOnly: true, type: { name: "String", }, @@ -1301,22 +1440,30 @@ export const DesktopPatch: coreClient.CompositeMapper = { name: "Composite", className: "DesktopPatch", modelProperties: { - tags: { - serializedName: "tags", - nullable: true, + properties: { + serializedName: "properties", type: { - name: "Dictionary", - value: { type: { name: "String" } }, + name: "Composite", + className: "DesktopPatchProperties", }, }, + }, + }, +}; + +export const DesktopPatchProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "DesktopPatchProperties", + modelProperties: { description: { - serializedName: "properties.description", + serializedName: "description", type: { name: "String", }, }, friendlyName: { - serializedName: "properties.friendlyName", + serializedName: "friendlyName", type: { name: "String", }, @@ -1325,26 +1472,26 @@ export const DesktopPatch: coreClient.CompositeMapper = { }, }; -export const DesktopList: coreClient.CompositeMapper = { +export const StartMenuItemList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "DesktopList", + className: "StartMenuItemList", modelProperties: { value: { serializedName: "value", + required: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "Desktop", + className: "StartMenuItem", }, }, }, }, nextLink: { serializedName: "nextLink", - readOnly: true, type: { name: "String", }, @@ -1353,98 +1500,182 @@ export const DesktopList: coreClient.CompositeMapper = { }, }; -export const RegistrationInfo: coreClient.CompositeMapper = { +export const StartMenuItemProperties: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RegistrationInfo", + className: "StartMenuItemProperties", modelProperties: { - expirationTime: { - serializedName: "expirationTime", - nullable: true, + appAlias: { + serializedName: "appAlias", type: { - name: "DateTime", + name: "String", }, }, - token: { - serializedName: "token", + filePath: { + serializedName: "filePath", type: { name: "String", }, }, - registrationTokenOperation: { - serializedName: "registrationTokenOperation", + commandLineArguments: { + serializedName: "commandLineArguments", + type: { + name: "String", + }, + }, + iconPath: { + serializedName: "iconPath", type: { name: "String", }, }, + iconIndex: { + serializedName: "iconIndex", + type: { + name: "Number", + }, + }, }, }, }; -export const AgentUpdateProperties: coreClient.CompositeMapper = { +export const HostPoolPatchProperties: coreClient.CompositeMapper = { type: { name: "Composite", - className: "AgentUpdateProperties", + className: "HostPoolPatchProperties", modelProperties: { - type: { - serializedName: "type", + friendlyName: { + serializedName: "friendlyName", type: { name: "String", }, }, - useSessionHostLocalTime: { - serializedName: "useSessionHostLocalTime", + description: { + serializedName: "description", type: { - name: "Boolean", + name: "String", }, }, - maintenanceWindowTimeZone: { - serializedName: "maintenanceWindowTimeZone", + customRdpProperty: { + serializedName: "customRdpProperty", type: { name: "String", }, }, - maintenanceWindows: { - serializedName: "maintenanceWindows", - nullable: true, + maxSessionLimit: { + serializedName: "maxSessionLimit", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "MaintenanceWindowProperties", - }, - }, + name: "Number", }, }, - }, - }, -}; - -export const MaintenanceWindowProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "MaintenanceWindowProperties", - modelProperties: { - hour: { - serializedName: "hour", + personalDesktopAssignmentType: { + serializedName: "personalDesktopAssignmentType", + type: { + name: "String", + }, + }, + loadBalancerType: { + serializedName: "loadBalancerType", + type: { + name: "String", + }, + }, + ring: { + serializedName: "ring", type: { name: "Number", }, }, - dayOfWeek: { - serializedName: "dayOfWeek", + validationEnvironment: { + serializedName: "validationEnvironment", type: { - name: "Enum", - allowedValues: [ - "Monday", - "Tuesday", - "Wednesday", - "Thursday", - "Friday", - "Saturday", - "Sunday", - ], + name: "Boolean", + }, + }, + registrationInfo: { + serializedName: "registrationInfo", + type: { + name: "Composite", + className: "RegistrationInfoPatch", + }, + }, + vmTemplate: { + serializedName: "vmTemplate", + type: { + name: "String", + }, + }, + ssoadfsAuthority: { + serializedName: "ssoadfsAuthority", + type: { + name: "String", + }, + }, + ssoClientId: { + serializedName: "ssoClientId", + type: { + name: "String", + }, + }, + ssoClientSecretKeyVaultPath: { + serializedName: "ssoClientSecretKeyVaultPath", + type: { + name: "String", + }, + }, + ssoSecretType: { + serializedName: "ssoSecretType", + type: { + name: "String", + }, + }, + preferredAppGroupType: { + serializedName: "preferredAppGroupType", + type: { + name: "String", + }, + }, + startVMOnConnect: { + serializedName: "startVMOnConnect", + type: { + name: "Boolean", + }, + }, + publicNetworkAccess: { + serializedName: "publicNetworkAccess", + type: { + name: "String", + }, + }, + agentUpdate: { + serializedName: "agentUpdate", + type: { + name: "Composite", + className: "AgentUpdatePatchProperties", + }, + }, + managedPrivateUDP: { + serializedName: "managedPrivateUDP", + type: { + name: "String", + }, + }, + directUDP: { + serializedName: "directUDP", + type: { + name: "String", + }, + }, + publicUDP: { + serializedName: "publicUDP", + type: { + name: "String", + }, + }, + relayUDP: { + serializedName: "relayUDP", + type: { + name: "String", }, }, }, @@ -1458,7 +1689,6 @@ export const RegistrationInfoPatch: coreClient.CompositeMapper = { modelProperties: { expirationTime: { serializedName: "expirationTime", - nullable: true, type: { name: "DateTime", }, @@ -1498,7 +1728,6 @@ export const AgentUpdatePatchProperties: coreClient.CompositeMapper = { }, maintenanceWindows: { serializedName: "maintenanceWindows", - nullable: true, type: { name: "Sequence", element: { @@ -1543,26 +1772,26 @@ export const MaintenanceWindowPatchProperties: coreClient.CompositeMapper = { }, }; -export const HostPoolList: coreClient.CompositeMapper = { +export const ActiveSessionHostConfigurationList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "HostPoolList", + className: "ActiveSessionHostConfigurationList", modelProperties: { value: { serializedName: "value", + required: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "HostPool", + className: "ActiveSessionHostConfiguration", }, }, }, }, nextLink: { serializedName: "nextLink", - readOnly: true, type: { name: "String", }, @@ -1571,26 +1800,20 @@ export const HostPoolList: coreClient.CompositeMapper = { }, }; -export const RegistrationTokenList: coreClient.CompositeMapper = { +export const NetworkInfoProperties: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RegistrationTokenList", + className: "NetworkInfoProperties", modelProperties: { - value: { - serializedName: "value", + subnetId: { + serializedName: "subnetId", + required: true, type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "RegistrationTokenMinimal", - }, - }, + name: "String", }, }, - nextLink: { - serializedName: "nextLink", - readOnly: true, + securityGroupId: { + serializedName: "securityGroupId", type: { name: "String", }, @@ -1599,20 +1822,14 @@ export const RegistrationTokenList: coreClient.CompositeMapper = { }, }; -export const RegistrationTokenMinimal: coreClient.CompositeMapper = { +export const DiskInfoProperties: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RegistrationTokenMinimal", + className: "DiskInfoProperties", modelProperties: { - expirationTime: { - serializedName: "expirationTime", - nullable: true, - type: { - name: "DateTime", - }, - }, - token: { - serializedName: "token", + type: { + serializedName: "type", + required: true, type: { name: "String", }, @@ -1621,115 +1838,81 @@ export const RegistrationTokenMinimal: coreClient.CompositeMapper = { }, }; -export const UserSessionList: coreClient.CompositeMapper = { +export const ImageInfoProperties: coreClient.CompositeMapper = { type: { name: "Composite", - className: "UserSessionList", + className: "ImageInfoProperties", modelProperties: { - value: { - serializedName: "value", + type: { + serializedName: "type", + required: true, type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "UserSession", - }, - }, + name: "String", }, }, - nextLink: { - serializedName: "nextLink", - readOnly: true, + marketplaceInfo: { + serializedName: "marketplaceInfo", type: { - name: "String", + name: "Composite", + className: "MarketplaceInfoProperties", + }, + }, + customInfo: { + serializedName: "customInfo", + type: { + name: "Composite", + className: "CustomInfoProperties", }, }, }, }, }; -export const SessionHostHealthCheckReport: coreClient.CompositeMapper = { +export const MarketplaceInfoProperties: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SessionHostHealthCheckReport", + className: "MarketplaceInfoProperties", modelProperties: { - healthCheckName: { - serializedName: "healthCheckName", - readOnly: true, + offer: { + serializedName: "offer", + required: true, type: { name: "String", }, }, - healthCheckResult: { - serializedName: "healthCheckResult", - readOnly: true, + publisher: { + serializedName: "publisher", + required: true, type: { name: "String", }, }, - additionalFailureDetails: { - serializedName: "additionalFailureDetails", + sku: { + serializedName: "sku", + required: true, type: { - name: "Composite", - className: "SessionHostHealthCheckFailureDetails", + name: "String", }, }, - }, - }, -}; - -export const SessionHostHealthCheckFailureDetails: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "SessionHostHealthCheckFailureDetails", - modelProperties: { - message: { - serializedName: "message", - readOnly: true, - type: { - name: "String", - }, - }, - errorCode: { - serializedName: "errorCode", - readOnly: true, - type: { - name: "Number", - }, - }, - lastHealthCheckDateTime: { - serializedName: "lastHealthCheckDateTime", - readOnly: true, - type: { - name: "DateTime", - }, + exactVersion: { + serializedName: "exactVersion", + required: true, + type: { + name: "String", }, }, }, - }; + }, +}; -export const SessionHostList: coreClient.CompositeMapper = { +export const CustomInfoProperties: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SessionHostList", + className: "CustomInfoProperties", modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "SessionHost", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, + resourceId: { + serializedName: "resourceId", + required: true, type: { name: "String", }, @@ -1738,104 +1921,96 @@ export const SessionHostList: coreClient.CompositeMapper = { }, }; -export const MsixPackageDependencies: coreClient.CompositeMapper = { +export const DomainInfoProperties: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MsixPackageDependencies", + className: "DomainInfoProperties", modelProperties: { - dependencyName: { - serializedName: "dependencyName", + joinType: { + serializedName: "joinType", + required: true, type: { name: "String", }, }, - publisher: { - serializedName: "publisher", + activeDirectoryInfo: { + serializedName: "activeDirectoryInfo", type: { - name: "String", + name: "Composite", + className: "ActiveDirectoryInfoProperties", }, }, - minVersion: { - serializedName: "minVersion", + azureActiveDirectoryInfo: { + serializedName: "azureActiveDirectoryInfo", type: { - name: "String", + name: "Composite", + className: "AzureActiveDirectoryInfoProperties", }, }, }, }, }; -export const MsixPackageApplications: coreClient.CompositeMapper = { +export const ActiveDirectoryInfoProperties: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MsixPackageApplications", + className: "ActiveDirectoryInfoProperties", modelProperties: { - appId: { - serializedName: "appId", + domainCredentials: { + serializedName: "domainCredentials", type: { - name: "String", + name: "Composite", + className: "KeyVaultCredentialsProperties", }, }, - description: { - serializedName: "description", + ouPath: { + serializedName: "ouPath", + required: true, type: { name: "String", }, }, - appUserModelID: { - serializedName: "appUserModelID", + domainName: { + serializedName: "domainName", type: { name: "String", }, }, - friendlyName: { - serializedName: "friendlyName", + }, + }, +}; + +export const KeyVaultCredentialsProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "KeyVaultCredentialsProperties", + modelProperties: { + usernameKeyVaultSecretUri: { + serializedName: "usernameKeyVaultSecretUri", + required: true, type: { name: "String", }, }, - iconImageName: { - serializedName: "iconImageName", + passwordKeyVaultSecretUri: { + serializedName: "passwordKeyVaultSecretUri", + required: true, type: { name: "String", }, }, - rawIcon: { - serializedName: "rawIcon", - type: { - name: "ByteArray", - }, - }, - rawPng: { - serializedName: "rawPng", - type: { - name: "ByteArray", - }, - }, }, }, }; -export const MsixPackageList: coreClient.CompositeMapper = { +export const AzureActiveDirectoryInfoProperties: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MsixPackageList", + className: "AzureActiveDirectoryInfoProperties", modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "MsixPackage", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, + mdmProviderGuid: { + serializedName: "mdmProviderGuid", + required: true, type: { name: "String", }, @@ -1844,48 +2019,46 @@ export const MsixPackageList: coreClient.CompositeMapper = { }, }; -export const ImportPackageInfoRequest: coreClient.CompositeMapper = { +export const SecurityInfoProperties: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ImportPackageInfoRequest", + className: "SecurityInfoProperties", modelProperties: { - path: { - serializedName: "path", + type: { + serializedName: "type", type: { name: "String", }, }, - packageArchitecture: { - serializedName: "packageArchitecture", - nullable: true, + secureBootEnabled: { + serializedName: "secureBootEnabled", type: { - name: "String", + name: "Boolean", + }, + }, + vTpmEnabled: { + serializedName: "vTpmEnabled", + type: { + name: "Boolean", }, }, }, }, }; -export const AppAttachPackageList: coreClient.CompositeMapper = { +export const BootDiagnosticsInfoProperties: coreClient.CompositeMapper = { type: { name: "Composite", - className: "AppAttachPackageList", + className: "BootDiagnosticsInfoProperties", modelProperties: { - value: { - serializedName: "value", + enabled: { + serializedName: "enabled", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "AppAttachPackage", - }, - }, + name: "Boolean", }, }, - nextLink: { - serializedName: "nextLink", - readOnly: true, + storageUri: { + serializedName: "storageUri", type: { name: "String", }, @@ -1894,44 +2067,41 @@ export const AppAttachPackageList: coreClient.CompositeMapper = { }, }; -export const AppAttachPackageProperties: coreClient.CompositeMapper = { +export const MsixImageURI: coreClient.CompositeMapper = { type: { name: "Composite", - className: "AppAttachPackageProperties", + className: "MsixImageURI", modelProperties: { - provisioningState: { - serializedName: "provisioningState", - readOnly: true, + uri: { + serializedName: "uri", type: { name: "String", }, }, - image: { - serializedName: "image", - type: { - name: "Composite", - className: "AppAttachPackageInfoProperties", - }, - }, - hostPoolReferences: { - serializedName: "hostPoolReferences", + }, + }, +}; + +export const ExpandMsixImageList: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ExpandMsixImageList", + modelProperties: { + value: { + serializedName: "value", + required: true, type: { name: "Sequence", element: { type: { - name: "String", + name: "Composite", + className: "ExpandMsixImage", }, }, }, }, - keyVaultURL: { - serializedName: "keyVaultURL", - type: { - name: "String", - }, - }, - failHealthCheckOnStagingFailure: { - serializedName: "failHealthCheckOnStagingFailure", + nextLink: { + serializedName: "nextLink", type: { name: "String", }, @@ -1940,10 +2110,10 @@ export const AppAttachPackageProperties: coreClient.CompositeMapper = { }, }; -export const AppAttachPackageInfoProperties: coreClient.CompositeMapper = { +export const ExpandMsixImageProperties: coreClient.CompositeMapper = { type: { name: "Composite", - className: "AppAttachPackageInfoProperties", + className: "ExpandMsixImageProperties", modelProperties: { packageAlias: { serializedName: "packageAlias", @@ -1977,7 +2147,6 @@ export const AppAttachPackageInfoProperties: coreClient.CompositeMapper = { }, displayName: { serializedName: "displayName", - nullable: true, type: { name: "String", }, @@ -2002,7 +2171,6 @@ export const AppAttachPackageInfoProperties: coreClient.CompositeMapper = { }, packageDependencies: { serializedName: "packageDependencies", - nullable: true, type: { name: "Sequence", element: { @@ -2039,132 +2207,82 @@ export const AppAttachPackageInfoProperties: coreClient.CompositeMapper = { }, certificateName: { serializedName: "certificateName", - nullable: true, type: { name: "String", }, }, certificateExpiry: { serializedName: "certificateExpiry", - nullable: true, type: { name: "DateTime", }, }, - isPackageTimestamped: { - serializedName: "isPackageTimestamped", - nullable: true, - type: { - name: "String", - }, - }, }, }, }; -export const ErrorResponse: coreClient.CompositeMapper = { +export const ImportPackageInfoRequest: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ErrorResponse", + className: "ImportPackageInfoRequest", modelProperties: { - error: { - serializedName: "error", + path: { + serializedName: "path", type: { - name: "Composite", - className: "ErrorDetail", + name: "String", + }, + }, + packageArchitecture: { + serializedName: "packageArchitecture", + type: { + name: "String", }, }, }, }, }; -export const ErrorDetail: coreClient.CompositeMapper = { +export const RegistrationTokenList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ErrorDetail", + className: "RegistrationTokenList", modelProperties: { - code: { - serializedName: "code", - readOnly: true, + value: { + serializedName: "value", type: { - name: "String", + name: "Sequence", + element: { + type: { + name: "Composite", + className: "RegistrationTokenMinimal", + }, + }, }, }, - message: { - serializedName: "message", + nextLink: { + serializedName: "nextLink", readOnly: true, type: { name: "String", }, }, - target: { - serializedName: "target", - readOnly: true, - type: { - name: "String", - }, - }, - details: { - serializedName: "details", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ErrorDetail", - }, - }, - }, - }, - additionalInfo: { - serializedName: "additionalInfo", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ErrorAdditionalInfo", - }, - }, - }, - }, }, }, }; -export const ErrorAdditionalInfo: coreClient.CompositeMapper = { +export const RegistrationTokenMinimal: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ErrorAdditionalInfo", + className: "RegistrationTokenMinimal", modelProperties: { - type: { - serializedName: "type", - readOnly: true, - type: { - name: "String", - }, - }, - info: { - serializedName: "info", - readOnly: true, + expirationTime: { + serializedName: "expirationTime", type: { - name: "Dictionary", - value: { type: { name: "any" } }, + name: "DateTime", }, }, - }, - }, -}; - -export const MsixImageURI: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "MsixImageURI", - modelProperties: { - uri: { - serializedName: "uri", + token: { + serializedName: "token", type: { name: "String", }, @@ -2173,26 +2291,26 @@ export const MsixImageURI: coreClient.CompositeMapper = { }, }; -export const ExpandMsixImageList: coreClient.CompositeMapper = { +export const MsixPackageList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ExpandMsixImageList", + className: "MsixPackageList", modelProperties: { value: { serializedName: "value", + required: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "ExpandMsixImage", + className: "MsixPackage", }, }, }, }, nextLink: { serializedName: "nextLink", - readOnly: true, type: { name: "String", }, @@ -2201,37 +2319,25 @@ export const ExpandMsixImageList: coreClient.CompositeMapper = { }, }; -export const AppAttachPackagePatchProperties: coreClient.CompositeMapper = { +export const MsixPackagePatchProperties: coreClient.CompositeMapper = { type: { name: "Composite", - className: "AppAttachPackagePatchProperties", + className: "MsixPackagePatchProperties", modelProperties: { - image: { - serializedName: "image", - type: { - name: "Composite", - className: "AppAttachPackageInfoProperties", - }, - }, - hostPoolReferences: { - serializedName: "hostPoolReferences", + isActive: { + serializedName: "isActive", type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, + name: "Boolean", }, }, - keyVaultURL: { - serializedName: "keyVaultURL", + isRegularRegistration: { + serializedName: "isRegularRegistration", type: { - name: "String", + name: "Boolean", }, }, - failHealthCheckOnStagingFailure: { - serializedName: "failHealthCheckOnStagingFailure", + displayName: { + serializedName: "displayName", type: { name: "String", }, @@ -2240,86 +2346,55 @@ export const AppAttachPackagePatchProperties: coreClient.CompositeMapper = { }, }; -export const SendMessage: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SendMessage", - modelProperties: { - messageTitle: { - serializedName: "messageTitle", - type: { - name: "String", +export const PrivateEndpointConnectionListResultWithSystemData: coreClient.CompositeMapper = + { + type: { + name: "Composite", + className: "PrivateEndpointConnectionListResultWithSystemData", + modelProperties: { + value: { + serializedName: "value", + required: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "PrivateEndpointConnectionWithSystemData", + }, + }, + }, }, - }, - messageBody: { - serializedName: "messageBody", - type: { - name: "String", + nextLink: { + serializedName: "nextLink", + type: { + name: "String", + }, }, }, }, - }, -}; + }; -export const PrivateEndpointConnection: coreClient.CompositeMapper = { +export const PrivateLinkResourceListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "PrivateEndpointConnection", + className: "PrivateLinkResourceListResult", modelProperties: { - ...Resource.type.modelProperties, - groupIds: { - serializedName: "properties.groupIds", - readOnly: true, + value: { + serializedName: "value", + required: true, type: { name: "Sequence", element: { type: { - name: "String", + name: "Composite", + className: "PrivateLinkResource", }, }, }, }, - privateEndpoint: { - serializedName: "properties.privateEndpoint", - type: { - name: "Composite", - className: "PrivateEndpoint", - }, - }, - privateLinkServiceConnectionState: { - serializedName: "properties.privateLinkServiceConnectionState", - type: { - name: "Composite", - className: "PrivateLinkServiceConnectionState", - }, - }, - provisioningState: { - serializedName: "properties.provisioningState", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const TrackedResource: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "TrackedResource", - modelProperties: { - ...Resource.type.modelProperties, - tags: { - serializedName: "tags", - type: { - name: "Dictionary", - value: { type: { name: "String" } }, - }, - }, - location: { - serializedName: "location", - required: true, + nextLink: { + serializedName: "nextLink", type: { name: "String", }, @@ -2328,21 +2403,20 @@ export const TrackedResource: coreClient.CompositeMapper = { }, }; -export const PrivateLinkResource: coreClient.CompositeMapper = { +export const PrivateLinkResourceProperties: coreClient.CompositeMapper = { type: { name: "Composite", - className: "PrivateLinkResource", + className: "PrivateLinkResourceProperties", modelProperties: { - ...Resource.type.modelProperties, groupId: { - serializedName: "properties.groupId", + serializedName: "groupId", readOnly: true, type: { name: "String", }, }, requiredMembers: { - serializedName: "properties.requiredMembers", + serializedName: "requiredMembers", readOnly: true, type: { name: "Sequence", @@ -2354,7 +2428,7 @@ export const PrivateLinkResource: coreClient.CompositeMapper = { }, }, requiredZoneNames: { - serializedName: "properties.requiredZoneNames", + serializedName: "requiredZoneNames", type: { name: "Sequence", element: { @@ -2368,390 +2442,2163 @@ export const PrivateLinkResource: coreClient.CompositeMapper = { }, }; -export const ScalingPlanPooledSchedule: coreClient.CompositeMapper = { +export const SessionHostConfigurationList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ScalingPlanPooledSchedule", + className: "SessionHostConfigurationList", modelProperties: { - ...Resource.type.modelProperties, - daysOfWeek: { - serializedName: "properties.daysOfWeek", + value: { + serializedName: "value", + required: true, type: { name: "Sequence", element: { type: { - name: "Enum", - allowedValues: [ - "Monday", - "Tuesday", - "Wednesday", - "Thursday", - "Friday", - "Saturday", - "Sunday", - ], + name: "Composite", + className: "SessionHostConfiguration", }, }, }, }, - rampUpStartTime: { - serializedName: "properties.rampUpStartTime", - type: { - name: "Composite", - className: "Time", - }, - }, - rampUpLoadBalancingAlgorithm: { - serializedName: "properties.rampUpLoadBalancingAlgorithm", + nextLink: { + serializedName: "nextLink", type: { name: "String", }, }, - rampUpMinimumHostsPct: { - constraints: { - InclusiveMaximum: 100, - InclusiveMinimum: 0, - }, - serializedName: "properties.rampUpMinimumHostsPct", - type: { - name: "Number", - }, - }, - rampUpCapacityThresholdPct: { - constraints: { - InclusiveMaximum: 100, - InclusiveMinimum: 1, - }, - serializedName: "properties.rampUpCapacityThresholdPct", + }, + }, +}; + +export const SessionHostConfigurationPatch: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SessionHostConfigurationPatch", + modelProperties: { + properties: { + serializedName: "properties", type: { - name: "Number", + name: "Composite", + className: "SessionHostConfigurationPatchProperties", }, }, - peakStartTime: { - serializedName: "properties.peakStartTime", + }, + }, +}; + +export const SessionHostConfigurationPatchProperties: coreClient.CompositeMapper = + { + type: { + name: "Composite", + className: "SessionHostConfigurationPatchProperties", + modelProperties: { + friendlyName: { + constraints: { + MaxLength: 260, + }, + serializedName: "friendlyName", + type: { + name: "String", + }, + }, + vmTags: { + serializedName: "vmTags", + type: { + name: "Dictionary", + value: { type: { name: "String" } }, + }, + }, + vmLocation: { + serializedName: "vmLocation", + type: { + name: "String", + }, + }, + vmResourceGroup: { + serializedName: "vmResourceGroup", + type: { + name: "String", + }, + }, + vmNamePrefix: { + constraints: { + MaxLength: 11, + }, + serializedName: "vmNamePrefix", + type: { + name: "String", + }, + }, + availabilityZones: { + serializedName: "availabilityZones", + type: { + name: "Sequence", + element: { + type: { + name: "Number", + }, + }, + }, + }, + networkInfo: { + serializedName: "networkInfo", + type: { + name: "Composite", + className: "NetworkInfoPatchProperties", + }, + }, + vmSizeId: { + serializedName: "vmSizeId", + type: { + name: "String", + }, + }, + diskInfo: { + serializedName: "diskInfo", + type: { + name: "Composite", + className: "DiskInfoPatchProperties", + }, + }, + customConfigurationScriptUrl: { + serializedName: "customConfigurationScriptUrl", + type: { + name: "String", + }, + }, + imageInfo: { + serializedName: "imageInfo", + type: { + name: "Composite", + className: "ImageInfoPatchProperties", + }, + }, + domainInfo: { + serializedName: "domainInfo", + type: { + name: "Composite", + className: "DomainInfoPatchProperties", + }, + }, + securityInfo: { + serializedName: "securityInfo", + type: { + name: "Composite", + className: "SecurityInfoPatchProperties", + }, + }, + vmAdminCredentials: { + serializedName: "vmAdminCredentials", + type: { + name: "Composite", + className: "KeyVaultCredentialsPatchProperties", + }, + }, + bootDiagnosticsInfo: { + serializedName: "bootDiagnosticsInfo", + type: { + name: "Composite", + className: "BootDiagnosticsInfoPatchProperties", + }, + }, + }, + }, + }; + +export const NetworkInfoPatchProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "NetworkInfoPatchProperties", + modelProperties: { + subnetId: { + serializedName: "subnetId", + type: { + name: "String", + }, + }, + securityGroupId: { + serializedName: "securityGroupId", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const DiskInfoPatchProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "DiskInfoPatchProperties", + modelProperties: { + type: { + serializedName: "type", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const ImageInfoPatchProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ImageInfoPatchProperties", + modelProperties: { + type: { + serializedName: "type", + type: { + name: "String", + }, + }, + marketplaceInfo: { + serializedName: "marketplaceInfo", + type: { + name: "Composite", + className: "MarketplaceInfoPatchProperties", + }, + }, + customInfo: { + serializedName: "customInfo", + type: { + name: "Composite", + className: "CustomInfoPatchProperties", + }, + }, + }, + }, +}; + +export const MarketplaceInfoPatchProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MarketplaceInfoPatchProperties", + modelProperties: { + offer: { + serializedName: "offer", + type: { + name: "String", + }, + }, + publisher: { + serializedName: "publisher", + type: { + name: "String", + }, + }, + sku: { + serializedName: "sku", + type: { + name: "String", + }, + }, + exactVersion: { + serializedName: "exactVersion", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const CustomInfoPatchProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "CustomInfoPatchProperties", + modelProperties: { + resourceId: { + serializedName: "resourceId", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const DomainInfoPatchProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "DomainInfoPatchProperties", + modelProperties: { + activeDirectoryInfo: { + serializedName: "activeDirectoryInfo", + type: { + name: "Composite", + className: "ActiveDirectoryInfoPatchProperties", + }, + }, + }, + }, +}; + +export const ActiveDirectoryInfoPatchProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ActiveDirectoryInfoPatchProperties", + modelProperties: { + domainCredentials: { + serializedName: "domainCredentials", + type: { + name: "Composite", + className: "KeyVaultCredentialsPatchProperties", + }, + }, + }, + }, +}; + +export const KeyVaultCredentialsPatchProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "KeyVaultCredentialsPatchProperties", + modelProperties: { + usernameKeyVaultSecretUri: { + serializedName: "usernameKeyVaultSecretUri", + type: { + name: "String", + }, + }, + passwordKeyVaultSecretUri: { + serializedName: "passwordKeyVaultSecretUri", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const SecurityInfoPatchProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SecurityInfoPatchProperties", + modelProperties: { + type: { + serializedName: "type", + type: { + name: "String", + }, + }, + secureBootEnabled: { + serializedName: "secureBootEnabled", + type: { + name: "Boolean", + }, + }, + vTpmEnabled: { + serializedName: "vTpmEnabled", + type: { + name: "Boolean", + }, + }, + }, + }, +}; + +export const BootDiagnosticsInfoPatchProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "BootDiagnosticsInfoPatchProperties", + modelProperties: { + enabled: { + serializedName: "enabled", + type: { + name: "Boolean", + }, + }, + storageUri: { + serializedName: "storageUri", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const SessionHostManagementList: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SessionHostManagementList", + modelProperties: { + value: { + serializedName: "value", + required: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "SessionHostManagement", + }, + }, + }, + }, + nextLink: { + serializedName: "nextLink", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const HostPoolUpdateConfigurationProperties: coreClient.CompositeMapper = + { + type: { + name: "Composite", + className: "HostPoolUpdateConfigurationProperties", + modelProperties: { + deleteOriginalVm: { + serializedName: "deleteOriginalVm", + type: { + name: "Boolean", + }, + }, + maxVmsRemoved: { + constraints: { + InclusiveMinimum: 1, + }, + serializedName: "maxVmsRemoved", + required: true, + type: { + name: "Number", + }, + }, + logOffDelayMinutes: { + serializedName: "logOffDelayMinutes", + required: true, + type: { + name: "Number", + }, + }, + logOffMessage: { + defaultValue: "", + constraints: { + MaxLength: 260, + }, + serializedName: "logOffMessage", + type: { + name: "String", + }, + }, + }, + }, + }; + +export const SessionHostManagementPatch: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SessionHostManagementPatch", + modelProperties: { + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "SessionHostManagementPatchProperties", + }, + }, + }, + }, +}; + +export const SessionHostManagementPatchProperties: coreClient.CompositeMapper = + { + type: { + name: "Composite", + className: "SessionHostManagementPatchProperties", + modelProperties: { + scheduledDateTimeZone: { + serializedName: "scheduledDateTimeZone", + type: { + name: "String", + }, + }, + update: { + serializedName: "update", + type: { + name: "Composite", + className: "HostPoolUpdateConfigurationPatchProperties", + }, + }, + }, + }, + }; + +export const HostPoolUpdateConfigurationPatchProperties: coreClient.CompositeMapper = + { + type: { + name: "Composite", + className: "HostPoolUpdateConfigurationPatchProperties", + modelProperties: { + deleteOriginalVm: { + serializedName: "deleteOriginalVm", + type: { + name: "Boolean", + }, + }, + maxVmsRemoved: { + constraints: { + InclusiveMinimum: 1, + }, + serializedName: "maxVmsRemoved", + type: { + name: "Number", + }, + }, + logOffDelayMinutes: { + serializedName: "logOffDelayMinutes", + type: { + name: "Number", + }, + }, + logOffMessage: { + constraints: { + MaxLength: 260, + }, + serializedName: "logOffMessage", + type: { + name: "String", + }, + }, + }, + }, + }; + +export const HostPoolUpdateControlParameter: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "HostPoolUpdateControlParameter", + modelProperties: { + action: { + serializedName: "action", + required: true, + type: { + name: "String", + }, + }, + cancelMessage: { + constraints: { + MaxLength: 260, + }, + serializedName: "cancelMessage", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const UpdateSessionHostsRequestBody: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "UpdateSessionHostsRequestBody", + modelProperties: { + scheduledDateTime: { + serializedName: "scheduledDateTime", + type: { + name: "DateTime", + }, + }, + scheduledDateTimeZone: { + serializedName: "scheduledDateTimeZone", + type: { + name: "String", + }, + }, + update: { + serializedName: "update", + type: { + name: "Composite", + className: "HostPoolUpdateConfigurationPatchProperties", + }, + }, + }, + }, +}; + +export const SessionHostManagementUpdateStatus: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SessionHostManagementUpdateStatus", + modelProperties: { + id: { + serializedName: "id", + type: { + name: "String", + }, + }, + name: { + serializedName: "name", + type: { + name: "String", + }, + }, + percentComplete: { + constraints: { + InclusiveMaximum: 100, + InclusiveMinimum: 0, + }, + serializedName: "percentComplete", + type: { + name: "Number", + }, + }, + startTime: { + serializedName: "startTime", + type: { + name: "DateTime", + }, + }, + endTime: { + serializedName: "endTime", + type: { + name: "DateTime", + }, + }, + error: { + serializedName: "error", + type: { + name: "Composite", + className: "ErrorDetail", + }, + }, + status: { + serializedName: "status", + required: true, + readOnly: true, + type: { + name: "String", + }, + }, + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "SessionHostManagementUpdateStatusProperties", + }, + }, + }, + }, +}; + +export const SessionHostManagementUpdateStatusProperties: coreClient.CompositeMapper = + { + type: { + name: "Composite", + className: "SessionHostManagementUpdateStatusProperties", + modelProperties: { + correlationId: { + serializedName: "correlationId", + type: { + name: "String", + }, + }, + progress: { + serializedName: "progress", + type: { + name: "Composite", + className: "SessionHostManagementOperationProgress", + }, + }, + scheduledDateTime: { + serializedName: "scheduledDateTime", + type: { + name: "DateTime", + }, + }, + sessionHostManagement: { + serializedName: "sessionHostManagement", + type: { + name: "Composite", + className: "SessionHostManagement", + }, + }, + }, + }, + }; + +export const SessionHostManagementOperationProgress: coreClient.CompositeMapper = + { + type: { + name: "Composite", + className: "SessionHostManagementOperationProgress", + modelProperties: { + executionStartTime: { + serializedName: "executionStartTime", + type: { + name: "DateTime", + }, + }, + totalSessionHosts: { + serializedName: "totalSessionHosts", + type: { + name: "Number", + }, + }, + sessionHostsInProgress: { + serializedName: "sessionHostsInProgress", + type: { + name: "Number", + }, + }, + sessionHostsCompleted: { + serializedName: "sessionHostsCompleted", + type: { + name: "Number", + }, + }, + sessionHostsRollbackFailed: { + serializedName: "sessionHostsRollbackFailed", + type: { + name: "Number", + }, + }, + }, + }, + }; + +export const SessionHostList: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SessionHostList", + modelProperties: { + value: { + serializedName: "value", + required: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "SessionHost", + }, + }, + }, + }, + nextLink: { + serializedName: "nextLink", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const SessionHostHealthCheckReport: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SessionHostHealthCheckReport", + modelProperties: { + healthCheckName: { + serializedName: "healthCheckName", + readOnly: true, + type: { + name: "String", + }, + }, + healthCheckResult: { + serializedName: "healthCheckResult", + readOnly: true, + type: { + name: "String", + }, + }, + additionalFailureDetails: { + serializedName: "additionalFailureDetails", + type: { + name: "Composite", + className: "SessionHostHealthCheckFailureDetails", + }, + }, + }, + }, +}; + +export const SessionHostHealthCheckFailureDetails: coreClient.CompositeMapper = + { + type: { + name: "Composite", + className: "SessionHostHealthCheckFailureDetails", + modelProperties: { + message: { + serializedName: "message", + readOnly: true, + type: { + name: "String", + }, + }, + errorCode: { + serializedName: "errorCode", + readOnly: true, + type: { + name: "Number", + }, + }, + lastHealthCheckDateTime: { + serializedName: "lastHealthCheckDateTime", + readOnly: true, + type: { + name: "DateTime", + }, + }, + }, + }, + }; + +export const SessionHostPatchProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SessionHostPatchProperties", + modelProperties: { + allowNewSession: { + serializedName: "allowNewSession", + type: { + name: "Boolean", + }, + }, + assignedUser: { + serializedName: "assignedUser", + type: { + name: "String", + }, + }, + friendlyName: { + serializedName: "friendlyName", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const UserSessionList: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "UserSessionList", + modelProperties: { + value: { + serializedName: "value", + required: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "UserSession", + }, + }, + }, + }, + nextLink: { + serializedName: "nextLink", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const SendMessage: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SendMessage", + modelProperties: { + messageTitle: { + serializedName: "messageTitle", + type: { + name: "String", + }, + }, + messageBody: { + serializedName: "messageBody", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const ScalingPlanPatch: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ScalingPlanPatch", + modelProperties: { + tags: { + serializedName: "tags", + type: { + name: "Dictionary", + value: { type: { name: "String" } }, + }, + }, + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "ScalingPlanPatchProperties", + }, + }, + }, + }, +}; + +export const ScalingPlanPatchProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ScalingPlanPatchProperties", + modelProperties: { + description: { + serializedName: "description", + type: { + name: "String", + }, + }, + friendlyName: { + serializedName: "friendlyName", + type: { + name: "String", + }, + }, + timeZone: { + serializedName: "timeZone", + type: { + name: "String", + }, + }, + exclusionTag: { + serializedName: "exclusionTag", + type: { + name: "String", + }, + }, + schedules: { + serializedName: "schedules", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ScalingSchedule", + }, + }, + }, + }, + hostPoolReferences: { + serializedName: "hostPoolReferences", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ScalingHostPoolReference", + }, + }, + }, + }, + }, + }, +}; + +export const ScalingPlanPersonalScheduleList: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ScalingPlanPersonalScheduleList", + modelProperties: { + value: { + serializedName: "value", + required: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ScalingPlanPersonalSchedule", + }, + }, + }, + }, + nextLink: { + serializedName: "nextLink", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const ScalingPlanPersonalSchedulePatch: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ScalingPlanPersonalSchedulePatch", + modelProperties: { + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "ScalingPlanPersonalSchedulePatchProperties", + }, + }, + }, + }, +}; + +export const ScalingPlanPersonalSchedulePatchProperties: coreClient.CompositeMapper = + { + type: { + name: "Composite", + className: "ScalingPlanPersonalSchedulePatchProperties", + modelProperties: { + daysOfWeek: { + serializedName: "daysOfWeek", + type: { + name: "Sequence", + element: { + type: { + name: "Enum", + allowedValues: [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday", + "Sunday", + ], + }, + }, + }, + }, + rampUpStartTime: { + serializedName: "rampUpStartTime", + type: { + name: "Composite", + className: "Time", + }, + }, + rampUpAutoStartHosts: { + serializedName: "rampUpAutoStartHosts", + type: { + name: "String", + }, + }, + rampUpStartVMOnConnect: { + serializedName: "rampUpStartVMOnConnect", + type: { + name: "String", + }, + }, + rampUpActionOnDisconnect: { + serializedName: "rampUpActionOnDisconnect", + type: { + name: "String", + }, + }, + rampUpMinutesToWaitOnDisconnect: { + constraints: { + InclusiveMinimum: 0, + }, + serializedName: "rampUpMinutesToWaitOnDisconnect", + type: { + name: "Number", + }, + }, + rampUpActionOnLogoff: { + serializedName: "rampUpActionOnLogoff", + type: { + name: "String", + }, + }, + rampUpMinutesToWaitOnLogoff: { + constraints: { + InclusiveMinimum: 0, + }, + serializedName: "rampUpMinutesToWaitOnLogoff", + type: { + name: "Number", + }, + }, + peakStartTime: { + serializedName: "peakStartTime", + type: { + name: "Composite", + className: "Time", + }, + }, + peakStartVMOnConnect: { + serializedName: "peakStartVMOnConnect", + type: { + name: "String", + }, + }, + peakActionOnDisconnect: { + serializedName: "peakActionOnDisconnect", + type: { + name: "String", + }, + }, + peakMinutesToWaitOnDisconnect: { + constraints: { + InclusiveMinimum: 0, + }, + serializedName: "peakMinutesToWaitOnDisconnect", + type: { + name: "Number", + }, + }, + peakActionOnLogoff: { + serializedName: "peakActionOnLogoff", + type: { + name: "String", + }, + }, + peakMinutesToWaitOnLogoff: { + constraints: { + InclusiveMinimum: 0, + }, + serializedName: "peakMinutesToWaitOnLogoff", + type: { + name: "Number", + }, + }, + rampDownStartTime: { + serializedName: "rampDownStartTime", + type: { + name: "Composite", + className: "Time", + }, + }, + rampDownStartVMOnConnect: { + serializedName: "rampDownStartVMOnConnect", + type: { + name: "String", + }, + }, + rampDownActionOnDisconnect: { + serializedName: "rampDownActionOnDisconnect", + type: { + name: "String", + }, + }, + rampDownMinutesToWaitOnDisconnect: { + constraints: { + InclusiveMinimum: 0, + }, + serializedName: "rampDownMinutesToWaitOnDisconnect", + type: { + name: "Number", + }, + }, + rampDownActionOnLogoff: { + serializedName: "rampDownActionOnLogoff", + type: { + name: "String", + }, + }, + rampDownMinutesToWaitOnLogoff: { + constraints: { + InclusiveMinimum: 0, + }, + serializedName: "rampDownMinutesToWaitOnLogoff", + type: { + name: "Number", + }, + }, + offPeakStartTime: { + serializedName: "offPeakStartTime", + type: { + name: "Composite", + className: "Time", + }, + }, + offPeakStartVMOnConnect: { + serializedName: "offPeakStartVMOnConnect", + type: { + name: "String", + }, + }, + offPeakActionOnDisconnect: { + serializedName: "offPeakActionOnDisconnect", + type: { + name: "String", + }, + }, + offPeakMinutesToWaitOnDisconnect: { + constraints: { + InclusiveMinimum: 0, + }, + serializedName: "offPeakMinutesToWaitOnDisconnect", + type: { + name: "Number", + }, + }, + offPeakActionOnLogoff: { + serializedName: "offPeakActionOnLogoff", + type: { + name: "String", + }, + }, + offPeakMinutesToWaitOnLogoff: { + constraints: { + InclusiveMinimum: 0, + }, + serializedName: "offPeakMinutesToWaitOnLogoff", + type: { + name: "Number", + }, + }, + }, + }, + }; + +export const ScalingPlanPooledScheduleList: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ScalingPlanPooledScheduleList", + modelProperties: { + value: { + serializedName: "value", + required: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ScalingPlanPooledSchedule", + }, + }, + }, + }, + nextLink: { + serializedName: "nextLink", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const ScalingPlanPooledSchedulePatchProperties: coreClient.CompositeMapper = + { + type: { + name: "Composite", + className: "ScalingPlanPooledSchedulePatchProperties", + modelProperties: { + name: { + serializedName: "name", + type: { + name: "String", + }, + }, + daysOfWeek: { + serializedName: "daysOfWeek", + type: { + name: "Sequence", + element: { + type: { + name: "Enum", + allowedValues: [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday", + "Sunday", + ], + }, + }, + }, + }, + rampUpStartTime: { + serializedName: "rampUpStartTime", + type: { + name: "Composite", + className: "Time", + }, + }, + rampUpLoadBalancingAlgorithm: { + serializedName: "rampUpLoadBalancingAlgorithm", + type: { + name: "String", + }, + }, + rampUpMinimumHostsPct: { + constraints: { + InclusiveMaximum: 100, + InclusiveMinimum: 0, + }, + serializedName: "rampUpMinimumHostsPct", + type: { + name: "Number", + }, + }, + rampUpCapacityThresholdPct: { + constraints: { + InclusiveMaximum: 100, + InclusiveMinimum: 1, + }, + serializedName: "rampUpCapacityThresholdPct", + 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: { + constraints: { + InclusiveMaximum: 100, + InclusiveMinimum: 0, + }, + serializedName: "rampDownMinimumHostsPct", + type: { + name: "Number", + }, + }, + rampDownCapacityThresholdPct: { + constraints: { + InclusiveMaximum: 100, + InclusiveMinimum: 1, + }, + serializedName: "rampDownCapacityThresholdPct", + 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 WorkspacePatch: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "WorkspacePatch", + modelProperties: { + tags: { + serializedName: "tags", + type: { + name: "Dictionary", + value: { type: { name: "String" } }, + }, + }, + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "WorkspacePatchProperties", + }, + }, + }, + }, +}; + +export const WorkspacePatchProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "WorkspacePatchProperties", + modelProperties: { + description: { + serializedName: "description", + type: { + name: "String", + }, + }, + friendlyName: { + serializedName: "friendlyName", + type: { + name: "String", + }, + }, + applicationGroupReferences: { + serializedName: "applicationGroupReferences", + type: { + name: "Sequence", + element: { + type: { + name: "String", + }, + }, + }, + }, + publicNetworkAccess: { + serializedName: "publicNetworkAccess", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const TrackedResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "TrackedResource", + modelProperties: { + ...Resource.type.modelProperties, + tags: { + serializedName: "tags", + type: { + name: "Dictionary", + value: { type: { name: "String" } }, + }, + }, + location: { + serializedName: "location", + required: true, + type: { + name: "String", + }, + }, + }, + }, +}; + +export const PrivateEndpointConnection: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PrivateEndpointConnection", + modelProperties: { + ...Resource.type.modelProperties, + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "PrivateEndpointConnectionProperties", + }, + }, + }, + }, +}; + +export const AppAttachPackagePatch: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "AppAttachPackagePatch", + modelProperties: { + ...Resource.type.modelProperties, + tags: { + serializedName: "tags", + type: { + name: "Dictionary", + value: { type: { name: "String" } }, + }, + }, + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "AppAttachPackagePatchProperties", + }, + }, + }, + }, +}; + +export const ApplicationGroupPatch: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ApplicationGroupPatch", + modelProperties: { + ...Resource.type.modelProperties, + tags: { + serializedName: "tags", + type: { + name: "Dictionary", + value: { type: { name: "String" } }, + }, + }, + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "ApplicationGroupPatchProperties", + }, + }, + }, + }, +}; + +export const ProxyResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ProxyResource", + modelProperties: { + ...Resource.type.modelProperties, + }, + }, +}; + +export const StartMenuItem: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "StartMenuItem", + modelProperties: { + ...Resource.type.modelProperties, + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "StartMenuItemProperties", + }, + }, + }, + }, +}; + +export const HostPoolPatch: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "HostPoolPatch", + modelProperties: { + ...Resource.type.modelProperties, + tags: { + serializedName: "tags", + type: { + name: "Dictionary", + value: { type: { name: "String" } }, + }, + }, + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "HostPoolPatchProperties", + }, + }, + }, + }, +}; + +export const ExpandMsixImage: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ExpandMsixImage", + modelProperties: { + ...Resource.type.modelProperties, + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "ExpandMsixImageProperties", + }, + }, + }, + }, +}; + +export const MsixPackagePatch: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MsixPackagePatch", + modelProperties: { + ...Resource.type.modelProperties, + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "MsixPackagePatchProperties", + }, + }, + }, + }, +}; + +export const PrivateLinkResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PrivateLinkResource", + modelProperties: { + ...Resource.type.modelProperties, + properties: { + serializedName: "properties", type: { name: "Composite", - className: "Time", + className: "PrivateLinkResourceProperties", + }, + }, + }, + }, +}; + +export const SessionHostPatch: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SessionHostPatch", + modelProperties: { + ...Resource.type.modelProperties, + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "SessionHostPatchProperties", + }, + }, + }, + }, +}; + +export const ScalingPlanPooledSchedulePatch: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ScalingPlanPooledSchedulePatch", + modelProperties: { + ...Resource.type.modelProperties, + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "ScalingPlanPooledSchedulePatchProperties", + }, + }, + }, + }, +}; + +export const AppAttachPackage: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "AppAttachPackage", + modelProperties: { + ...TrackedResource.type.modelProperties, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String", + }, + }, + image: { + serializedName: "properties.image", + type: { + name: "Composite", + className: "AppAttachPackageInfoProperties", + }, + }, + hostPoolReferences: { + serializedName: "properties.hostPoolReferences", + type: { + name: "Sequence", + element: { + type: { + name: "String", + }, + }, + }, + }, + keyVaultURL: { + serializedName: "properties.keyVaultURL", + type: { + name: "String", + }, + }, + failHealthCheckOnStagingFailure: { + serializedName: "properties.failHealthCheckOnStagingFailure", + type: { + name: "String", + }, + }, + packageOwnerName: { + serializedName: "properties.packageOwnerName", + type: { + name: "String", + }, + }, + packageLookbackUrl: { + serializedName: "properties.packageLookbackUrl", + type: { + name: "String", + }, + }, + customData: { + serializedName: "properties.customData", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const ApplicationGroup: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ApplicationGroup", + modelProperties: { + ...TrackedResource.type.modelProperties, + identity: { + serializedName: "identity", + type: { + name: "Composite", + className: "ManagedServiceIdentity", + }, + }, + etag: { + serializedName: "etag", + readOnly: true, + type: { + name: "String", + }, + }, + kind: { + constraints: { + Pattern: new RegExp("^[-\\w\\._,\\(\\)]+$"), + }, + serializedName: "kind", + type: { + name: "String", + }, + }, + managedBy: { + serializedName: "managedBy", + type: { + name: "String", + }, + }, + plan: { + serializedName: "plan", + type: { + name: "Composite", + className: "Plan", + }, + }, + sku: { + serializedName: "sku", + type: { + name: "Composite", + className: "Sku", + }, + }, + objectId: { + serializedName: "properties.objectId", + readOnly: true, + type: { + name: "String", + }, + }, + description: { + serializedName: "properties.description", + type: { + name: "String", + }, + }, + friendlyName: { + serializedName: "properties.friendlyName", + type: { + name: "String", + }, + }, + hostPoolArmPath: { + serializedName: "properties.hostPoolArmPath", + required: true, + type: { + name: "String", + }, + }, + workspaceArmPath: { + serializedName: "properties.workspaceArmPath", + readOnly: true, + type: { + name: "String", + }, + }, + applicationGroupType: { + serializedName: "properties.applicationGroupType", + required: true, + type: { + name: "String", + }, + }, + cloudPcResource: { + serializedName: "properties.cloudPcResource", + readOnly: true, + type: { + name: "Boolean", + }, + }, + showInFeed: { + serializedName: "properties.showInFeed", + type: { + name: "Boolean", + }, + }, + }, + }, +}; + +export const HostPool: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "HostPool", + modelProperties: { + ...TrackedResource.type.modelProperties, + identity: { + serializedName: "identity", + type: { + name: "Composite", + className: "ManagedServiceIdentity", + }, + }, + etag: { + serializedName: "etag", + readOnly: true, + type: { + name: "String", + }, + }, + kind: { + constraints: { + Pattern: new RegExp("^[-\\w\\._,\\(\\)]+$"), + }, + serializedName: "kind", + type: { + name: "String", + }, + }, + managedBy: { + serializedName: "managedBy", + type: { + name: "String", + }, + }, + plan: { + serializedName: "plan", + type: { + name: "Composite", + className: "Plan", + }, + }, + sku: { + serializedName: "sku", + type: { + name: "Composite", + className: "Sku", + }, + }, + objectId: { + serializedName: "properties.objectId", + readOnly: true, + type: { + name: "String", }, }, - peakLoadBalancingAlgorithm: { - serializedName: "properties.peakLoadBalancingAlgorithm", + friendlyName: { + serializedName: "properties.friendlyName", type: { name: "String", }, }, - rampDownStartTime: { - serializedName: "properties.rampDownStartTime", + description: { + serializedName: "properties.description", type: { - name: "Composite", - className: "Time", + name: "String", }, }, - rampDownLoadBalancingAlgorithm: { - serializedName: "properties.rampDownLoadBalancingAlgorithm", + hostPoolType: { + serializedName: "properties.hostPoolType", + required: true, type: { name: "String", }, }, - rampDownMinimumHostsPct: { - constraints: { - InclusiveMaximum: 100, - InclusiveMinimum: 0, - }, - serializedName: "properties.rampDownMinimumHostsPct", + personalDesktopAssignmentType: { + serializedName: "properties.personalDesktopAssignmentType", type: { - name: "Number", + name: "String", }, }, - rampDownCapacityThresholdPct: { - constraints: { - InclusiveMaximum: 100, - InclusiveMinimum: 1, - }, - serializedName: "properties.rampDownCapacityThresholdPct", + customRdpProperty: { + serializedName: "properties.customRdpProperty", type: { - name: "Number", + name: "String", }, }, - rampDownForceLogoffUsers: { - serializedName: "properties.rampDownForceLogoffUsers", + maxSessionLimit: { + serializedName: "properties.maxSessionLimit", type: { - name: "Boolean", + name: "Number", }, }, - rampDownStopHostsWhen: { - serializedName: "properties.rampDownStopHostsWhen", + loadBalancerType: { + serializedName: "properties.loadBalancerType", + required: true, type: { name: "String", }, }, - rampDownWaitTimeMinutes: { - serializedName: "properties.rampDownWaitTimeMinutes", + ring: { + serializedName: "properties.ring", type: { name: "Number", }, }, - rampDownNotificationMessage: { - serializedName: "properties.rampDownNotificationMessage", + validationEnvironment: { + serializedName: "properties.validationEnvironment", type: { - name: "String", + name: "Boolean", }, }, - offPeakStartTime: { - serializedName: "properties.offPeakStartTime", + registrationInfo: { + serializedName: "properties.registrationInfo", type: { name: "Composite", - className: "Time", + className: "RegistrationInfo", }, }, - offPeakLoadBalancingAlgorithm: { - serializedName: "properties.offPeakLoadBalancingAlgorithm", + vmTemplate: { + serializedName: "properties.vmTemplate", type: { name: "String", }, }, - }, - }, -}; - -export const ScalingPlanPooledSchedulePatch: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ScalingPlanPooledSchedulePatch", - modelProperties: { - ...Resource.type.modelProperties, - daysOfWeek: { - serializedName: "properties.daysOfWeek", + applicationGroupReferences: { + serializedName: "properties.applicationGroupReferences", + readOnly: true, type: { name: "Sequence", element: { type: { - name: "Enum", - allowedValues: [ - "Monday", - "Tuesday", - "Wednesday", - "Thursday", - "Friday", - "Saturday", - "Sunday", - ], + name: "String", }, }, }, }, - rampUpStartTime: { - serializedName: "properties.rampUpStartTime", + appAttachPackageReferences: { + serializedName: "properties.appAttachPackageReferences", + readOnly: true, type: { - name: "Composite", - className: "Time", + name: "Sequence", + element: { + type: { + name: "String", + }, + }, }, }, - rampUpLoadBalancingAlgorithm: { - serializedName: "properties.rampUpLoadBalancingAlgorithm", + ssoadfsAuthority: { + serializedName: "properties.ssoadfsAuthority", type: { name: "String", }, }, - rampUpMinimumHostsPct: { - constraints: { - InclusiveMaximum: 100, - InclusiveMinimum: 0, - }, - serializedName: "properties.rampUpMinimumHostsPct", - type: { - name: "Number", - }, - }, - rampUpCapacityThresholdPct: { - constraints: { - InclusiveMaximum: 100, - InclusiveMinimum: 1, - }, - serializedName: "properties.rampUpCapacityThresholdPct", - type: { - name: "Number", - }, - }, - peakStartTime: { - serializedName: "properties.peakStartTime", - type: { - name: "Composite", - className: "Time", - }, - }, - peakLoadBalancingAlgorithm: { - serializedName: "properties.peakLoadBalancingAlgorithm", + ssoClientId: { + serializedName: "properties.ssoClientId", type: { name: "String", }, }, - rampDownStartTime: { - serializedName: "properties.rampDownStartTime", + ssoClientSecretKeyVaultPath: { + serializedName: "properties.ssoClientSecretKeyVaultPath", type: { - name: "Composite", - className: "Time", + name: "String", }, }, - rampDownLoadBalancingAlgorithm: { - serializedName: "properties.rampDownLoadBalancingAlgorithm", + ssoSecretType: { + serializedName: "properties.ssoSecretType", type: { name: "String", }, }, - rampDownMinimumHostsPct: { - constraints: { - InclusiveMaximum: 100, - InclusiveMinimum: 0, - }, - serializedName: "properties.rampDownMinimumHostsPct", + preferredAppGroupType: { + serializedName: "properties.preferredAppGroupType", + required: true, type: { - name: "Number", + name: "String", }, }, - rampDownCapacityThresholdPct: { - constraints: { - InclusiveMaximum: 100, - InclusiveMinimum: 1, - }, - serializedName: "properties.rampDownCapacityThresholdPct", + startVMOnConnect: { + serializedName: "properties.startVMOnConnect", type: { - name: "Number", + name: "Boolean", }, }, - rampDownForceLogoffUsers: { - serializedName: "properties.rampDownForceLogoffUsers", + cloudPcResource: { + serializedName: "properties.cloudPcResource", + readOnly: true, type: { name: "Boolean", }, }, - rampDownStopHostsWhen: { - serializedName: "properties.rampDownStopHostsWhen", + publicNetworkAccess: { + serializedName: "properties.publicNetworkAccess", type: { name: "String", }, }, - rampDownWaitTimeMinutes: { - serializedName: "properties.rampDownWaitTimeMinutes", - type: { - name: "Number", - }, - }, - rampDownNotificationMessage: { - serializedName: "properties.rampDownNotificationMessage", + agentUpdate: { + serializedName: "properties.agentUpdate", type: { - name: "String", + name: "Composite", + className: "AgentUpdateProperties", }, }, - offPeakStartTime: { - serializedName: "properties.offPeakStartTime", + privateEndpointConnections: { + serializedName: "properties.privateEndpointConnections", + readOnly: true, type: { - name: "Composite", - className: "Time", + name: "Sequence", + element: { + type: { + name: "Composite", + className: "PrivateEndpointConnection", + }, + }, }, }, - offPeakLoadBalancingAlgorithm: { - serializedName: "properties.offPeakLoadBalancingAlgorithm", + managedPrivateUDP: { + serializedName: "properties.managedPrivateUDP", type: { name: "String", }, }, - }, - }, -}; - -export const ProxyResource: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ProxyResource", - modelProperties: { - ...Resource.type.modelProperties, - }, - }, -}; - -export const ApplicationGroupPatch: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ApplicationGroupPatch", - modelProperties: { - ...Resource.type.modelProperties, - tags: { - serializedName: "tags", - nullable: true, + directUDP: { + serializedName: "properties.directUDP", type: { - name: "Dictionary", - value: { type: { name: "String" } }, + name: "String", }, }, - description: { - serializedName: "properties.description", + publicUDP: { + serializedName: "properties.publicUDP", type: { name: "String", }, }, - friendlyName: { - serializedName: "properties.friendlyName", + relayUDP: { + serializedName: "properties.relayUDP", type: { name: "String", }, }, - showInFeed: { - serializedName: "properties.showInFeed", + managementType: { + serializedName: "properties.managementType", type: { - name: "Boolean", + name: "String", }, }, }, }, }; -export const StartMenuItem: coreClient.CompositeMapper = { +export const ScalingPlan: coreClient.CompositeMapper = { type: { name: "Composite", - className: "StartMenuItem", + className: "ScalingPlan", modelProperties: { - ...Resource.type.modelProperties, - appAlias: { - serializedName: "properties.appAlias", + ...TrackedResource.type.modelProperties, + identity: { + serializedName: "identity", + type: { + name: "Composite", + className: "ManagedServiceIdentity", + }, + }, + etag: { + serializedName: "etag", + readOnly: true, type: { name: "String", }, }, - filePath: { - serializedName: "properties.filePath", + kind: { + constraints: { + Pattern: new RegExp("^[-\\w\\._,\\(\\)]+$"), + }, + serializedName: "kind", type: { name: "String", }, }, - commandLineArguments: { - serializedName: "properties.commandLineArguments", + managedBy: { + serializedName: "managedBy", type: { name: "String", }, }, - iconPath: { - serializedName: "properties.iconPath", + plan: { + serializedName: "plan", type: { - name: "String", + name: "Composite", + className: "Plan", }, }, - iconIndex: { - serializedName: "properties.iconIndex", + sku: { + serializedName: "sku", type: { - name: "Number", + name: "Composite", + className: "Sku", }, }, - }, - }, -}; - -export const Application: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Application", - modelProperties: { - ...Resource.type.modelProperties, objectId: { serializedName: "properties.objectId", readOnly: true, @@ -2771,87 +4618,103 @@ export const Application: coreClient.CompositeMapper = { name: "String", }, }, - filePath: { - serializedName: "properties.filePath", + timeZone: { + serializedName: "properties.timeZone", + required: true, type: { name: "String", }, }, - msixPackageFamilyName: { - serializedName: "properties.msixPackageFamilyName", - nullable: true, + hostPoolType: { + defaultValue: "Pooled", + serializedName: "properties.hostPoolType", type: { name: "String", }, }, - msixPackageApplicationId: { - serializedName: "properties.msixPackageApplicationId", - nullable: true, + exclusionTag: { + serializedName: "properties.exclusionTag", type: { name: "String", }, }, - applicationType: { - serializedName: "properties.applicationType", + schedules: { + serializedName: "properties.schedules", type: { - name: "String", + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ScalingSchedule", + }, + }, }, }, - commandLineSetting: { - serializedName: "properties.commandLineSetting", - required: true, + hostPoolReferences: { + serializedName: "properties.hostPoolReferences", type: { - name: "String", + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ScalingHostPoolReference", + }, + }, }, }, - commandLineArguments: { - serializedName: "properties.commandLineArguments", + }, + }, +}; + +export const Workspace: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "Workspace", + modelProperties: { + ...TrackedResource.type.modelProperties, + identity: { + serializedName: "identity", type: { - name: "String", + name: "Composite", + className: "ManagedServiceIdentity", }, }, - showInPortal: { - serializedName: "properties.showInPortal", + etag: { + serializedName: "etag", + readOnly: true, type: { - name: "Boolean", + name: "String", }, }, - iconPath: { - serializedName: "properties.iconPath", + kind: { + constraints: { + Pattern: new RegExp("^[-\\w\\._,\\(\\)]+$"), + }, + serializedName: "kind", type: { name: "String", }, }, - iconIndex: { - serializedName: "properties.iconIndex", + managedBy: { + serializedName: "managedBy", type: { - name: "Number", + name: "String", }, }, - iconHash: { - serializedName: "properties.iconHash", - readOnly: true, + plan: { + serializedName: "plan", type: { - name: "String", + name: "Composite", + className: "Plan", }, }, - iconContent: { - serializedName: "properties.iconContent", - readOnly: true, + sku: { + serializedName: "sku", type: { - name: "ByteArray", + name: "Composite", + className: "Sku", }, }, - }, - }, -}; - -export const Desktop: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Desktop", - modelProperties: { - ...Resource.type.modelProperties, objectId: { serializedName: "properties.objectId", readOnly: true, @@ -2871,36 +4734,64 @@ export const Desktop: coreClient.CompositeMapper = { name: "String", }, }, - iconHash: { - serializedName: "properties.iconHash", + applicationGroupReferences: { + serializedName: "properties.applicationGroupReferences", + type: { + name: "Sequence", + element: { + type: { + name: "String", + }, + }, + }, + }, + cloudPcResource: { + serializedName: "properties.cloudPcResource", readOnly: true, + type: { + name: "Boolean", + }, + }, + publicNetworkAccess: { + serializedName: "properties.publicNetworkAccess", type: { name: "String", }, }, - iconContent: { - serializedName: "properties.iconContent", + privateEndpointConnections: { + serializedName: "properties.privateEndpointConnections", readOnly: true, type: { - name: "ByteArray", + name: "Sequence", + element: { + type: { + name: "Composite", + className: "PrivateEndpointConnection", + }, + }, }, }, }, }, }; -export const HostPoolPatch: coreClient.CompositeMapper = { +export const Application: coreClient.CompositeMapper = { type: { name: "Composite", - className: "HostPoolPatch", + className: "Application", modelProperties: { - ...Resource.type.modelProperties, - tags: { - serializedName: "tags", - nullable: true, + ...ProxyResource.type.modelProperties, + objectId: { + serializedName: "properties.objectId", + readOnly: true, type: { - name: "Dictionary", - value: { type: { name: "String" } }, + name: "String", + }, + }, + description: { + serializedName: "properties.description", + type: { + name: "String", }, }, friendlyName: { @@ -2909,284 +4800,330 @@ export const HostPoolPatch: coreClient.CompositeMapper = { name: "String", }, }, - description: { - serializedName: "properties.description", + filePath: { + serializedName: "properties.filePath", type: { name: "String", }, }, - customRdpProperty: { - serializedName: "properties.customRdpProperty", + msixPackageFamilyName: { + serializedName: "properties.msixPackageFamilyName", type: { name: "String", }, }, - maxSessionLimit: { - serializedName: "properties.maxSessionLimit", - nullable: true, + msixPackageApplicationId: { + serializedName: "properties.msixPackageApplicationId", type: { - name: "Number", + name: "String", }, }, - personalDesktopAssignmentType: { - serializedName: "properties.personalDesktopAssignmentType", - nullable: true, + applicationType: { + serializedName: "properties.applicationType", type: { name: "String", }, }, - loadBalancerType: { - serializedName: "properties.loadBalancerType", + commandLineSetting: { + serializedName: "properties.commandLineSetting", + required: true, type: { name: "String", }, }, - ring: { - serializedName: "properties.ring", - nullable: true, + commandLineArguments: { + serializedName: "properties.commandLineArguments", type: { - name: "Number", + name: "String", }, }, - validationEnvironment: { - serializedName: "properties.validationEnvironment", - nullable: true, + showInPortal: { + serializedName: "properties.showInPortal", type: { name: "Boolean", }, }, - registrationInfo: { - serializedName: "properties.registrationInfo", + iconPath: { + serializedName: "properties.iconPath", type: { - name: "Composite", - className: "RegistrationInfoPatch", + name: "String", }, }, - vmTemplate: { - serializedName: "properties.vmTemplate", + iconIndex: { + serializedName: "properties.iconIndex", type: { - name: "String", + name: "Number", }, }, - ssoadfsAuthority: { - serializedName: "properties.ssoadfsAuthority", + iconHash: { + serializedName: "properties.iconHash", + readOnly: true, type: { name: "String", }, }, - ssoClientId: { - serializedName: "properties.ssoClientId", + iconContent: { + serializedName: "properties.iconContent", + readOnly: true, type: { - name: "String", + name: "ByteArray", }, }, - ssoClientSecretKeyVaultPath: { - serializedName: "properties.ssoClientSecretKeyVaultPath", + }, + }, +}; + +export const Desktop: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "Desktop", + modelProperties: { + ...ProxyResource.type.modelProperties, + objectId: { + serializedName: "properties.objectId", + readOnly: true, type: { name: "String", }, }, - ssoSecretType: { - serializedName: "properties.ssoSecretType", - nullable: true, + description: { + serializedName: "properties.description", type: { name: "String", }, }, - preferredAppGroupType: { - serializedName: "properties.preferredAppGroupType", + friendlyName: { + serializedName: "properties.friendlyName", type: { name: "String", }, }, - startVMOnConnect: { - serializedName: "properties.startVMOnConnect", - nullable: true, - type: { - name: "Boolean", - }, - }, - publicNetworkAccess: { - serializedName: "properties.publicNetworkAccess", - nullable: true, + iconHash: { + serializedName: "properties.iconHash", + readOnly: true, type: { name: "String", }, }, - agentUpdate: { - serializedName: "properties.agentUpdate", + iconContent: { + serializedName: "properties.iconContent", + readOnly: true, type: { - name: "Composite", - className: "AgentUpdatePatchProperties", + name: "ByteArray", }, }, }, }, }; -export const UserSession: coreClient.CompositeMapper = { +export const ActiveSessionHostConfiguration: coreClient.CompositeMapper = { type: { name: "Composite", - className: "UserSession", + className: "ActiveSessionHostConfiguration", modelProperties: { - ...Resource.type.modelProperties, - objectId: { - serializedName: "properties.objectId", + ...ProxyResource.type.modelProperties, + version: { + serializedName: "properties.version", readOnly: true, type: { - name: "String", + name: "DateTime", }, }, - userPrincipalName: { - serializedName: "properties.userPrincipalName", + friendlyName: { + constraints: { + MaxLength: 260, + }, + serializedName: "properties.friendlyName", type: { name: "String", }, }, - applicationType: { - serializedName: "properties.applicationType", + vmTags: { + serializedName: "properties.vmTags", + type: { + name: "Dictionary", + value: { type: { name: "String" } }, + }, + }, + vmLocation: { + serializedName: "properties.vmLocation", type: { name: "String", }, }, - sessionState: { - serializedName: "properties.sessionState", + vmResourceGroup: { + serializedName: "properties.vmResourceGroup", type: { name: "String", }, }, - activeDirectoryUserName: { - serializedName: "properties.activeDirectoryUserName", + vmNamePrefix: { + constraints: { + MaxLength: 11, + }, + serializedName: "properties.vmNamePrefix", + required: true, type: { name: "String", }, }, - createTime: { - serializedName: "properties.createTime", + availabilityZones: { + serializedName: "properties.availabilityZones", type: { - name: "DateTime", + name: "Sequence", + element: { + type: { + name: "Number", + }, + }, }, }, - }, - }, -}; - -export const SessionHost: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SessionHost", - modelProperties: { - ...Resource.type.modelProperties, - objectId: { - serializedName: "properties.objectId", - readOnly: true, + networkInfo: { + serializedName: "properties.networkInfo", type: { - name: "String", + name: "Composite", + className: "NetworkInfoProperties", }, }, - lastHeartBeat: { - serializedName: "properties.lastHeartBeat", + vmSizeId: { + serializedName: "properties.vmSizeId", + required: true, type: { - name: "DateTime", + name: "String", }, }, - sessions: { - serializedName: "properties.sessions", + diskInfo: { + serializedName: "properties.diskInfo", type: { - name: "Number", + name: "Composite", + className: "DiskInfoProperties", }, }, - agentVersion: { - serializedName: "properties.agentVersion", + customConfigurationScriptUrl: { + serializedName: "properties.customConfigurationScriptUrl", type: { name: "String", }, }, - allowNewSession: { - serializedName: "properties.allowNewSession", + imageInfo: { + serializedName: "properties.imageInfo", type: { - name: "Boolean", + name: "Composite", + className: "ImageInfoProperties", }, }, - virtualMachineId: { - serializedName: "properties.virtualMachineId", - readOnly: true, + domainInfo: { + serializedName: "properties.domainInfo", type: { - name: "String", + name: "Composite", + className: "DomainInfoProperties", }, }, - resourceId: { - serializedName: "properties.resourceId", - readOnly: true, + securityInfo: { + serializedName: "properties.securityInfo", type: { - name: "String", + name: "Composite", + className: "SecurityInfoProperties", }, }, - assignedUser: { - serializedName: "properties.assignedUser", + vmAdminCredentials: { + serializedName: "properties.vmAdminCredentials", type: { - name: "String", + name: "Composite", + className: "KeyVaultCredentialsProperties", }, }, - friendlyName: { - serializedName: "properties.friendlyName", + bootDiagnosticsInfo: { + serializedName: "properties.bootDiagnosticsInfo", type: { - name: "String", + name: "Composite", + className: "BootDiagnosticsInfoProperties", }, }, - status: { - serializedName: "properties.status", + }, + }, +}; + +export const MsixPackage: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MsixPackage", + modelProperties: { + ...ProxyResource.type.modelProperties, + imagePath: { + serializedName: "properties.imagePath", type: { name: "String", }, }, - statusTimestamp: { - serializedName: "properties.statusTimestamp", - readOnly: true, + packageName: { + serializedName: "properties.packageName", type: { - name: "DateTime", + name: "String", }, }, - osVersion: { - serializedName: "properties.osVersion", + packageFamilyName: { + serializedName: "properties.packageFamilyName", type: { name: "String", }, }, - sxSStackVersion: { - serializedName: "properties.sxSStackVersion", + displayName: { + serializedName: "properties.displayName", type: { name: "String", }, }, - updateState: { - serializedName: "properties.updateState", + packageRelativePath: { + serializedName: "properties.packageRelativePath", type: { name: "String", }, }, - lastUpdateTime: { - serializedName: "properties.lastUpdateTime", - readOnly: true, + isRegularRegistration: { + serializedName: "properties.isRegularRegistration", type: { - name: "DateTime", + name: "Boolean", }, }, - updateErrorMessage: { - serializedName: "properties.updateErrorMessage", + isActive: { + serializedName: "properties.isActive", + type: { + name: "Boolean", + }, + }, + packageDependencies: { + serializedName: "properties.packageDependencies", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MsixPackageDependencies", + }, + }, + }, + }, + version: { + serializedName: "properties.version", type: { name: "String", }, }, - sessionHostHealthCheckResults: { - serializedName: "properties.sessionHostHealthCheckResults", - readOnly: true, + lastUpdated: { + serializedName: "properties.lastUpdated", + type: { + name: "DateTime", + }, + }, + packageApplications: { + serializedName: "properties.packageApplications", type: { name: "Sequence", element: { type: { name: "Composite", - className: "SessionHostHealthCheckReport", + className: "MsixPackageApplications", }, }, }, @@ -3195,392 +5132,389 @@ export const SessionHost: coreClient.CompositeMapper = { }, }; -export const SessionHostPatch: coreClient.CompositeMapper = { +export const PrivateEndpointConnectionWithSystemData: coreClient.CompositeMapper = + { + type: { + name: "Composite", + className: "PrivateEndpointConnectionWithSystemData", + modelProperties: { + ...ProxyResource.type.modelProperties, + groupIds: { + serializedName: "properties.groupIds", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "String", + }, + }, + }, + }, + privateEndpoint: { + serializedName: "properties.privateEndpoint", + type: { + name: "Composite", + className: "PrivateEndpoint", + }, + }, + privateLinkServiceConnectionState: { + serializedName: "properties.privateLinkServiceConnectionState", + type: { + name: "Composite", + className: "PrivateLinkServiceConnectionState", + }, + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String", + }, + }, + }, + }, + }; + +export const SessionHostConfiguration: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SessionHostPatch", + className: "SessionHostConfiguration", modelProperties: { - ...Resource.type.modelProperties, - allowNewSession: { - serializedName: "properties.allowNewSession", + ...ProxyResource.type.modelProperties, + version: { + serializedName: "properties.version", + readOnly: true, type: { - name: "Boolean", + name: "DateTime", }, }, - assignedUser: { - serializedName: "properties.assignedUser", + friendlyName: { + constraints: { + MaxLength: 260, + }, + serializedName: "properties.friendlyName", + type: { + name: "String", + }, + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String", + }, + }, + vmTags: { + serializedName: "properties.vmTags", + type: { + name: "Dictionary", + value: { type: { name: "String" } }, + }, + }, + vmLocation: { + serializedName: "properties.vmLocation", type: { name: "String", }, }, - friendlyName: { - serializedName: "properties.friendlyName", + vmResourceGroup: { + serializedName: "properties.vmResourceGroup", type: { name: "String", }, }, - }, - }, -}; - -export const MsixPackage: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "MsixPackage", - modelProperties: { - ...Resource.type.modelProperties, - imagePath: { - serializedName: "properties.imagePath", + vmNamePrefix: { + constraints: { + MaxLength: 11, + }, + serializedName: "properties.vmNamePrefix", + required: true, type: { name: "String", }, }, - packageName: { - serializedName: "properties.packageName", + availabilityZones: { + serializedName: "properties.availabilityZones", type: { - name: "String", + name: "Sequence", + element: { + type: { + name: "Number", + }, + }, }, }, - packageFamilyName: { - serializedName: "properties.packageFamilyName", + networkInfo: { + serializedName: "properties.networkInfo", type: { - name: "String", + name: "Composite", + className: "NetworkInfoProperties", }, }, - displayName: { - serializedName: "properties.displayName", - nullable: true, + vmSizeId: { + serializedName: "properties.vmSizeId", + required: true, type: { name: "String", }, }, - packageRelativePath: { - serializedName: "properties.packageRelativePath", + diskInfo: { + serializedName: "properties.diskInfo", type: { - name: "String", + name: "Composite", + className: "DiskInfoProperties", }, }, - isRegularRegistration: { - serializedName: "properties.isRegularRegistration", + customConfigurationScriptUrl: { + serializedName: "properties.customConfigurationScriptUrl", type: { - name: "Boolean", + name: "String", }, }, - isActive: { - serializedName: "properties.isActive", + imageInfo: { + serializedName: "properties.imageInfo", type: { - name: "Boolean", + name: "Composite", + className: "ImageInfoProperties", }, }, - packageDependencies: { - serializedName: "properties.packageDependencies", + domainInfo: { + serializedName: "properties.domainInfo", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "MsixPackageDependencies", - }, - }, + name: "Composite", + className: "DomainInfoProperties", }, }, - version: { - serializedName: "properties.version", + securityInfo: { + serializedName: "properties.securityInfo", type: { - name: "String", + name: "Composite", + className: "SecurityInfoProperties", }, }, - lastUpdated: { - serializedName: "properties.lastUpdated", + vmAdminCredentials: { + serializedName: "properties.vmAdminCredentials", type: { - name: "DateTime", + name: "Composite", + className: "KeyVaultCredentialsProperties", }, }, - packageApplications: { - serializedName: "properties.packageApplications", + bootDiagnosticsInfo: { + serializedName: "properties.bootDiagnosticsInfo", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "MsixPackageApplications", - }, - }, + name: "Composite", + className: "BootDiagnosticsInfoProperties", }, }, }, }, }; -export const MsixPackagePatch: coreClient.CompositeMapper = { +export const SessionHostManagement: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MsixPackagePatch", + className: "SessionHostManagement", modelProperties: { - ...Resource.type.modelProperties, - isActive: { - serializedName: "properties.isActive", - type: { - name: "Boolean", - }, - }, - isRegularRegistration: { - serializedName: "properties.isRegularRegistration", + ...ProxyResource.type.modelProperties, + scheduledDateTimeZone: { + serializedName: "properties.scheduledDateTimeZone", + required: true, type: { - name: "Boolean", + name: "String", }, }, - displayName: { - serializedName: "properties.displayName", + update: { + serializedName: "properties.update", type: { - name: "String", + name: "Composite", + className: "HostPoolUpdateConfigurationProperties", }, }, }, }, }; -export const ExpandMsixImage: coreClient.CompositeMapper = { +export const SessionHost: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ExpandMsixImage", + className: "SessionHost", modelProperties: { - ...Resource.type.modelProperties, - packageAlias: { - serializedName: "properties.packageAlias", + ...ProxyResource.type.modelProperties, + objectId: { + serializedName: "properties.objectId", + readOnly: true, type: { name: "String", }, }, - imagePath: { - serializedName: "properties.imagePath", + lastHeartBeat: { + serializedName: "properties.lastHeartBeat", type: { - name: "String", + name: "DateTime", }, }, - packageName: { - serializedName: "properties.packageName", + sessions: { + serializedName: "properties.sessions", + type: { + name: "Number", + }, + }, + agentVersion: { + serializedName: "properties.agentVersion", type: { name: "String", }, }, - packageFamilyName: { - serializedName: "properties.packageFamilyName", + allowNewSession: { + serializedName: "properties.allowNewSession", + type: { + name: "Boolean", + }, + }, + virtualMachineId: { + serializedName: "properties.virtualMachineId", + readOnly: true, type: { name: "String", }, }, - packageFullName: { - serializedName: "properties.packageFullName", + resourceId: { + serializedName: "properties.resourceId", + readOnly: true, type: { name: "String", }, }, - displayName: { - serializedName: "properties.displayName", - nullable: true, + assignedUser: { + serializedName: "properties.assignedUser", type: { name: "String", }, }, - packageRelativePath: { - serializedName: "properties.packageRelativePath", + friendlyName: { + serializedName: "properties.friendlyName", type: { name: "String", }, }, - isRegularRegistration: { - serializedName: "properties.isRegularRegistration", + status: { + serializedName: "properties.status", type: { - name: "Boolean", + name: "String", }, }, - isActive: { - serializedName: "properties.isActive", + statusTimestamp: { + serializedName: "properties.statusTimestamp", + readOnly: true, type: { - name: "Boolean", + name: "DateTime", }, }, - packageDependencies: { - serializedName: "properties.packageDependencies", - nullable: true, + osVersion: { + serializedName: "properties.osVersion", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "MsixPackageDependencies", - }, - }, + name: "String", }, }, - version: { - serializedName: "properties.version", + sxSStackVersion: { + serializedName: "properties.sxSStackVersion", type: { name: "String", }, }, - lastUpdated: { - serializedName: "properties.lastUpdated", + updateState: { + serializedName: "properties.updateState", + readOnly: true, type: { - name: "DateTime", + name: "String", }, }, - packageApplications: { - serializedName: "properties.packageApplications", + lastUpdateTime: { + serializedName: "properties.lastUpdateTime", + readOnly: true, type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "MsixPackageApplications", - }, - }, + name: "DateTime", }, }, - certificateName: { - serializedName: "properties.certificateName", - nullable: true, + updateErrorMessage: { + serializedName: "properties.updateErrorMessage", type: { name: "String", }, }, - certificateExpiry: { - serializedName: "properties.certificateExpiry", - nullable: true, + lastSessionHostUpdateTime: { + serializedName: "properties.lastSessionHostUpdateTime", + readOnly: true, type: { name: "DateTime", }, }, - }, - }, -}; - -export const AppAttachPackagePatch: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AppAttachPackagePatch", - modelProperties: { - ...Resource.type.modelProperties, - properties: { - serializedName: "properties", + sessionHostConfiguration: { + serializedName: "properties.sessionHostConfiguration", + readOnly: true, type: { - name: "Composite", - className: "AppAttachPackagePatchProperties", + name: "String", }, }, - }, - }, -}; - -export const ResourceModelWithAllowedPropertySetIdentity: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "ResourceModelWithAllowedPropertySetIdentity", - modelProperties: { - ...Identity.type.modelProperties, - }, - }, - }; - -export const ResourceModelWithAllowedPropertySetSku: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "ResourceModelWithAllowedPropertySetSku", - modelProperties: { - ...Sku.type.modelProperties, - }, - }, - }; - -export const ResourceModelWithAllowedPropertySetPlan: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "ResourceModelWithAllowedPropertySetPlan", - modelProperties: { - ...Plan.type.modelProperties, - }, - }, - }; - -export const PrivateEndpointConnectionWithSystemData: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "PrivateEndpointConnectionWithSystemData", - modelProperties: { - ...PrivateEndpointConnection.type.modelProperties, + sessionHostHealthCheckResults: { + serializedName: "properties.sessionHostHealthCheckResults", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "SessionHostHealthCheckReport", + }, + }, + }, }, }, - }; + }, +}; -export const ResourceModelWithAllowedPropertySet: coreClient.CompositeMapper = { +export const UserSession: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ResourceModelWithAllowedPropertySet", + className: "UserSession", modelProperties: { - ...TrackedResource.type.modelProperties, - managedBy: { - serializedName: "managedBy", + ...ProxyResource.type.modelProperties, + objectId: { + serializedName: "properties.objectId", + readOnly: true, type: { name: "String", }, }, - kind: { - constraints: { - Pattern: new RegExp("^[-\\w\\._,\\(\\)]+$"), - }, - serializedName: "kind", + userPrincipalName: { + serializedName: "properties.userPrincipalName", type: { name: "String", }, }, - etag: { - serializedName: "etag", - readOnly: true, + applicationType: { + serializedName: "properties.applicationType", type: { name: "String", }, }, - identity: { - serializedName: "identity", - type: { - name: "Composite", - className: "ResourceModelWithAllowedPropertySetIdentity", - }, - }, - sku: { - serializedName: "sku", + sessionState: { + serializedName: "properties.sessionState", type: { - name: "Composite", - className: "ResourceModelWithAllowedPropertySetSku", + name: "String", }, }, - plan: { - serializedName: "plan", + activeDirectoryUserName: { + serializedName: "properties.activeDirectoryUserName", type: { - name: "Composite", - className: "ResourceModelWithAllowedPropertySetPlan", + name: "String", }, }, - }, - }, -}; - -export const AppAttachPackage: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AppAttachPackage", - modelProperties: { - ...TrackedResource.type.modelProperties, - properties: { - serializedName: "properties", + createTime: { + serializedName: "properties.createTime", type: { - name: "Composite", - className: "AppAttachPackageProperties", + name: "DateTime", }, }, }, @@ -3595,6 +5529,7 @@ export const ScalingPlanPersonalSchedule: coreClient.CompositeMapper = { ...ProxyResource.type.modelProperties, daysOfWeek: { serializedName: "properties.daysOfWeek", + required: true, type: { name: "Sequence", element: { @@ -3756,436 +5691,259 @@ export const ScalingPlanPersonalSchedule: coreClient.CompositeMapper = { }, }, offPeakStartVMOnConnect: { - serializedName: "properties.offPeakStartVMOnConnect", - type: { - name: "String", - }, - }, - offPeakActionOnDisconnect: { - serializedName: "properties.offPeakActionOnDisconnect", - type: { - name: "String", - }, - }, - offPeakMinutesToWaitOnDisconnect: { - constraints: { - InclusiveMinimum: 0, - }, - serializedName: "properties.offPeakMinutesToWaitOnDisconnect", - type: { - name: "Number", - }, - }, - offPeakActionOnLogoff: { - serializedName: "properties.offPeakActionOnLogoff", - type: { - name: "String", - }, - }, - offPeakMinutesToWaitOnLogoff: { - constraints: { - InclusiveMinimum: 0, - }, - serializedName: "properties.offPeakMinutesToWaitOnLogoff", - type: { - name: "Number", - }, - }, - }, - }, -}; - -export const Workspace: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Workspace", - modelProperties: { - ...ResourceModelWithAllowedPropertySet.type.modelProperties, - objectId: { - serializedName: "properties.objectId", - readOnly: true, - type: { - name: "String", - }, - }, - description: { - serializedName: "properties.description", - type: { - name: "String", - }, - }, - friendlyName: { - serializedName: "properties.friendlyName", - type: { - name: "String", - }, - }, - applicationGroupReferences: { - serializedName: "properties.applicationGroupReferences", - nullable: true, - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - cloudPcResource: { - serializedName: "properties.cloudPcResource", - readOnly: true, - nullable: true, - type: { - name: "Boolean", - }, - }, - publicNetworkAccess: { - serializedName: "properties.publicNetworkAccess", - nullable: true, - type: { - name: "String", - }, - }, - privateEndpointConnections: { - serializedName: "properties.privateEndpointConnections", - readOnly: true, - nullable: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "PrivateEndpointConnection", - }, - }, - }, - }, - }, - }, -}; - -export const ScalingPlan: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ScalingPlan", - modelProperties: { - ...ResourceModelWithAllowedPropertySet.type.modelProperties, - objectId: { - serializedName: "properties.objectId", - readOnly: true, - type: { - name: "String", - }, - }, - description: { - serializedName: "properties.description", - type: { - name: "String", - }, - }, - friendlyName: { - serializedName: "properties.friendlyName", - type: { - name: "String", - }, - }, - timeZone: { - serializedName: "properties.timeZone", - required: true, - type: { - name: "String", - }, - }, - hostPoolType: { - defaultValue: "Pooled", - 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 ApplicationGroup: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ApplicationGroup", - modelProperties: { - ...ResourceModelWithAllowedPropertySet.type.modelProperties, - objectId: { - serializedName: "properties.objectId", - readOnly: true, - type: { - name: "String", - }, - }, - description: { - serializedName: "properties.description", - type: { - name: "String", - }, - }, - friendlyName: { - serializedName: "properties.friendlyName", + serializedName: "properties.offPeakStartVMOnConnect", type: { name: "String", }, }, - hostPoolArmPath: { - serializedName: "properties.hostPoolArmPath", - required: true, + offPeakActionOnDisconnect: { + serializedName: "properties.offPeakActionOnDisconnect", type: { name: "String", }, }, - workspaceArmPath: { - serializedName: "properties.workspaceArmPath", - readOnly: true, + offPeakMinutesToWaitOnDisconnect: { + constraints: { + InclusiveMinimum: 0, + }, + serializedName: "properties.offPeakMinutesToWaitOnDisconnect", type: { - name: "String", + name: "Number", }, }, - applicationGroupType: { - serializedName: "properties.applicationGroupType", - required: true, + offPeakActionOnLogoff: { + serializedName: "properties.offPeakActionOnLogoff", type: { name: "String", }, }, - cloudPcResource: { - serializedName: "properties.cloudPcResource", - readOnly: true, - nullable: true, - type: { - name: "Boolean", + offPeakMinutesToWaitOnLogoff: { + constraints: { + InclusiveMinimum: 0, }, - }, - showInFeed: { - serializedName: "properties.showInFeed", + serializedName: "properties.offPeakMinutesToWaitOnLogoff", type: { - name: "Boolean", + name: "Number", }, }, }, }, }; -export const HostPool: coreClient.CompositeMapper = { +export const ScalingPlanPooledSchedule: coreClient.CompositeMapper = { type: { name: "Composite", - className: "HostPool", + className: "ScalingPlanPooledSchedule", modelProperties: { - ...ResourceModelWithAllowedPropertySet.type.modelProperties, - objectId: { - serializedName: "properties.objectId", - readOnly: true, - type: { - name: "String", - }, - }, - friendlyName: { - serializedName: "properties.friendlyName", - type: { - name: "String", - }, - }, - description: { - serializedName: "properties.description", + ...ProxyResource.type.modelProperties, + namePropertiesName: { + serializedName: "properties.name", type: { name: "String", }, }, - hostPoolType: { - serializedName: "properties.hostPoolType", + daysOfWeek: { + serializedName: "properties.daysOfWeek", required: true, type: { - name: "String", + name: "Sequence", + element: { + type: { + name: "Enum", + allowedValues: [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday", + "Sunday", + ], + }, + }, }, }, - personalDesktopAssignmentType: { - serializedName: "properties.personalDesktopAssignmentType", - nullable: true, + rampUpStartTime: { + serializedName: "properties.rampUpStartTime", type: { - name: "String", + name: "Composite", + className: "Time", }, }, - customRdpProperty: { - serializedName: "properties.customRdpProperty", + rampUpLoadBalancingAlgorithm: { + serializedName: "properties.rampUpLoadBalancingAlgorithm", type: { name: "String", }, }, - maxSessionLimit: { - serializedName: "properties.maxSessionLimit", - nullable: true, + rampUpMinimumHostsPct: { + constraints: { + InclusiveMaximum: 100, + InclusiveMinimum: 0, + }, + serializedName: "properties.rampUpMinimumHostsPct", type: { name: "Number", }, }, - loadBalancerType: { - serializedName: "properties.loadBalancerType", + rampUpCapacityThresholdPct: { + constraints: { + InclusiveMaximum: 100, + InclusiveMinimum: 1, + }, + serializedName: "properties.rampUpCapacityThresholdPct", required: true, type: { - name: "String", + name: "Number", }, }, - ring: { - serializedName: "properties.ring", - nullable: true, + peakStartTime: { + serializedName: "properties.peakStartTime", type: { - name: "Number", + name: "Composite", + className: "Time", }, }, - validationEnvironment: { - serializedName: "properties.validationEnvironment", - nullable: true, + peakLoadBalancingAlgorithm: { + serializedName: "properties.peakLoadBalancingAlgorithm", type: { - name: "Boolean", + name: "String", }, }, - registrationInfo: { - serializedName: "properties.registrationInfo", + rampDownStartTime: { + serializedName: "properties.rampDownStartTime", type: { name: "Composite", - className: "RegistrationInfo", + className: "Time", }, }, - vmTemplate: { - serializedName: "properties.vmTemplate", + rampDownLoadBalancingAlgorithm: { + serializedName: "properties.rampDownLoadBalancingAlgorithm", type: { name: "String", }, }, - applicationGroupReferences: { - serializedName: "properties.applicationGroupReferences", - readOnly: true, - nullable: true, + rampDownMinimumHostsPct: { + constraints: { + InclusiveMaximum: 100, + InclusiveMinimum: 0, + }, + serializedName: "properties.rampDownMinimumHostsPct", type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, + name: "Number", }, }, - appAttachPackageReferences: { - serializedName: "properties.appAttachPackageReferences", - readOnly: true, + rampDownCapacityThresholdPct: { + constraints: { + InclusiveMaximum: 100, + InclusiveMinimum: 1, + }, + serializedName: "properties.rampDownCapacityThresholdPct", + required: true, type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, + name: "Number", }, }, - ssoadfsAuthority: { - serializedName: "properties.ssoadfsAuthority", + rampDownForceLogoffUsers: { + serializedName: "properties.rampDownForceLogoffUsers", type: { - name: "String", + name: "Boolean", }, }, - ssoClientId: { - serializedName: "properties.ssoClientId", + rampDownStopHostsWhen: { + serializedName: "properties.rampDownStopHostsWhen", type: { name: "String", }, }, - ssoClientSecretKeyVaultPath: { - serializedName: "properties.ssoClientSecretKeyVaultPath", + rampDownWaitTimeMinutes: { + serializedName: "properties.rampDownWaitTimeMinutes", type: { - name: "String", + name: "Number", }, }, - ssoSecretType: { - serializedName: "properties.ssoSecretType", - nullable: true, + rampDownNotificationMessage: { + serializedName: "properties.rampDownNotificationMessage", type: { name: "String", }, }, - preferredAppGroupType: { - serializedName: "properties.preferredAppGroupType", - required: true, + offPeakStartTime: { + serializedName: "properties.offPeakStartTime", type: { - name: "String", + name: "Composite", + className: "Time", }, }, - startVMOnConnect: { - serializedName: "properties.startVMOnConnect", - nullable: true, + offPeakLoadBalancingAlgorithm: { + serializedName: "properties.offPeakLoadBalancingAlgorithm", type: { - name: "Boolean", + name: "String", }, }, - cloudPcResource: { - serializedName: "properties.cloudPcResource", - readOnly: true, - nullable: true, - type: { - name: "Boolean", + }, + }, +}; + +export const SessionHostConfigurationsCreateOrUpdateHeaders: coreClient.CompositeMapper = + { + type: { + name: "Composite", + className: "SessionHostConfigurationsCreateOrUpdateHeaders", + modelProperties: { + azureAsyncOperation: { + serializedName: "azure-asyncoperation", + type: { + name: "String", + }, + }, + retryAfter: { + serializedName: "retry-after", + type: { + name: "Number", + }, }, }, - publicNetworkAccess: { - serializedName: "properties.publicNetworkAccess", - nullable: true, - type: { - name: "String", + }, + }; + +export const SessionHostConfigurationsUpdateHeaders: coreClient.CompositeMapper = + { + type: { + name: "Composite", + className: "SessionHostConfigurationsUpdateHeaders", + modelProperties: { + location: { + serializedName: "location", + type: { + name: "String", + }, + }, + retryAfter: { + serializedName: "retry-after", + type: { + name: "Number", + }, }, }, - agentUpdate: { - serializedName: "properties.agentUpdate", + }, + }; + +export const ControlSessionHostUpdatePostHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ControlSessionHostUpdatePostHeaders", + modelProperties: { + location: { + serializedName: "location", type: { - name: "Composite", - className: "AgentUpdateProperties", + name: "String", }, }, - privateEndpointConnections: { - serializedName: "properties.privateEndpointConnections", - readOnly: true, - nullable: true, + retryAfter: { + serializedName: "retry-after", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "PrivateEndpointConnection", - }, - }, + name: "Number", }, }, }, diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/parameters.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/parameters.ts index ced50244a6b7..518d04160ef5 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/parameters.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/models/parameters.ts @@ -12,30 +12,36 @@ import { OperationQueryParameter, } from "@azure/core-client"; import { - Workspace as WorkspaceMapper, - WorkspacePatch as WorkspacePatchMapper, - PrivateEndpointConnection as PrivateEndpointConnectionMapper, - ScalingPlan as ScalingPlanMapper, - ScalingPlanPatch as ScalingPlanPatchMapper, - ScalingPlanPooledSchedule as ScalingPlanPooledScheduleMapper, - ScalingPlanPooledSchedulePatch as ScalingPlanPooledSchedulePatchMapper, - ScalingPlanPersonalSchedule as ScalingPlanPersonalScheduleMapper, - ScalingPlanPersonalSchedulePatch as ScalingPlanPersonalSchedulePatchMapper, + AppAttachPackage as AppAttachPackageMapper, + AppAttachPackagePatch as AppAttachPackagePatchMapper, ApplicationGroup as ApplicationGroupMapper, ApplicationGroupPatch as ApplicationGroupPatchMapper, + HostPool as HostPoolMapper, + HostPoolPatch as HostPoolPatchMapper, + ScalingPlan as ScalingPlanMapper, + ScalingPlanPatch as ScalingPlanPatchMapper, + Workspace as WorkspaceMapper, + WorkspacePatch as WorkspacePatchMapper, Application as ApplicationMapper, ApplicationPatch as ApplicationPatchMapper, DesktopPatch as DesktopPatchMapper, - HostPool as HostPoolMapper, - HostPoolPatch as HostPoolPatchMapper, - SendMessage as SendMessageMapper, - SessionHostPatch as SessionHostPatchMapper, + MsixImageURI as MsixImageURIMapper, + ImportPackageInfoRequest as ImportPackageInfoRequestMapper, MsixPackage as MsixPackageMapper, MsixPackagePatch as MsixPackagePatchMapper, - ImportPackageInfoRequest as ImportPackageInfoRequestMapper, - MsixImageURI as MsixImageURIMapper, - AppAttachPackage as AppAttachPackageMapper, - AppAttachPackagePatch as AppAttachPackagePatchMapper, + PrivateEndpointConnectionWithSystemData as PrivateEndpointConnectionWithSystemDataMapper, + SessionHostConfiguration as SessionHostConfigurationMapper, + SessionHostConfigurationPatch as SessionHostConfigurationPatchMapper, + SessionHostManagement as SessionHostManagementMapper, + SessionHostManagementPatch as SessionHostManagementPatchMapper, + HostPoolUpdateControlParameter as HostPoolUpdateControlParameterMapper, + UpdateSessionHostsRequestBody as UpdateSessionHostsRequestBodyMapper, + SessionHostPatch as SessionHostPatchMapper, + SendMessage as SendMessageMapper, + ScalingPlanPersonalSchedule as ScalingPlanPersonalScheduleMapper, + ScalingPlanPersonalSchedulePatch as ScalingPlanPersonalSchedulePatchMapper, + ScalingPlanPooledSchedule as ScalingPlanPooledScheduleMapper, + ScalingPlanPooledSchedulePatch as ScalingPlanPooledSchedulePatchMapper, } from "../models/mappers.js"; export const accept: OperationParameter = { @@ -65,7 +71,7 @@ export const $host: OperationURLParameter = { export const apiVersion: OperationQueryParameter = { parameterPath: "apiVersion", mapper: { - defaultValue: "2024-04-03", + defaultValue: "2024-08-08-preview", isConstant: true, serializedName: "api-version", type: { @@ -97,6 +103,16 @@ export const subscriptionId: OperationURLParameter = { }, }; +export const filter: OperationQueryParameter = { + parameterPath: ["options", "filter"], + mapper: { + serializedName: "$filter", + type: { + name: "String", + }, + }, +}; + export const resourceGroupName: OperationURLParameter = { parameterPath: "resourceGroupName", mapper: { @@ -112,15 +128,15 @@ export const resourceGroupName: OperationURLParameter = { }, }; -export const workspaceName: OperationURLParameter = { - parameterPath: "workspaceName", +export const appAttachPackageName: OperationURLParameter = { + parameterPath: "appAttachPackageName", mapper: { constraints: { - Pattern: new RegExp("^[A-Za-z0-9@.\\-_ ]*$"), - MaxLength: 64, + Pattern: new RegExp("^[a-z0-9]([a-z0-9]|(-(?!-))){1,61}[a-z0-9]$"), + MaxLength: 100, MinLength: 3, }, - serializedName: "workspaceName", + serializedName: "appAttachPackageName", required: true, type: { name: "String", @@ -140,14 +156,24 @@ export const contentType: OperationParameter = { }, }; -export const workspace: OperationParameter = { - parameterPath: "workspace", - mapper: WorkspaceMapper, +export const appAttachPackage: OperationParameter = { + parameterPath: "appAttachPackage", + mapper: AppAttachPackageMapper, }; -export const workspace1: OperationParameter = { - parameterPath: ["options", "workspace"], - mapper: WorkspacePatchMapper, +export const appAttachPackagePatch: OperationParameter = { + parameterPath: ["options", "appAttachPackagePatch"], + mapper: AppAttachPackagePatchMapper, +}; + +export const force: OperationQueryParameter = { + parameterPath: ["options", "force"], + mapper: { + serializedName: "force", + type: { + name: "Boolean", + }, + }, }; export const pageSize: OperationQueryParameter = { @@ -180,10 +206,15 @@ export const initialSkip: OperationQueryParameter = { }, }; -export const privateEndpointConnectionName: OperationURLParameter = { - parameterPath: "privateEndpointConnectionName", +export const applicationGroupName: OperationURLParameter = { + parameterPath: "applicationGroupName", mapper: { - serializedName: "privateEndpointConnectionName", + constraints: { + Pattern: new RegExp("^[A-Za-z0-9@.\\-_ ]*$"), + MaxLength: 64, + MinLength: 3, + }, + serializedName: "applicationGroupName", required: true, type: { name: "String", @@ -191,9 +222,14 @@ export const privateEndpointConnectionName: OperationURLParameter = { }, }; -export const connection: OperationParameter = { - parameterPath: "connection", - mapper: PrivateEndpointConnectionMapper, +export const applicationGroup: OperationParameter = { + parameterPath: "applicationGroup", + mapper: ApplicationGroupMapper, +}; + +export const applicationGroup1: OperationParameter = { + parameterPath: ["options", "applicationGroup"], + mapper: ApplicationGroupPatchMapper, }; export const hostPoolName: OperationURLParameter = { @@ -212,6 +248,16 @@ export const hostPoolName: OperationURLParameter = { }, }; +export const hostPool: OperationParameter = { + parameterPath: "hostPool", + mapper: HostPoolMapper, +}; + +export const hostPool1: OperationParameter = { + parameterPath: ["options", "hostPool"], + mapper: HostPoolPatchMapper, +}; + export const scalingPlanName: OperationURLParameter = { parameterPath: "scalingPlanName", mapper: { @@ -238,51 +284,15 @@ export const scalingPlan1: OperationParameter = { mapper: ScalingPlanPatchMapper, }; -export const scalingPlanScheduleName: OperationURLParameter = { - parameterPath: "scalingPlanScheduleName", - mapper: { - constraints: { - Pattern: new RegExp("^[A-Za-z0-9@.\\-_ ]*$"), - MaxLength: 64, - MinLength: 1, - }, - serializedName: "scalingPlanScheduleName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const scalingPlanSchedule: OperationParameter = { - parameterPath: "scalingPlanSchedule", - mapper: ScalingPlanPooledScheduleMapper, -}; - -export const scalingPlanSchedule1: OperationParameter = { - parameterPath: ["options", "scalingPlanSchedule"], - mapper: ScalingPlanPooledSchedulePatchMapper, -}; - -export const scalingPlanSchedule2: OperationParameter = { - parameterPath: "scalingPlanSchedule", - mapper: ScalingPlanPersonalScheduleMapper, -}; - -export const scalingPlanSchedule3: OperationParameter = { - parameterPath: ["options", "scalingPlanSchedule"], - mapper: ScalingPlanPersonalSchedulePatchMapper, -}; - -export const applicationGroupName: OperationURLParameter = { - parameterPath: "applicationGroupName", +export const workspaceName: OperationURLParameter = { + parameterPath: "workspaceName", mapper: { constraints: { Pattern: new RegExp("^[A-Za-z0-9@.\\-_ ]*$"), MaxLength: 64, MinLength: 3, }, - serializedName: "applicationGroupName", + serializedName: "workspaceName", required: true, type: { name: "String", @@ -290,24 +300,14 @@ export const applicationGroupName: OperationURLParameter = { }, }; -export const applicationGroup: OperationParameter = { - parameterPath: "applicationGroup", - mapper: ApplicationGroupMapper, -}; - -export const applicationGroup1: OperationParameter = { - parameterPath: ["options", "applicationGroup"], - mapper: ApplicationGroupPatchMapper, +export const workspace: OperationParameter = { + parameterPath: "workspace", + mapper: WorkspaceMapper, }; -export const filter: OperationQueryParameter = { - parameterPath: ["options", "filter"], - mapper: { - serializedName: "$filter", - type: { - name: "String", - }, - }, +export const workspace1: OperationParameter = { + parameterPath: ["options", "workspace"], + mapper: WorkspacePatchMapper, }; export const applicationName: OperationURLParameter = { @@ -357,24 +357,101 @@ export const desktop: OperationParameter = { mapper: DesktopPatchMapper, }; -export const hostPool: OperationParameter = { - parameterPath: "hostPool", - mapper: HostPoolMapper, +export const msixImageURI: OperationParameter = { + parameterPath: "msixImageURI", + mapper: MsixImageURIMapper, }; -export const force: OperationQueryParameter = { - parameterPath: ["options", "force"], +export const importPackageInfoRequest: OperationParameter = { + parameterPath: "importPackageInfoRequest", + mapper: ImportPackageInfoRequestMapper, +}; + +export const msixPackageFullName: OperationURLParameter = { + parameterPath: "msixPackageFullName", mapper: { - serializedName: "force", + constraints: { + Pattern: new RegExp("^[A-Za-z0-9@.\\-_ ]*$"), + MaxLength: 100, + MinLength: 3, + }, + serializedName: "msixPackageFullName", + required: true, type: { - name: "Boolean", + name: "String", }, }, }; -export const hostPool1: OperationParameter = { - parameterPath: ["options", "hostPool"], - mapper: HostPoolPatchMapper, +export const msixPackage: OperationParameter = { + parameterPath: "msixPackage", + mapper: MsixPackageMapper, +}; + +export const msixPackage1: OperationParameter = { + parameterPath: "msixPackage", + mapper: MsixPackagePatchMapper, +}; + +export const privateEndpointConnectionName: OperationURLParameter = { + parameterPath: "privateEndpointConnectionName", + mapper: { + serializedName: "privateEndpointConnectionName", + required: true, + type: { + name: "String", + }, + }, +}; + +export const connection: OperationParameter = { + parameterPath: "connection", + mapper: PrivateEndpointConnectionWithSystemDataMapper, +}; + +export const sessionHostConfiguration: OperationParameter = { + parameterPath: "sessionHostConfiguration", + mapper: SessionHostConfigurationMapper, +}; + +export const sessionHostConfiguration1: OperationParameter = { + parameterPath: ["options", "sessionHostConfiguration"], + mapper: SessionHostConfigurationPatchMapper, +}; + +export const sessionHostManagement: OperationParameter = { + parameterPath: "sessionHostManagement", + mapper: SessionHostManagementMapper, +}; + +export const sessionHostManagement1: OperationParameter = { + parameterPath: ["options", "sessionHostManagement"], + mapper: SessionHostManagementPatchMapper, +}; + +export const hostPoolUpdateControlParameter: OperationParameter = { + parameterPath: "hostPoolUpdateControlParameter", + mapper: HostPoolUpdateControlParameterMapper, +}; + +export const updateSessionHostsRequestBody: OperationParameter = { + parameterPath: ["options", "updateSessionHostsRequestBody"], + mapper: UpdateSessionHostsRequestBodyMapper, +}; + +export const vmPath: OperationQueryParameter = { + parameterPath: ["options", "vmPath"], + mapper: { + constraints: { + Pattern: new RegExp("^[A-Z][a-z][0-9][@./-_ ]*$"), + MaxLength: 1092, + MinLength: 3, + }, + serializedName: "vmPath", + type: { + name: "String", + }, + }, }; export const sessionHostName: OperationURLParameter = { @@ -393,6 +470,11 @@ export const sessionHostName: OperationURLParameter = { }, }; +export const sessionHost: OperationParameter = { + parameterPath: ["options", "sessionHost"], + mapper: SessionHostPatchMapper, +}; + export const userSessionId: OperationURLParameter = { parameterPath: "userSessionId", mapper: { @@ -413,20 +495,15 @@ export const sendMessage: OperationParameter = { mapper: SendMessageMapper, }; -export const sessionHost: OperationParameter = { - parameterPath: ["options", "sessionHost"], - mapper: SessionHostPatchMapper, -}; - -export const msixPackageFullName: OperationURLParameter = { - parameterPath: "msixPackageFullName", +export const scalingPlanScheduleName: OperationURLParameter = { + parameterPath: "scalingPlanScheduleName", mapper: { constraints: { Pattern: new RegExp("^[A-Za-z0-9@.\\-_ ]*$"), - MaxLength: 100, - MinLength: 3, + MaxLength: 64, + MinLength: 1, }, - serializedName: "msixPackageFullName", + serializedName: "scalingPlanScheduleName", required: true, type: { name: "String", @@ -434,48 +511,22 @@ export const msixPackageFullName: OperationURLParameter = { }, }; -export const msixPackage: OperationParameter = { - parameterPath: "msixPackage", - mapper: MsixPackageMapper, -}; - -export const msixPackage1: OperationParameter = { - parameterPath: ["options", "msixPackage"], - mapper: MsixPackagePatchMapper, -}; - -export const importPackageInfoRequest: OperationParameter = { - parameterPath: "importPackageInfoRequest", - mapper: ImportPackageInfoRequestMapper, -}; - -export const msixImageURI: OperationParameter = { - parameterPath: "msixImageURI", - mapper: MsixImageURIMapper, +export const scalingPlanSchedule: OperationParameter = { + parameterPath: "scalingPlanSchedule", + mapper: ScalingPlanPersonalScheduleMapper, }; -export const appAttachPackageName: OperationURLParameter = { - parameterPath: "appAttachPackageName", - mapper: { - constraints: { - Pattern: new RegExp("^[a-z0-9]([a-z0-9]|(-(?!-))){1,61}[a-z0-9]$"), - MaxLength: 100, - MinLength: 3, - }, - serializedName: "appAttachPackageName", - required: true, - type: { - name: "String", - }, - }, +export const scalingPlanSchedule1: OperationParameter = { + parameterPath: ["options", "scalingPlanSchedule"], + mapper: ScalingPlanPersonalSchedulePatchMapper, }; -export const appAttachPackage: OperationParameter = { - parameterPath: "appAttachPackage", - mapper: AppAttachPackageMapper, +export const scalingPlanSchedule2: OperationParameter = { + parameterPath: "scalingPlanSchedule", + mapper: ScalingPlanPooledScheduleMapper, }; -export const appAttachPackagePatch: OperationParameter = { - parameterPath: ["options", "appAttachPackagePatch"], - mapper: AppAttachPackagePatchMapper, +export const scalingPlanSchedule3: OperationParameter = { + parameterPath: ["options", "scalingPlanSchedule"], + mapper: ScalingPlanPooledSchedulePatchMapper, }; diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/activeSessionHostConfigurations.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/activeSessionHostConfigurations.ts new file mode 100644 index 000000000000..415f99f9040e --- /dev/null +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/activeSessionHostConfigurations.ts @@ -0,0 +1,243 @@ +/* + * 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 { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; +import { setContinuationToken } from "../pagingHelper.js"; +import { ActiveSessionHostConfigurations } from "../operationsInterfaces/index.js"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers.js"; +import * as Parameters from "../models/parameters.js"; +import { DesktopVirtualizationAPIClient } from "../desktopVirtualizationAPIClient.js"; +import { + ActiveSessionHostConfiguration, + ActiveSessionHostConfigurationsListByHostPoolNextOptionalParams, + ActiveSessionHostConfigurationsListByHostPoolOptionalParams, + ActiveSessionHostConfigurationsListByHostPoolResponse, + ActiveSessionHostConfigurationsGetOptionalParams, + ActiveSessionHostConfigurationsGetResponse, + ActiveSessionHostConfigurationsListByHostPoolNextResponse, +} from "../models/index.js"; + +/// +/** Class containing ActiveSessionHostConfigurations operations. */ +export class ActiveSessionHostConfigurationsImpl + implements ActiveSessionHostConfigurations +{ + private readonly client: DesktopVirtualizationAPIClient; + + /** + * Initialize a new instance of the class ActiveSessionHostConfigurations class. + * @param client Reference to the service client + */ + constructor(client: DesktopVirtualizationAPIClient) { + this.client = client; + } + + /** + * Operation to list the ActiveSessionHostConfigurations associated with the 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 options parameters. + */ + public listByHostPool( + resourceGroupName: string, + hostPoolName: string, + options?: ActiveSessionHostConfigurationsListByHostPoolOptionalParams, + ): PagedAsyncIterableIterator { + const iter = this.listByHostPoolPagingAll( + resourceGroupName, + hostPoolName, + options, + ); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: (settings?: PageSettings) => { + if (settings?.maxPageSize) { + throw new Error("maxPageSize is not supported by this operation."); + } + return this.listByHostPoolPagingPage( + resourceGroupName, + hostPoolName, + options, + settings, + ); + }, + }; + } + + private async *listByHostPoolPagingPage( + resourceGroupName: string, + hostPoolName: string, + options?: ActiveSessionHostConfigurationsListByHostPoolOptionalParams, + settings?: PageSettings, + ): AsyncIterableIterator { + let result: ActiveSessionHostConfigurationsListByHostPoolResponse; + let continuationToken = settings?.continuationToken; + if (!continuationToken) { + result = await this._listByHostPool( + resourceGroupName, + hostPoolName, + options, + ); + let page = result.value || []; + continuationToken = result.nextLink; + setContinuationToken(page, continuationToken); + yield page; + } + while (continuationToken) { + result = await this._listByHostPoolNext( + resourceGroupName, + hostPoolName, + continuationToken, + options, + ); + continuationToken = result.nextLink; + let page = result.value || []; + setContinuationToken(page, continuationToken); + yield page; + } + } + + private async *listByHostPoolPagingAll( + resourceGroupName: string, + hostPoolName: string, + options?: ActiveSessionHostConfigurationsListByHostPoolOptionalParams, + ): AsyncIterableIterator { + for await (const page of this.listByHostPoolPagingPage( + resourceGroupName, + hostPoolName, + options, + )) { + yield* page; + } + } + + /** + * Operation to list the ActiveSessionHostConfigurations associated with the 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 options parameters. + */ + private _listByHostPool( + resourceGroupName: string, + hostPoolName: string, + options?: ActiveSessionHostConfigurationsListByHostPoolOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, hostPoolName, options }, + listByHostPoolOperationSpec, + ); + } + + /** + * Get a ActiveSessionHostConfiguration. + * @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 options parameters. + */ + get( + resourceGroupName: string, + hostPoolName: string, + options?: ActiveSessionHostConfigurationsGetOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, hostPoolName, options }, + getOperationSpec, + ); + } + + /** + * ListByHostPoolNext + * @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 nextLink The nextLink from the previous successful call to the ListByHostPool method. + * @param options The options parameters. + */ + private _listByHostPoolNext( + resourceGroupName: string, + hostPoolName: string, + nextLink: string, + options?: ActiveSessionHostConfigurationsListByHostPoolNextOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, hostPoolName, nextLink, options }, + listByHostPoolNextOperationSpec, + ); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const listByHostPoolOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/activeSessionHostConfigurations", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ActiveSessionHostConfigurationList, + }, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + ], + headerParameters: [Parameters.accept], + serializer, +}; +const getOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/activeSessionHostConfigurations/default", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ActiveSessionHostConfiguration, + }, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + ], + headerParameters: [Parameters.accept], + serializer, +}; +const listByHostPoolNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ActiveSessionHostConfigurationList, + }, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + urlParameters: [ + Parameters.$host, + Parameters.nextLink, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + ], + headerParameters: [Parameters.accept], + serializer, +}; diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/appAttachPackageInfo.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/appAttachPackageInfo.ts index 58f8ca590da3..ebdc2f92f256 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/appAttachPackageInfo.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/appAttachPackageInfo.ts @@ -39,7 +39,7 @@ export class AppAttachPackageInfoImpl implements AppAttachPackageInfo { * Gets information from a package given the path to the 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 importPackageInfoRequest Object containing URI to package image and other optional properties + * @param importPackageInfoRequest Information to import app attach package * @param options The options parameters. */ public listImport( @@ -132,7 +132,7 @@ export class AppAttachPackageInfoImpl implements AppAttachPackageInfo { * Gets information from a package given the path to the 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 importPackageInfoRequest Object containing URI to package image and other optional properties + * @param importPackageInfoRequest Information to import app attach package * @param options The options parameters. */ private _import( @@ -151,7 +151,7 @@ export class AppAttachPackageInfoImpl implements AppAttachPackageInfo { * ImportNext * @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 importPackageInfoRequest Object containing URI to package image and other optional properties + * @param importPackageInfoRequest Information to import app attach package * @param nextLink The nextLink from the previous successful call to the Import method. * @param options The options parameters. */ diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/appAttachPackageOperations.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/appAttachPackageOperations.ts index 1004dfab8bc5..a55b40814797 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/appAttachPackageOperations.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/appAttachPackageOperations.ts @@ -15,21 +15,21 @@ import * as Parameters from "../models/parameters.js"; import { DesktopVirtualizationAPIClient } from "../desktopVirtualizationAPIClient.js"; import { AppAttachPackage, - AppAttachPackageListByResourceGroupNextOptionalParams, - AppAttachPackageListByResourceGroupOptionalParams, - AppAttachPackageListByResourceGroupResponse, AppAttachPackageListBySubscriptionNextOptionalParams, AppAttachPackageListBySubscriptionOptionalParams, AppAttachPackageListBySubscriptionResponse, + AppAttachPackageListByResourceGroupNextOptionalParams, + AppAttachPackageListByResourceGroupOptionalParams, + AppAttachPackageListByResourceGroupResponse, AppAttachPackageGetOptionalParams, AppAttachPackageGetResponse, AppAttachPackageCreateOrUpdateOptionalParams, AppAttachPackageCreateOrUpdateResponse, - AppAttachPackageDeleteOptionalParams, AppAttachPackageUpdateOptionalParams, AppAttachPackageUpdateResponse, - AppAttachPackageListByResourceGroupNextResponse, + AppAttachPackageDeleteOptionalParams, AppAttachPackageListBySubscriptionNextResponse, + AppAttachPackageListByResourceGroupNextResponse, } from "../models/index.js"; /// @@ -48,15 +48,13 @@ export class AppAttachPackageOperationsImpl } /** - * List App Attach packages in resource group. - * @param resourceGroupName The name of the resource group. The name is case insensitive. + * List App Attach packages in subscription. * @param options The options parameters. */ - public listByResourceGroup( - resourceGroupName: string, - options?: AppAttachPackageListByResourceGroupOptionalParams, + public listBySubscription( + options?: AppAttachPackageListBySubscriptionOptionalParams, ): PagedAsyncIterableIterator { - const iter = this.listByResourceGroupPagingAll(resourceGroupName, options); + const iter = this.listBySubscriptionPagingAll(options); return { next() { return iter.next(); @@ -68,35 +66,26 @@ export class AppAttachPackageOperationsImpl if (settings?.maxPageSize) { throw new Error("maxPageSize is not supported by this operation."); } - return this.listByResourceGroupPagingPage( - resourceGroupName, - options, - settings, - ); + return this.listBySubscriptionPagingPage(options, settings); }, }; } - private async *listByResourceGroupPagingPage( - resourceGroupName: string, - options?: AppAttachPackageListByResourceGroupOptionalParams, + private async *listBySubscriptionPagingPage( + options?: AppAttachPackageListBySubscriptionOptionalParams, settings?: PageSettings, ): AsyncIterableIterator { - let result: AppAttachPackageListByResourceGroupResponse; + let result: AppAttachPackageListBySubscriptionResponse; let continuationToken = settings?.continuationToken; if (!continuationToken) { - result = await this._listByResourceGroup(resourceGroupName, options); + result = await this._listBySubscription(options); let page = result.value || []; continuationToken = result.nextLink; setContinuationToken(page, continuationToken); yield page; } while (continuationToken) { - result = await this._listByResourceGroupNext( - resourceGroupName, - continuationToken, - options, - ); + result = await this._listBySubscriptionNext(continuationToken, options); continuationToken = result.nextLink; let page = result.value || []; setContinuationToken(page, continuationToken); @@ -104,26 +93,24 @@ export class AppAttachPackageOperationsImpl } } - private async *listByResourceGroupPagingAll( - resourceGroupName: string, - options?: AppAttachPackageListByResourceGroupOptionalParams, + private async *listBySubscriptionPagingAll( + options?: AppAttachPackageListBySubscriptionOptionalParams, ): AsyncIterableIterator { - for await (const page of this.listByResourceGroupPagingPage( - resourceGroupName, - options, - )) { + for await (const page of this.listBySubscriptionPagingPage(options)) { yield* page; } } /** - * List App Attach packages in subscription. + * List App Attach packages in resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param options The options parameters. */ - public listBySubscription( - options?: AppAttachPackageListBySubscriptionOptionalParams, + public listByResourceGroup( + resourceGroupName: string, + options?: AppAttachPackageListByResourceGroupOptionalParams, ): PagedAsyncIterableIterator { - const iter = this.listBySubscriptionPagingAll(options); + const iter = this.listByResourceGroupPagingAll(resourceGroupName, options); return { next() { return iter.next(); @@ -135,26 +122,35 @@ export class AppAttachPackageOperationsImpl if (settings?.maxPageSize) { throw new Error("maxPageSize is not supported by this operation."); } - return this.listBySubscriptionPagingPage(options, settings); + return this.listByResourceGroupPagingPage( + resourceGroupName, + options, + settings, + ); }, }; } - private async *listBySubscriptionPagingPage( - options?: AppAttachPackageListBySubscriptionOptionalParams, + private async *listByResourceGroupPagingPage( + resourceGroupName: string, + options?: AppAttachPackageListByResourceGroupOptionalParams, settings?: PageSettings, ): AsyncIterableIterator { - let result: AppAttachPackageListBySubscriptionResponse; + let result: AppAttachPackageListByResourceGroupResponse; let continuationToken = settings?.continuationToken; if (!continuationToken) { - result = await this._listBySubscription(options); + result = await this._listByResourceGroup(resourceGroupName, options); let page = result.value || []; continuationToken = result.nextLink; setContinuationToken(page, continuationToken); yield page; } while (continuationToken) { - result = await this._listBySubscriptionNext(continuationToken, options); + result = await this._listByResourceGroupNext( + resourceGroupName, + continuationToken, + options, + ); continuationToken = result.nextLink; let page = result.value || []; setContinuationToken(page, continuationToken); @@ -162,14 +158,46 @@ export class AppAttachPackageOperationsImpl } } - private async *listBySubscriptionPagingAll( - options?: AppAttachPackageListBySubscriptionOptionalParams, + private async *listByResourceGroupPagingAll( + resourceGroupName: string, + options?: AppAttachPackageListByResourceGroupOptionalParams, ): AsyncIterableIterator { - for await (const page of this.listBySubscriptionPagingPage(options)) { + for await (const page of this.listByResourceGroupPagingPage( + resourceGroupName, + options, + )) { yield* page; } } + /** + * List App Attach packages in subscription. + * @param options The options parameters. + */ + private _listBySubscription( + options?: AppAttachPackageListBySubscriptionOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { options }, + listBySubscriptionOperationSpec, + ); + } + + /** + * List App Attach packages in resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param options The options parameters. + */ + private _listByResourceGroup( + resourceGroupName: string, + options?: AppAttachPackageListByResourceGroupOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, options }, + listByResourceGroupOperationSpec, + ); + } + /** * Get an app attach package. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -206,23 +234,6 @@ export class AppAttachPackageOperationsImpl ); } - /** - * Remove an App Attach Package. - * @param resourceGroupName The name of the resource group. The name is case insensitive. - * @param appAttachPackageName The name of the App Attach package - * @param options The options parameters. - */ - delete( - resourceGroupName: string, - appAttachPackageName: string, - options?: AppAttachPackageDeleteOptionalParams, - ): Promise { - return this.client.sendOperationRequest( - { resourceGroupName, appAttachPackageName, options }, - deleteOperationSpec, - ); - } - /** * Update an App Attach Package * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -241,30 +252,34 @@ export class AppAttachPackageOperationsImpl } /** - * List App Attach packages in resource group. + * Remove an App Attach Package. * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param appAttachPackageName The name of the App Attach package * @param options The options parameters. */ - private _listByResourceGroup( + delete( resourceGroupName: string, - options?: AppAttachPackageListByResourceGroupOptionalParams, - ): Promise { + appAttachPackageName: string, + options?: AppAttachPackageDeleteOptionalParams, + ): Promise { return this.client.sendOperationRequest( - { resourceGroupName, options }, - listByResourceGroupOperationSpec, + { resourceGroupName, appAttachPackageName, options }, + deleteOperationSpec, ); } /** - * List App Attach packages in subscription. + * ListBySubscriptionNext + * @param nextLink The nextLink from the previous successful call to the ListBySubscription method. * @param options The options parameters. */ - private _listBySubscription( - options?: AppAttachPackageListBySubscriptionOptionalParams, - ): Promise { + private _listBySubscriptionNext( + nextLink: string, + options?: AppAttachPackageListBySubscriptionNextOptionalParams, + ): Promise { return this.client.sendOperationRequest( - { options }, - listBySubscriptionOperationSpec, + { nextLink, options }, + listBySubscriptionNextOperationSpec, ); } @@ -284,61 +299,57 @@ export class AppAttachPackageOperationsImpl listByResourceGroupNextOperationSpec, ); } - - /** - * ListBySubscriptionNext - * @param nextLink The nextLink from the previous successful call to the ListBySubscription method. - * @param options The options parameters. - */ - private _listBySubscriptionNext( - nextLink: string, - options?: AppAttachPackageListBySubscriptionNextOptionalParams, - ): Promise { - return this.client.sendOperationRequest( - { nextLink, options }, - listBySubscriptionNextOperationSpec, - ); - } } // Operation Specifications const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); -const getOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/appAttachPackages/{appAttachPackageName}", +const listBySubscriptionOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/appAttachPackages", httpMethod: "GET", responses: { 200: { - bodyMapper: Mappers.AppAttachPackage, + bodyMapper: Mappers.AppAttachPackageList, }, default: { bodyMapper: Mappers.ErrorResponse, }, }, - queryParameters: [Parameters.apiVersion], + queryParameters: [Parameters.apiVersion, Parameters.filter], + urlParameters: [Parameters.$host, Parameters.subscriptionId], + headerParameters: [Parameters.accept], + serializer, +}; +const listByResourceGroupOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/appAttachPackages", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.AppAttachPackageList, + }, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + queryParameters: [Parameters.apiVersion, Parameters.filter], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, - Parameters.appAttachPackageName, ], headerParameters: [Parameters.accept], serializer, }; -const createOrUpdateOperationSpec: coreClient.OperationSpec = { +const getOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/appAttachPackages/{appAttachPackageName}", - httpMethod: "PUT", + httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.AppAttachPackage, }, - 201: { - bodyMapper: Mappers.AppAttachPackage, - }, default: { bodyMapper: Mappers.ErrorResponse, }, }, - requestBody: Parameters.appAttachPackage, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -346,20 +357,24 @@ const createOrUpdateOperationSpec: coreClient.OperationSpec = { Parameters.resourceGroupName, Parameters.appAttachPackageName, ], - headerParameters: [Parameters.accept, Parameters.contentType], - mediaType: "json", + headerParameters: [Parameters.accept], serializer, }; -const deleteOperationSpec: coreClient.OperationSpec = { +const createOrUpdateOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/appAttachPackages/{appAttachPackageName}", - httpMethod: "DELETE", + httpMethod: "PUT", responses: { - 200: {}, - 204: {}, + 200: { + bodyMapper: Mappers.AppAttachPackage, + }, + 201: { + bodyMapper: Mappers.AppAttachPackage, + }, default: { bodyMapper: Mappers.ErrorResponse, }, }, + requestBody: Parameters.appAttachPackage, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -367,7 +382,8 @@ const deleteOperationSpec: coreClient.OperationSpec = { Parameters.resourceGroupName, Parameters.appAttachPackageName, ], - headerParameters: [Parameters.accept], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", serializer, }; const updateOperationSpec: coreClient.OperationSpec = { @@ -393,43 +409,27 @@ const updateOperationSpec: coreClient.OperationSpec = { mediaType: "json", serializer, }; -const listByResourceGroupOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/appAttachPackages", - httpMethod: "GET", +const deleteOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/appAttachPackages/{appAttachPackageName}", + httpMethod: "DELETE", responses: { - 200: { - bodyMapper: Mappers.AppAttachPackageList, - }, + 200: {}, + 204: {}, default: { bodyMapper: Mappers.ErrorResponse, }, }, - queryParameters: [Parameters.apiVersion, Parameters.filter], + queryParameters: [Parameters.apiVersion, Parameters.force], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, + Parameters.appAttachPackageName, ], headerParameters: [Parameters.accept], serializer, }; -const listBySubscriptionOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/appAttachPackages", - httpMethod: "GET", - responses: { - 200: { - bodyMapper: Mappers.AppAttachPackageList, - }, - default: { - bodyMapper: Mappers.ErrorResponse, - }, - }, - queryParameters: [Parameters.apiVersion, Parameters.filter], - urlParameters: [Parameters.$host, Parameters.subscriptionId], - headerParameters: [Parameters.accept], - serializer, -}; -const listByResourceGroupNextOperationSpec: coreClient.OperationSpec = { +const listBySubscriptionNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", httpMethod: "GET", responses: { @@ -444,12 +444,11 @@ const listByResourceGroupNextOperationSpec: coreClient.OperationSpec = { Parameters.$host, Parameters.nextLink, Parameters.subscriptionId, - Parameters.resourceGroupName, ], headerParameters: [Parameters.accept], serializer, }; -const listBySubscriptionNextOperationSpec: coreClient.OperationSpec = { +const listByResourceGroupNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", httpMethod: "GET", responses: { @@ -464,6 +463,7 @@ const listBySubscriptionNextOperationSpec: coreClient.OperationSpec = { Parameters.$host, Parameters.nextLink, Parameters.subscriptionId, + Parameters.resourceGroupName, ], headerParameters: [Parameters.accept], serializer, diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/applicationGroups.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/applicationGroups.ts index cfa098e7e56e..71adebbe4589 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/applicationGroups.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/applicationGroups.ts @@ -15,21 +15,21 @@ import * as Parameters from "../models/parameters.js"; import { DesktopVirtualizationAPIClient } from "../desktopVirtualizationAPIClient.js"; import { ApplicationGroup, - ApplicationGroupsListByResourceGroupNextOptionalParams, - ApplicationGroupsListByResourceGroupOptionalParams, - ApplicationGroupsListByResourceGroupResponse, ApplicationGroupsListBySubscriptionNextOptionalParams, ApplicationGroupsListBySubscriptionOptionalParams, ApplicationGroupsListBySubscriptionResponse, + ApplicationGroupsListByResourceGroupNextOptionalParams, + ApplicationGroupsListByResourceGroupOptionalParams, + ApplicationGroupsListByResourceGroupResponse, ApplicationGroupsGetOptionalParams, ApplicationGroupsGetResponse, ApplicationGroupsCreateOrUpdateOptionalParams, ApplicationGroupsCreateOrUpdateResponse, - ApplicationGroupsDeleteOptionalParams, ApplicationGroupsUpdateOptionalParams, ApplicationGroupsUpdateResponse, - ApplicationGroupsListByResourceGroupNextResponse, + ApplicationGroupsDeleteOptionalParams, ApplicationGroupsListBySubscriptionNextResponse, + ApplicationGroupsListByResourceGroupNextResponse, } from "../models/index.js"; /// @@ -46,15 +46,13 @@ export class ApplicationGroupsImpl implements ApplicationGroups { } /** - * List applicationGroups. - * @param resourceGroupName The name of the resource group. The name is case insensitive. + * List applicationGroups in subscription. * @param options The options parameters. */ - public listByResourceGroup( - resourceGroupName: string, - options?: ApplicationGroupsListByResourceGroupOptionalParams, + public listBySubscription( + options?: ApplicationGroupsListBySubscriptionOptionalParams, ): PagedAsyncIterableIterator { - const iter = this.listByResourceGroupPagingAll(resourceGroupName, options); + const iter = this.listBySubscriptionPagingAll(options); return { next() { return iter.next(); @@ -66,35 +64,26 @@ export class ApplicationGroupsImpl implements ApplicationGroups { if (settings?.maxPageSize) { throw new Error("maxPageSize is not supported by this operation."); } - return this.listByResourceGroupPagingPage( - resourceGroupName, - options, - settings, - ); + return this.listBySubscriptionPagingPage(options, settings); }, }; } - private async *listByResourceGroupPagingPage( - resourceGroupName: string, - options?: ApplicationGroupsListByResourceGroupOptionalParams, + private async *listBySubscriptionPagingPage( + options?: ApplicationGroupsListBySubscriptionOptionalParams, settings?: PageSettings, ): AsyncIterableIterator { - let result: ApplicationGroupsListByResourceGroupResponse; + let result: ApplicationGroupsListBySubscriptionResponse; let continuationToken = settings?.continuationToken; if (!continuationToken) { - result = await this._listByResourceGroup(resourceGroupName, options); + result = await this._listBySubscription(options); let page = result.value || []; continuationToken = result.nextLink; setContinuationToken(page, continuationToken); yield page; } while (continuationToken) { - result = await this._listByResourceGroupNext( - resourceGroupName, - continuationToken, - options, - ); + result = await this._listBySubscriptionNext(continuationToken, options); continuationToken = result.nextLink; let page = result.value || []; setContinuationToken(page, continuationToken); @@ -102,26 +91,24 @@ export class ApplicationGroupsImpl implements ApplicationGroups { } } - private async *listByResourceGroupPagingAll( - resourceGroupName: string, - options?: ApplicationGroupsListByResourceGroupOptionalParams, + private async *listBySubscriptionPagingAll( + options?: ApplicationGroupsListBySubscriptionOptionalParams, ): AsyncIterableIterator { - for await (const page of this.listByResourceGroupPagingPage( - resourceGroupName, - options, - )) { + for await (const page of this.listBySubscriptionPagingPage(options)) { yield* page; } } /** - * List applicationGroups in subscription. + * List applicationGroups. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param options The options parameters. */ - public listBySubscription( - options?: ApplicationGroupsListBySubscriptionOptionalParams, + public listByResourceGroup( + resourceGroupName: string, + options?: ApplicationGroupsListByResourceGroupOptionalParams, ): PagedAsyncIterableIterator { - const iter = this.listBySubscriptionPagingAll(options); + const iter = this.listByResourceGroupPagingAll(resourceGroupName, options); return { next() { return iter.next(); @@ -133,26 +120,35 @@ export class ApplicationGroupsImpl implements ApplicationGroups { if (settings?.maxPageSize) { throw new Error("maxPageSize is not supported by this operation."); } - return this.listBySubscriptionPagingPage(options, settings); + return this.listByResourceGroupPagingPage( + resourceGroupName, + options, + settings, + ); }, }; } - private async *listBySubscriptionPagingPage( - options?: ApplicationGroupsListBySubscriptionOptionalParams, + private async *listByResourceGroupPagingPage( + resourceGroupName: string, + options?: ApplicationGroupsListByResourceGroupOptionalParams, settings?: PageSettings, ): AsyncIterableIterator { - let result: ApplicationGroupsListBySubscriptionResponse; + let result: ApplicationGroupsListByResourceGroupResponse; let continuationToken = settings?.continuationToken; if (!continuationToken) { - result = await this._listBySubscription(options); + result = await this._listByResourceGroup(resourceGroupName, options); let page = result.value || []; continuationToken = result.nextLink; setContinuationToken(page, continuationToken); yield page; } while (continuationToken) { - result = await this._listBySubscriptionNext(continuationToken, options); + result = await this._listByResourceGroupNext( + resourceGroupName, + continuationToken, + options, + ); continuationToken = result.nextLink; let page = result.value || []; setContinuationToken(page, continuationToken); @@ -160,14 +156,46 @@ export class ApplicationGroupsImpl implements ApplicationGroups { } } - private async *listBySubscriptionPagingAll( - options?: ApplicationGroupsListBySubscriptionOptionalParams, + private async *listByResourceGroupPagingAll( + resourceGroupName: string, + options?: ApplicationGroupsListByResourceGroupOptionalParams, ): AsyncIterableIterator { - for await (const page of this.listBySubscriptionPagingPage(options)) { + for await (const page of this.listByResourceGroupPagingPage( + resourceGroupName, + options, + )) { yield* page; } } + /** + * List applicationGroups in subscription. + * @param options The options parameters. + */ + private _listBySubscription( + options?: ApplicationGroupsListBySubscriptionOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { options }, + listBySubscriptionOperationSpec, + ); + } + + /** + * List applicationGroups. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param options The options parameters. + */ + private _listByResourceGroup( + resourceGroupName: string, + options?: ApplicationGroupsListByResourceGroupOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, options }, + listByResourceGroupOperationSpec, + ); + } + /** * Get an application group. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -204,23 +232,6 @@ export class ApplicationGroupsImpl implements ApplicationGroups { ); } - /** - * 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 options parameters. - */ - delete( - resourceGroupName: string, - applicationGroupName: string, - options?: ApplicationGroupsDeleteOptionalParams, - ): Promise { - return this.client.sendOperationRequest( - { resourceGroupName, applicationGroupName, options }, - deleteOperationSpec, - ); - } - /** * Update an applicationGroup. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -239,30 +250,34 @@ export class ApplicationGroupsImpl implements ApplicationGroups { } /** - * List applicationGroups. + * 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 options parameters. */ - private _listByResourceGroup( + delete( resourceGroupName: string, - options?: ApplicationGroupsListByResourceGroupOptionalParams, - ): Promise { + applicationGroupName: string, + options?: ApplicationGroupsDeleteOptionalParams, + ): Promise { return this.client.sendOperationRequest( - { resourceGroupName, options }, - listByResourceGroupOperationSpec, + { resourceGroupName, applicationGroupName, options }, + deleteOperationSpec, ); } /** - * List applicationGroups in subscription. + * ListBySubscriptionNext + * @param nextLink The nextLink from the previous successful call to the ListBySubscription method. * @param options The options parameters. */ - private _listBySubscription( - options?: ApplicationGroupsListBySubscriptionOptionalParams, - ): Promise { + private _listBySubscriptionNext( + nextLink: string, + options?: ApplicationGroupsListBySubscriptionNextOptionalParams, + ): Promise { return this.client.sendOperationRequest( - { options }, - listBySubscriptionOperationSpec, + { nextLink, options }, + listBySubscriptionNextOperationSpec, ); } @@ -282,61 +297,63 @@ export class ApplicationGroupsImpl implements ApplicationGroups { listByResourceGroupNextOperationSpec, ); } - - /** - * ListBySubscriptionNext - * @param nextLink The nextLink from the previous successful call to the ListBySubscription method. - * @param options The options parameters. - */ - private _listBySubscriptionNext( - nextLink: string, - options?: ApplicationGroupsListBySubscriptionNextOptionalParams, - ): Promise { - return this.client.sendOperationRequest( - { nextLink, options }, - listBySubscriptionNextOperationSpec, - ); - } } // Operation Specifications const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); -const getOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}", +const listBySubscriptionOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/applicationGroups", httpMethod: "GET", responses: { 200: { - bodyMapper: Mappers.ApplicationGroup, + bodyMapper: Mappers.ApplicationGroupList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - queryParameters: [Parameters.apiVersion], + queryParameters: [Parameters.apiVersion, Parameters.filter], + urlParameters: [Parameters.$host, Parameters.subscriptionId], + headerParameters: [Parameters.accept], + serializer, +}; +const listByResourceGroupOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ApplicationGroupList, + }, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + queryParameters: [ + Parameters.apiVersion, + Parameters.filter, + Parameters.pageSize, + Parameters.isDescending, + Parameters.initialSkip, + ], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, - Parameters.applicationGroupName, ], headerParameters: [Parameters.accept], serializer, }; -const createOrUpdateOperationSpec: coreClient.OperationSpec = { +const getOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}", - httpMethod: "PUT", + httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.ApplicationGroup, }, - 201: { - bodyMapper: Mappers.ApplicationGroup, - }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - requestBody: Parameters.applicationGroup, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -344,20 +361,24 @@ const createOrUpdateOperationSpec: coreClient.OperationSpec = { Parameters.resourceGroupName, Parameters.applicationGroupName, ], - headerParameters: [Parameters.accept, Parameters.contentType], - mediaType: "json", + headerParameters: [Parameters.accept], serializer, }; -const deleteOperationSpec: coreClient.OperationSpec = { +const createOrUpdateOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}", - httpMethod: "DELETE", + httpMethod: "PUT", responses: { - 200: {}, - 204: {}, + 200: { + bodyMapper: Mappers.ApplicationGroup, + }, + 201: { + bodyMapper: Mappers.ApplicationGroup, + }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, + requestBody: Parameters.applicationGroup, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -365,7 +386,8 @@ const deleteOperationSpec: coreClient.OperationSpec = { Parameters.resourceGroupName, Parameters.applicationGroupName, ], - headerParameters: [Parameters.accept], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", serializer, }; const updateOperationSpec: coreClient.OperationSpec = { @@ -376,7 +398,7 @@ const updateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ApplicationGroup, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, requestBody: Parameters.applicationGroup1, @@ -391,49 +413,27 @@ const updateOperationSpec: coreClient.OperationSpec = { mediaType: "json", serializer, }; -const listByResourceGroupOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups", - httpMethod: "GET", +const deleteOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}", + httpMethod: "DELETE", responses: { - 200: { - bodyMapper: Mappers.ApplicationGroupList, - }, + 200: {}, + 204: {}, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - queryParameters: [ - Parameters.apiVersion, - Parameters.pageSize, - Parameters.isDescending, - Parameters.initialSkip, - Parameters.filter, - ], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, + Parameters.applicationGroupName, ], headerParameters: [Parameters.accept], serializer, }; -const listBySubscriptionOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/applicationGroups", - httpMethod: "GET", - responses: { - 200: { - bodyMapper: Mappers.ApplicationGroupList, - }, - default: { - bodyMapper: Mappers.CloudError, - }, - }, - queryParameters: [Parameters.apiVersion, Parameters.filter], - urlParameters: [Parameters.$host, Parameters.subscriptionId], - headerParameters: [Parameters.accept], - serializer, -}; -const listByResourceGroupNextOperationSpec: coreClient.OperationSpec = { +const listBySubscriptionNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", httpMethod: "GET", responses: { @@ -441,19 +441,18 @@ const listByResourceGroupNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ApplicationGroupList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, urlParameters: [ Parameters.$host, Parameters.nextLink, Parameters.subscriptionId, - Parameters.resourceGroupName, ], headerParameters: [Parameters.accept], serializer, }; -const listBySubscriptionNextOperationSpec: coreClient.OperationSpec = { +const listByResourceGroupNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", httpMethod: "GET", responses: { @@ -461,13 +460,14 @@ const listBySubscriptionNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ApplicationGroupList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, urlParameters: [ Parameters.$host, Parameters.nextLink, Parameters.subscriptionId, + Parameters.resourceGroupName, ], headerParameters: [Parameters.accept], serializer, diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/applications.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/applications.ts index 025cf9762179..25647aa8ff42 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/applications.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/applications.ts @@ -22,9 +22,9 @@ import { ApplicationsGetResponse, ApplicationsCreateOrUpdateOptionalParams, ApplicationsCreateOrUpdateResponse, - ApplicationsDeleteOptionalParams, ApplicationsUpdateOptionalParams, ApplicationsUpdateResponse, + ApplicationsDeleteOptionalParams, ApplicationsListNextResponse, } from "../models/index.js"; @@ -125,6 +125,23 @@ export class ApplicationsImpl implements Applications { } } + /** + * 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 options parameters. + */ + private _list( + resourceGroupName: string, + applicationGroupName: string, + options?: ApplicationsListOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, applicationGroupName, options }, + listOperationSpec, + ); + } + /** * Get an application. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -171,25 +188,6 @@ export class ApplicationsImpl implements Applications { ); } - /** - * 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 options parameters. - */ - delete( - resourceGroupName: string, - applicationGroupName: string, - applicationName: string, - options?: ApplicationsDeleteOptionalParams, - ): Promise { - return this.client.sendOperationRequest( - { resourceGroupName, applicationGroupName, applicationName, options }, - deleteOperationSpec, - ); - } - /** * Update an application. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -210,19 +208,21 @@ export class ApplicationsImpl implements Applications { } /** - * List applications. + * 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 options parameters. */ - private _list( + delete( resourceGroupName: string, applicationGroupName: string, - options?: ApplicationsListOptionalParams, - ): Promise { + applicationName: string, + options?: ApplicationsDeleteOptionalParams, + ): Promise { return this.client.sendOperationRequest( - { resourceGroupName, applicationGroupName, options }, - listOperationSpec, + { resourceGroupName, applicationGroupName, applicationName, options }, + deleteOperationSpec, ); } @@ -248,43 +248,43 @@ export class ApplicationsImpl implements Applications { // Operation Specifications const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); -const getOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/applications/{applicationName}", +const listOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/applications", httpMethod: "GET", responses: { 200: { - bodyMapper: Mappers.Application, + bodyMapper: Mappers.ApplicationList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - queryParameters: [Parameters.apiVersion], + queryParameters: [ + Parameters.apiVersion, + Parameters.pageSize, + Parameters.isDescending, + Parameters.initialSkip, + ], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, Parameters.applicationGroupName, - Parameters.applicationName, ], headerParameters: [Parameters.accept], serializer, }; -const createOrUpdateOperationSpec: coreClient.OperationSpec = { +const getOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/applications/{applicationName}", - httpMethod: "PUT", + httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.Application, }, - 201: { - bodyMapper: Mappers.Application, - }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - requestBody: Parameters.application, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -293,20 +293,24 @@ const createOrUpdateOperationSpec: coreClient.OperationSpec = { Parameters.applicationGroupName, Parameters.applicationName, ], - headerParameters: [Parameters.accept, Parameters.contentType], - mediaType: "json", + headerParameters: [Parameters.accept], serializer, }; -const deleteOperationSpec: coreClient.OperationSpec = { +const createOrUpdateOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/applications/{applicationName}", - httpMethod: "DELETE", + httpMethod: "PUT", responses: { - 200: {}, - 204: {}, + 200: { + bodyMapper: Mappers.Application, + }, + 201: { + bodyMapper: Mappers.Application, + }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, + requestBody: Parameters.application, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -315,7 +319,8 @@ const deleteOperationSpec: coreClient.OperationSpec = { Parameters.applicationGroupName, Parameters.applicationName, ], - headerParameters: [Parameters.accept], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", serializer, }; const updateOperationSpec: coreClient.OperationSpec = { @@ -326,7 +331,7 @@ const updateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.Application, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, requestBody: Parameters.application1, @@ -342,28 +347,23 @@ const updateOperationSpec: coreClient.OperationSpec = { mediaType: "json", serializer, }; -const listOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/applications", - httpMethod: "GET", +const deleteOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/applications/{applicationName}", + httpMethod: "DELETE", responses: { - 200: { - bodyMapper: Mappers.ApplicationList, - }, + 200: {}, + 204: {}, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - queryParameters: [ - Parameters.apiVersion, - Parameters.pageSize, - Parameters.isDescending, - Parameters.initialSkip, - ], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, Parameters.applicationGroupName, + Parameters.applicationName, ], headerParameters: [Parameters.accept], serializer, @@ -376,7 +376,7 @@ const listNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ApplicationList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, urlParameters: [ diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/controlSessionHostUpdate.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/controlSessionHostUpdate.ts new file mode 100644 index 000000000000..df12010c7770 --- /dev/null +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/controlSessionHostUpdate.ts @@ -0,0 +1,172 @@ +/* + * 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 { ControlSessionHostUpdate } from "../operationsInterfaces/index.js"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers.js"; +import * as Parameters from "../models/parameters.js"; +import { DesktopVirtualizationAPIClient } from "../desktopVirtualizationAPIClient.js"; +import { + SimplePollerLike, + OperationState, + createHttpPoller, +} from "@azure/core-lro"; +import { createLroSpec } from "../lroImpl.js"; +import { + HostPoolUpdateControlParameter, + ControlSessionHostUpdatePostOptionalParams, + ControlSessionHostUpdatePostResponse, +} from "../models/index.js"; + +/** Class containing ControlSessionHostUpdate operations. */ +export class ControlSessionHostUpdateImpl implements ControlSessionHostUpdate { + private readonly client: DesktopVirtualizationAPIClient; + + /** + * Initialize a new instance of the class ControlSessionHostUpdate class. + * @param client Reference to the service client + */ + constructor(client: DesktopVirtualizationAPIClient) { + this.client = client; + } + + /** + * Control actions on a session host update. + * @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 hostPoolUpdateControlParameter The content of the action request + * @param options The options parameters. + */ + async beginPost( + resourceGroupName: string, + hostPoolName: string, + hostPoolUpdateControlParameter: HostPoolUpdateControlParameter, + options?: ControlSessionHostUpdatePostOptionalParams, + ): Promise< + SimplePollerLike< + OperationState, + ControlSessionHostUpdatePostResponse + > + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec, + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperationFn = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec, + ) => { + let currentRawResponse: coreClient.FullOperationResponse | undefined = + undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown, + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback, + }, + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON(), + }, + }; + }; + + const lro = createLroSpec({ + sendOperationFn, + args: { + resourceGroupName, + hostPoolName, + hostPoolUpdateControlParameter, + options, + }, + spec: postOperationSpec, + }); + const poller = await createHttpPoller< + ControlSessionHostUpdatePostResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "location", + }); + await poller.poll(); + return poller; + } + + /** + * Control actions on a session host update. + * @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 hostPoolUpdateControlParameter The content of the action request + * @param options The options parameters. + */ + async beginPostAndWait( + resourceGroupName: string, + hostPoolName: string, + hostPoolUpdateControlParameter: HostPoolUpdateControlParameter, + options?: ControlSessionHostUpdatePostOptionalParams, + ): Promise { + const poller = await this.beginPost( + resourceGroupName, + hostPoolName, + hostPoolUpdateControlParameter, + options, + ); + return poller.pollUntilDone(); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const postOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHostManagements/default/controlSessionHostUpdate", + httpMethod: "POST", + responses: { + 200: { + headersMapper: Mappers.ControlSessionHostUpdatePostHeaders, + }, + 201: { + headersMapper: Mappers.ControlSessionHostUpdatePostHeaders, + }, + 202: { + headersMapper: Mappers.ControlSessionHostUpdatePostHeaders, + }, + 204: { + headersMapper: Mappers.ControlSessionHostUpdatePostHeaders, + }, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + requestBody: Parameters.hostPoolUpdateControlParameter, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer, +}; diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/desktops.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/desktops.ts index fb90819e3baa..ea4711649d8a 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/desktops.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/desktops.ts @@ -122,6 +122,23 @@ export class DesktopsImpl implements Desktops { } } + /** + * 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 options parameters. + */ + private _list( + resourceGroupName: string, + applicationGroupName: string, + options?: DesktopsListOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, applicationGroupName, options }, + listOperationSpec, + ); + } + /** * Get a desktop. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -160,23 +177,6 @@ export class DesktopsImpl implements Desktops { ); } - /** - * 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 options parameters. - */ - private _list( - resourceGroupName: string, - applicationGroupName: string, - options?: DesktopsListOptionalParams, - ): Promise { - return this.client.sendOperationRequest( - { resourceGroupName, applicationGroupName, options }, - listOperationSpec, - ); - } - /** * ListNext * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -199,40 +199,43 @@ export class DesktopsImpl implements Desktops { // Operation Specifications const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); -const getOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/desktops/{desktopName}", +const listOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/desktops", httpMethod: "GET", responses: { 200: { - bodyMapper: Mappers.Desktop, + bodyMapper: Mappers.DesktopList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - queryParameters: [Parameters.apiVersion], + queryParameters: [ + Parameters.apiVersion, + Parameters.pageSize, + Parameters.isDescending, + Parameters.initialSkip, + ], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, Parameters.applicationGroupName, - Parameters.desktopName, ], headerParameters: [Parameters.accept], serializer, }; -const updateOperationSpec: coreClient.OperationSpec = { +const getOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/desktops/{desktopName}", - httpMethod: "PATCH", + httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.Desktop, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - requestBody: Parameters.desktop, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -241,34 +244,31 @@ const updateOperationSpec: coreClient.OperationSpec = { Parameters.applicationGroupName, Parameters.desktopName, ], - headerParameters: [Parameters.accept, Parameters.contentType], - mediaType: "json", + headerParameters: [Parameters.accept], serializer, }; -const listOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/desktops", - httpMethod: "GET", +const updateOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/desktops/{desktopName}", + httpMethod: "PATCH", responses: { 200: { - bodyMapper: Mappers.DesktopList, + bodyMapper: Mappers.Desktop, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - queryParameters: [ - Parameters.apiVersion, - Parameters.pageSize, - Parameters.isDescending, - Parameters.initialSkip, - ], + requestBody: Parameters.desktop, + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, Parameters.applicationGroupName, + Parameters.desktopName, ], - headerParameters: [Parameters.accept], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", serializer, }; const listNextOperationSpec: coreClient.OperationSpec = { @@ -279,7 +279,7 @@ const listNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.DesktopList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, urlParameters: [ diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/hostPools.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/hostPools.ts index 978de5f48349..4bf0735c6cee 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/hostPools.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/hostPools.ts @@ -15,25 +15,25 @@ import * as Parameters from "../models/parameters.js"; import { DesktopVirtualizationAPIClient } from "../desktopVirtualizationAPIClient.js"; import { HostPool, - HostPoolsListByResourceGroupNextOptionalParams, - HostPoolsListByResourceGroupOptionalParams, - HostPoolsListByResourceGroupResponse, HostPoolsListNextOptionalParams, HostPoolsListOptionalParams, HostPoolsListResponse, + HostPoolsListByResourceGroupNextOptionalParams, + HostPoolsListByResourceGroupOptionalParams, + HostPoolsListByResourceGroupResponse, HostPoolsGetOptionalParams, HostPoolsGetResponse, HostPoolsCreateOrUpdateOptionalParams, HostPoolsCreateOrUpdateResponse, - HostPoolsDeleteOptionalParams, HostPoolsUpdateOptionalParams, HostPoolsUpdateResponse, - HostPoolsRetrieveRegistrationTokenOptionalParams, - HostPoolsRetrieveRegistrationTokenResponse, + HostPoolsDeleteOptionalParams, HostPoolsListRegistrationTokensOptionalParams, HostPoolsListRegistrationTokensResponse, - HostPoolsListByResourceGroupNextResponse, + HostPoolsRetrieveRegistrationTokenOptionalParams, + HostPoolsRetrieveRegistrationTokenResponse, HostPoolsListNextResponse, + HostPoolsListByResourceGroupNextResponse, } from "../models/index.js"; /// @@ -50,15 +50,13 @@ export class HostPoolsImpl implements HostPools { } /** - * List hostPools. - * @param resourceGroupName The name of the resource group. The name is case insensitive. + * List hostPools in subscription. * @param options The options parameters. */ - public listByResourceGroup( - resourceGroupName: string, - options?: HostPoolsListByResourceGroupOptionalParams, + public list( + options?: HostPoolsListOptionalParams, ): PagedAsyncIterableIterator { - const iter = this.listByResourceGroupPagingAll(resourceGroupName, options); + const iter = this.listPagingAll(options); return { next() { return iter.next(); @@ -70,35 +68,26 @@ export class HostPoolsImpl implements HostPools { if (settings?.maxPageSize) { throw new Error("maxPageSize is not supported by this operation."); } - return this.listByResourceGroupPagingPage( - resourceGroupName, - options, - settings, - ); + return this.listPagingPage(options, settings); }, }; } - private async *listByResourceGroupPagingPage( - resourceGroupName: string, - options?: HostPoolsListByResourceGroupOptionalParams, + private async *listPagingPage( + options?: HostPoolsListOptionalParams, settings?: PageSettings, ): AsyncIterableIterator { - let result: HostPoolsListByResourceGroupResponse; + let result: HostPoolsListResponse; let continuationToken = settings?.continuationToken; if (!continuationToken) { - result = await this._listByResourceGroup(resourceGroupName, options); + result = await this._list(options); let page = result.value || []; continuationToken = result.nextLink; setContinuationToken(page, continuationToken); yield page; } while (continuationToken) { - result = await this._listByResourceGroupNext( - resourceGroupName, - continuationToken, - options, - ); + result = await this._listNext(continuationToken, options); continuationToken = result.nextLink; let page = result.value || []; setContinuationToken(page, continuationToken); @@ -106,26 +95,24 @@ export class HostPoolsImpl implements HostPools { } } - private async *listByResourceGroupPagingAll( - resourceGroupName: string, - options?: HostPoolsListByResourceGroupOptionalParams, + private async *listPagingAll( + options?: HostPoolsListOptionalParams, ): AsyncIterableIterator { - for await (const page of this.listByResourceGroupPagingPage( - resourceGroupName, - options, - )) { + for await (const page of this.listPagingPage(options)) { yield* page; } } /** - * List hostPools in subscription. + * List hostPools. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param options The options parameters. */ - public list( - options?: HostPoolsListOptionalParams, + public listByResourceGroup( + resourceGroupName: string, + options?: HostPoolsListByResourceGroupOptionalParams, ): PagedAsyncIterableIterator { - const iter = this.listPagingAll(options); + const iter = this.listByResourceGroupPagingAll(resourceGroupName, options); return { next() { return iter.next(); @@ -137,26 +124,35 @@ export class HostPoolsImpl implements HostPools { if (settings?.maxPageSize) { throw new Error("maxPageSize is not supported by this operation."); } - return this.listPagingPage(options, settings); + return this.listByResourceGroupPagingPage( + resourceGroupName, + options, + settings, + ); }, }; } - private async *listPagingPage( - options?: HostPoolsListOptionalParams, + private async *listByResourceGroupPagingPage( + resourceGroupName: string, + options?: HostPoolsListByResourceGroupOptionalParams, settings?: PageSettings, ): AsyncIterableIterator { - let result: HostPoolsListResponse; + let result: HostPoolsListByResourceGroupResponse; let continuationToken = settings?.continuationToken; if (!continuationToken) { - result = await this._list(options); + result = await this._listByResourceGroup(resourceGroupName, options); let page = result.value || []; continuationToken = result.nextLink; setContinuationToken(page, continuationToken); yield page; } while (continuationToken) { - result = await this._listNext(continuationToken, options); + result = await this._listByResourceGroupNext( + resourceGroupName, + continuationToken, + options, + ); continuationToken = result.nextLink; let page = result.value || []; setContinuationToken(page, continuationToken); @@ -164,14 +160,43 @@ export class HostPoolsImpl implements HostPools { } } - private async *listPagingAll( - options?: HostPoolsListOptionalParams, + private async *listByResourceGroupPagingAll( + resourceGroupName: string, + options?: HostPoolsListByResourceGroupOptionalParams, ): AsyncIterableIterator { - for await (const page of this.listPagingPage(options)) { + for await (const page of this.listByResourceGroupPagingPage( + resourceGroupName, + options, + )) { yield* page; } } + /** + * List hostPools in subscription. + * @param options The options parameters. + */ + private _list( + options?: HostPoolsListOptionalParams, + ): Promise { + return this.client.sendOperationRequest({ options }, listOperationSpec); + } + + /** + * List hostPools. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param options The options parameters. + */ + private _listByResourceGroup( + resourceGroupName: string, + options?: HostPoolsListByResourceGroupOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, options }, + listByResourceGroupOperationSpec, + ); + } + /** * Get a host pool. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -209,64 +234,56 @@ export class HostPoolsImpl implements HostPools { } /** - * Remove a host pool. + * 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 options parameters. */ - delete( + update( resourceGroupName: string, hostPoolName: string, - options?: HostPoolsDeleteOptionalParams, - ): Promise { + options?: HostPoolsUpdateOptionalParams, + ): Promise { return this.client.sendOperationRequest( { resourceGroupName, hostPoolName, options }, - deleteOperationSpec, + updateOperationSpec, ); } /** - * Update a host pool. + * 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 options parameters. */ - update( + delete( resourceGroupName: string, hostPoolName: string, - options?: HostPoolsUpdateOptionalParams, - ): Promise { + options?: HostPoolsDeleteOptionalParams, + ): Promise { return this.client.sendOperationRequest( { resourceGroupName, hostPoolName, options }, - updateOperationSpec, + deleteOperationSpec, ); } /** - * List hostPools. + * Operation to list the RegistrationTokens associated with the 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 options parameters. */ - private _listByResourceGroup( + listRegistrationTokens( resourceGroupName: string, - options?: HostPoolsListByResourceGroupOptionalParams, - ): Promise { + hostPoolName: string, + options?: HostPoolsListRegistrationTokensOptionalParams, + ): Promise { return this.client.sendOperationRequest( - { resourceGroupName, options }, - listByResourceGroupOperationSpec, + { resourceGroupName, hostPoolName, options }, + listRegistrationTokensOperationSpec, ); } - /** - * List hostPools in subscription. - * @param options The options parameters. - */ - private _list( - options?: HostPoolsListOptionalParams, - ): Promise { - return this.client.sendOperationRequest({ options }, listOperationSpec); - } - /** * Registration token of the host pool. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -285,19 +302,17 @@ export class HostPoolsImpl implements HostPools { } /** - * Operation to list the RegistrationTokens associated with the 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 + * ListNext + * @param nextLink The nextLink from the previous successful call to the List method. * @param options The options parameters. */ - listRegistrationTokens( - resourceGroupName: string, - hostPoolName: string, - options?: HostPoolsListRegistrationTokensOptionalParams, - ): Promise { + private _listNext( + nextLink: string, + options?: HostPoolsListNextOptionalParams, + ): Promise { return this.client.sendOperationRequest( - { resourceGroupName, hostPoolName, options }, - listRegistrationTokensOperationSpec, + { nextLink, options }, + listNextOperationSpec, ); } @@ -317,61 +332,67 @@ export class HostPoolsImpl implements HostPools { listByResourceGroupNextOperationSpec, ); } - - /** - * ListNext - * @param nextLink The nextLink from the previous successful call to the List method. - * @param options The options parameters. - */ - private _listNext( - nextLink: string, - options?: HostPoolsListNextOptionalParams, - ): Promise { - return this.client.sendOperationRequest( - { nextLink, options }, - listNextOperationSpec, - ); - } } // Operation Specifications const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); -const getOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}", +const listOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/hostPools", httpMethod: "GET", responses: { 200: { - bodyMapper: Mappers.HostPool, + bodyMapper: Mappers.HostPoolList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - queryParameters: [Parameters.apiVersion], + queryParameters: [ + Parameters.apiVersion, + Parameters.pageSize, + Parameters.isDescending, + Parameters.initialSkip, + ], + urlParameters: [Parameters.$host, Parameters.subscriptionId], + headerParameters: [Parameters.accept], + serializer, +}; +const listByResourceGroupOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.HostPoolList, + }, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + queryParameters: [ + Parameters.apiVersion, + Parameters.pageSize, + Parameters.isDescending, + Parameters.initialSkip, + ], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, - Parameters.hostPoolName, ], headerParameters: [Parameters.accept], serializer, }; -const createOrUpdateOperationSpec: coreClient.OperationSpec = { +const getOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}", - httpMethod: "PUT", + httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.HostPool, }, - 201: { - bodyMapper: Mappers.HostPool, - }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - requestBody: Parameters.hostPool, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -379,28 +400,33 @@ const createOrUpdateOperationSpec: coreClient.OperationSpec = { Parameters.resourceGroupName, Parameters.hostPoolName, ], - headerParameters: [Parameters.accept, Parameters.contentType], - mediaType: "json", + headerParameters: [Parameters.accept], serializer, }; -const deleteOperationSpec: coreClient.OperationSpec = { +const createOrUpdateOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}", - httpMethod: "DELETE", + httpMethod: "PUT", responses: { - 200: {}, - 204: {}, + 200: { + bodyMapper: Mappers.HostPool, + }, + 201: { + bodyMapper: Mappers.HostPool, + }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - queryParameters: [Parameters.apiVersion, Parameters.force], + requestBody: Parameters.hostPool, + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, Parameters.hostPoolName, ], - headerParameters: [Parameters.accept], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", serializer, }; const updateOperationSpec: coreClient.OperationSpec = { @@ -411,7 +437,7 @@ const updateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.HostPool, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, requestBody: Parameters.hostPool1, @@ -426,61 +452,35 @@ const updateOperationSpec: coreClient.OperationSpec = { mediaType: "json", serializer, }; -const listByResourceGroupOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools", - httpMethod: "GET", +const deleteOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}", + httpMethod: "DELETE", responses: { - 200: { - bodyMapper: Mappers.HostPoolList, - }, + 200: {}, + 204: {}, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - queryParameters: [ - Parameters.apiVersion, - Parameters.pageSize, - Parameters.isDescending, - Parameters.initialSkip, - ], + queryParameters: [Parameters.apiVersion, Parameters.force], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, + Parameters.hostPoolName, ], headerParameters: [Parameters.accept], serializer, }; -const listOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/hostPools", - httpMethod: "GET", - responses: { - 200: { - bodyMapper: Mappers.HostPoolList, - }, - default: { - bodyMapper: Mappers.CloudError, - }, - }, - queryParameters: [ - Parameters.apiVersion, - Parameters.pageSize, - Parameters.isDescending, - Parameters.initialSkip, - ], - urlParameters: [Parameters.$host, Parameters.subscriptionId], - headerParameters: [Parameters.accept], - serializer, -}; -const retrieveRegistrationTokenOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/retrieveRegistrationToken", +const listRegistrationTokensOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/listRegistrationTokens", httpMethod: "POST", responses: { 200: { - bodyMapper: Mappers.RegistrationInfo, + bodyMapper: Mappers.RegistrationTokenList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, queryParameters: [Parameters.apiVersion], @@ -493,15 +493,15 @@ const retrieveRegistrationTokenOperationSpec: coreClient.OperationSpec = { headerParameters: [Parameters.accept], serializer, }; -const listRegistrationTokensOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/listRegistrationTokens", +const retrieveRegistrationTokenOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/retrieveRegistrationToken", httpMethod: "POST", responses: { 200: { - bodyMapper: Mappers.RegistrationTokenList, + bodyMapper: Mappers.RegistrationInfo, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, queryParameters: [Parameters.apiVersion], @@ -514,7 +514,7 @@ const listRegistrationTokensOperationSpec: coreClient.OperationSpec = { headerParameters: [Parameters.accept], serializer, }; -const listByResourceGroupNextOperationSpec: coreClient.OperationSpec = { +const listNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", httpMethod: "GET", responses: { @@ -522,19 +522,18 @@ const listByResourceGroupNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.HostPoolList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, urlParameters: [ Parameters.$host, Parameters.nextLink, Parameters.subscriptionId, - Parameters.resourceGroupName, ], headerParameters: [Parameters.accept], serializer, }; -const listNextOperationSpec: coreClient.OperationSpec = { +const listByResourceGroupNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", httpMethod: "GET", responses: { @@ -542,13 +541,14 @@ const listNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.HostPoolList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, urlParameters: [ Parameters.$host, Parameters.nextLink, Parameters.subscriptionId, + Parameters.resourceGroupName, ], headerParameters: [Parameters.accept], serializer, diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/index.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/index.ts index 75b1da058c0a..ba346c0d37e7 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/index.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/index.ts @@ -7,20 +7,26 @@ */ export * from "./operations.js"; -export * from "./workspaces.js"; -export * from "./privateEndpointConnections.js"; -export * from "./privateLinkResources.js"; -export * from "./scalingPlans.js"; -export * from "./scalingPlanPooledSchedules.js"; -export * from "./scalingPlanPersonalSchedules.js"; +export * from "./appAttachPackageOperations.js"; export * from "./applicationGroups.js"; -export * from "./startMenuItems.js"; +export * from "./hostPools.js"; +export * from "./scalingPlans.js"; +export * from "./workspaces.js"; export * from "./applications.js"; export * from "./desktops.js"; -export * from "./hostPools.js"; -export * from "./userSessions.js"; -export * from "./sessionHosts.js"; -export * from "./msixPackages.js"; -export * from "./appAttachPackageInfo.js"; +export * from "./startMenuItems.js"; +export * from "./activeSessionHostConfigurations.js"; export * from "./msixImages.js"; -export * from "./appAttachPackageOperations.js"; +export * from "./appAttachPackageInfo.js"; +export * from "./msixPackages.js"; +export * from "./privateEndpointConnections.js"; +export * from "./privateLinkResources.js"; +export * from "./sessionHostConfigurations.js"; +export * from "./sessionHostManagements.js"; +export * from "./controlSessionHostUpdate.js"; +export * from "./initiateSessionHostUpdate.js"; +export * from "./sessionHostManagementsUpdateStatus.js"; +export * from "./sessionHosts.js"; +export * from "./userSessions.js"; +export * from "./scalingPlanPersonalSchedules.js"; +export * from "./scalingPlanPooledSchedules.js"; diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/initiateSessionHostUpdate.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/initiateSessionHostUpdate.ts new file mode 100644 index 000000000000..cc7ba2489475 --- /dev/null +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/initiateSessionHostUpdate.ts @@ -0,0 +1,70 @@ +/* + * 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 { InitiateSessionHostUpdate } from "../operationsInterfaces/index.js"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers.js"; +import * as Parameters from "../models/parameters.js"; +import { DesktopVirtualizationAPIClient } from "../desktopVirtualizationAPIClient.js"; +import { InitiateSessionHostUpdatePostOptionalParams } from "../models/index.js"; + +/** Class containing InitiateSessionHostUpdate operations. */ +export class InitiateSessionHostUpdateImpl + implements InitiateSessionHostUpdate +{ + private readonly client: DesktopVirtualizationAPIClient; + + /** + * Initialize a new instance of the class InitiateSessionHostUpdate class. + * @param client Reference to the service client + */ + constructor(client: DesktopVirtualizationAPIClient) { + this.client = client; + } + + /** + * Initiates a hostpool update or schedule an update for the future. + * @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 options parameters. + */ + post( + resourceGroupName: string, + hostPoolName: string, + options?: InitiateSessionHostUpdatePostOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, hostPoolName, options }, + postOperationSpec, + ); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const postOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHostManagements/default/initiateSessionHostUpdate", + httpMethod: "POST", + responses: { + 204: {}, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + requestBody: Parameters.updateSessionHostsRequestBody, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer, +}; diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/msixImages.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/msixImages.ts index f95f720ac746..186eac06b8a2 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/msixImages.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/msixImages.ts @@ -37,9 +37,10 @@ export class MsixImagesImpl implements MsixImages { /** * Expands and Lists MSIX packages in an Image, given the Image Path. + * This action uses incorrect Msix casing intentionally to match the previous APIs. * @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 msixImageURI Object containing URI to MSIX Image + * @param msixImageURI Represents URI referring to MSIX Image * @param options The options parameters. */ public listExpand( @@ -130,9 +131,10 @@ export class MsixImagesImpl implements MsixImages { /** * Expands and Lists MSIX packages in an Image, given the Image Path. + * This action uses incorrect Msix casing intentionally to match the previous APIs. * @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 msixImageURI Object containing URI to MSIX Image + * @param msixImageURI Represents URI referring to MSIX Image * @param options The options parameters. */ private _expand( @@ -151,7 +153,7 @@ export class MsixImagesImpl implements MsixImages { * ExpandNext * @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 msixImageURI Object containing URI to MSIX Image + * @param msixImageURI Represents URI referring to MSIX Image * @param nextLink The nextLink from the previous successful call to the Expand method. * @param options The options parameters. */ @@ -179,7 +181,7 @@ const expandOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ExpandMsixImageList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, requestBody: Parameters.msixImageURI, @@ -202,7 +204,7 @@ const expandNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ExpandMsixImageList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, urlParameters: [ diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/msixPackages.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/msixPackages.ts index cb72d63a280a..d5c7278c0783 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/msixPackages.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/msixPackages.ts @@ -22,9 +22,10 @@ import { MsixPackagesGetResponse, MsixPackagesCreateOrUpdateOptionalParams, MsixPackagesCreateOrUpdateResponse, - MsixPackagesDeleteOptionalParams, + MsixPackagePatch, MsixPackagesUpdateOptionalParams, MsixPackagesUpdateResponse, + MsixPackagesDeleteOptionalParams, MsixPackagesListNextResponse, } from "../models/index.js"; @@ -117,6 +118,23 @@ export class MsixPackagesImpl implements MsixPackages { } } + /** + * 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 options parameters. + */ + private _list( + resourceGroupName: string, + hostPoolName: string, + options?: MsixPackagesListOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, hostPoolName, options }, + listOperationSpec, + ); + } + /** * Get a msixpackage. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -165,60 +183,51 @@ export class MsixPackagesImpl implements MsixPackages { ); } - /** - * 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 options parameters. - */ - delete( - resourceGroupName: string, - hostPoolName: string, - msixPackageFullName: string, - options?: MsixPackagesDeleteOptionalParams, - ): Promise { - return this.client.sendOperationRequest( - { resourceGroupName, hostPoolName, msixPackageFullName, options }, - deleteOperationSpec, - ); - } - /** * 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 msixPackage The resource properties to be updated. * @param options The options parameters. */ update( resourceGroupName: string, hostPoolName: string, msixPackageFullName: string, + msixPackage: MsixPackagePatch, options?: MsixPackagesUpdateOptionalParams, ): Promise { return this.client.sendOperationRequest( - { resourceGroupName, hostPoolName, msixPackageFullName, options }, + { + resourceGroupName, + hostPoolName, + msixPackageFullName, + msixPackage, + options, + }, updateOperationSpec, ); } /** - * List MSIX packages in hostpool. + * 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 options parameters. */ - private _list( + delete( resourceGroupName: string, hostPoolName: string, - options?: MsixPackagesListOptionalParams, - ): Promise { + msixPackageFullName: string, + options?: MsixPackagesDeleteOptionalParams, + ): Promise { return this.client.sendOperationRequest( - { resourceGroupName, hostPoolName, options }, - listOperationSpec, + { resourceGroupName, hostPoolName, msixPackageFullName, options }, + deleteOperationSpec, ); } @@ -244,43 +253,43 @@ export class MsixPackagesImpl implements MsixPackages { // Operation Specifications const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); -const getOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/msixPackages/{msixPackageFullName}", +const listOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/msixPackages", httpMethod: "GET", responses: { 200: { - bodyMapper: Mappers.MsixPackage, + bodyMapper: Mappers.MsixPackageList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - queryParameters: [Parameters.apiVersion], + queryParameters: [ + Parameters.apiVersion, + Parameters.pageSize, + Parameters.isDescending, + Parameters.initialSkip, + ], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, Parameters.hostPoolName, - Parameters.msixPackageFullName, ], headerParameters: [Parameters.accept], serializer, }; -const createOrUpdateOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/msixPackages/{msixPackageFullName}", - httpMethod: "PUT", +const getOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/msixPackages/{msixPackageFullName}", + httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.MsixPackage, }, - 201: { - bodyMapper: Mappers.MsixPackage, - }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - requestBody: Parameters.msixPackage, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -289,20 +298,24 @@ const createOrUpdateOperationSpec: coreClient.OperationSpec = { Parameters.hostPoolName, Parameters.msixPackageFullName, ], - headerParameters: [Parameters.accept, Parameters.contentType], - mediaType: "json", + headerParameters: [Parameters.accept], serializer, }; -const deleteOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/msixPackages/{msixPackageFullName}", - httpMethod: "DELETE", +const createOrUpdateOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/msixPackages/{msixPackageFullName}", + httpMethod: "PUT", responses: { - 200: {}, - 204: {}, + 200: { + bodyMapper: Mappers.MsixPackage, + }, + 201: { + bodyMapper: Mappers.MsixPackage, + }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, + requestBody: Parameters.msixPackage, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -311,18 +324,19 @@ const deleteOperationSpec: coreClient.OperationSpec = { Parameters.hostPoolName, Parameters.msixPackageFullName, ], - headerParameters: [Parameters.accept], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", serializer, }; const updateOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/msixPackages/{msixPackageFullName}", + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/msixPackages/{msixPackageFullName}", httpMethod: "PATCH", responses: { 200: { bodyMapper: Mappers.MsixPackage, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, requestBody: Parameters.msixPackage1, @@ -338,28 +352,23 @@ const updateOperationSpec: coreClient.OperationSpec = { mediaType: "json", serializer, }; -const listOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/msixPackages", - httpMethod: "GET", +const deleteOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/msixPackages/{msixPackageFullName}", + httpMethod: "DELETE", responses: { - 200: { - bodyMapper: Mappers.MsixPackageList, - }, + 200: {}, + 204: {}, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - queryParameters: [ - Parameters.apiVersion, - Parameters.pageSize, - Parameters.isDescending, - Parameters.initialSkip, - ], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, Parameters.hostPoolName, + Parameters.msixPackageFullName, ], headerParameters: [Parameters.accept], serializer, @@ -372,7 +381,7 @@ const listNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.MsixPackageList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, urlParameters: [ diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/operations.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/operations.ts index 0d1f7b1b775c..327c4b7237a4 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/operations.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/operations.ts @@ -35,7 +35,7 @@ export class OperationsImpl implements Operations { } /** - * List all of the available operations the Desktop Virtualization resource provider supports. + * List the operations for the provider * @param options The options parameters. */ public list( @@ -89,7 +89,7 @@ export class OperationsImpl implements Operations { } /** - * List all of the available operations the Desktop Virtualization resource provider supports. + * List the operations for the provider * @param options The options parameters. */ private _list( @@ -121,10 +121,10 @@ const listOperationSpec: coreClient.OperationSpec = { httpMethod: "GET", responses: { 200: { - bodyMapper: Mappers.ResourceProviderOperationList, + bodyMapper: Mappers.ResourceProviderOperationListResult, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, queryParameters: [Parameters.apiVersion], @@ -137,10 +137,10 @@ const listNextOperationSpec: coreClient.OperationSpec = { httpMethod: "GET", responses: { 200: { - bodyMapper: Mappers.ResourceProviderOperationList, + bodyMapper: Mappers.ResourceProviderOperationListResult, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, urlParameters: [Parameters.$host, Parameters.nextLink], diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/privateEndpointConnections.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/privateEndpointConnections.ts index 052ebc5dbf7b..4081d0cfb833 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/privateEndpointConnections.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/privateEndpointConnections.ts @@ -15,25 +15,24 @@ import * as Parameters from "../models/parameters.js"; import { DesktopVirtualizationAPIClient } from "../desktopVirtualizationAPIClient.js"; import { PrivateEndpointConnectionWithSystemData, - PrivateEndpointConnectionsListByWorkspaceNextOptionalParams, - PrivateEndpointConnectionsListByWorkspaceOptionalParams, - PrivateEndpointConnectionsListByWorkspaceResponse, PrivateEndpointConnectionsListByHostPoolNextOptionalParams, PrivateEndpointConnectionsListByHostPoolOptionalParams, PrivateEndpointConnectionsListByHostPoolResponse, - PrivateEndpointConnectionsGetByWorkspaceOptionalParams, - PrivateEndpointConnectionsGetByWorkspaceResponse, - PrivateEndpointConnectionsDeleteByWorkspaceOptionalParams, - PrivateEndpointConnection, - PrivateEndpointConnectionsUpdateByWorkspaceOptionalParams, - PrivateEndpointConnectionsUpdateByWorkspaceResponse, + PrivateEndpointConnectionsListByWorkspaceNextOptionalParams, + PrivateEndpointConnectionsListByWorkspaceOptionalParams, + PrivateEndpointConnectionsListByWorkspaceResponse, PrivateEndpointConnectionsGetByHostPoolOptionalParams, PrivateEndpointConnectionsGetByHostPoolResponse, - PrivateEndpointConnectionsDeleteByHostPoolOptionalParams, PrivateEndpointConnectionsUpdateByHostPoolOptionalParams, PrivateEndpointConnectionsUpdateByHostPoolResponse, - PrivateEndpointConnectionsListByWorkspaceNextResponse, + PrivateEndpointConnectionsDeleteByHostPoolOptionalParams, + PrivateEndpointConnectionsGetByWorkspaceOptionalParams, + PrivateEndpointConnectionsGetByWorkspaceResponse, + PrivateEndpointConnectionsUpdateByWorkspaceOptionalParams, + PrivateEndpointConnectionsUpdateByWorkspaceResponse, + PrivateEndpointConnectionsDeleteByWorkspaceOptionalParams, PrivateEndpointConnectionsListByHostPoolNextResponse, + PrivateEndpointConnectionsListByWorkspaceNextResponse, } from "../models/index.js"; /// @@ -52,19 +51,19 @@ export class PrivateEndpointConnectionsImpl } /** - * List private endpoint connections. + * Get a PrivateEndpointConnectionWithSystemData * @param resourceGroupName The name of the resource group. The name is case insensitive. - * @param workspaceName The name of the workspace + * @param hostPoolName The name of the host pool within the specified resource group * @param options The options parameters. */ - public listByWorkspace( + public listByHostPool( resourceGroupName: string, - workspaceName: string, - options?: PrivateEndpointConnectionsListByWorkspaceOptionalParams, + hostPoolName: string, + options?: PrivateEndpointConnectionsListByHostPoolOptionalParams, ): PagedAsyncIterableIterator { - const iter = this.listByWorkspacePagingAll( + const iter = this.listByHostPoolPagingAll( resourceGroupName, - workspaceName, + hostPoolName, options, ); return { @@ -78,9 +77,9 @@ export class PrivateEndpointConnectionsImpl if (settings?.maxPageSize) { throw new Error("maxPageSize is not supported by this operation."); } - return this.listByWorkspacePagingPage( + return this.listByHostPoolPagingPage( resourceGroupName, - workspaceName, + hostPoolName, options, settings, ); @@ -88,18 +87,18 @@ export class PrivateEndpointConnectionsImpl }; } - private async *listByWorkspacePagingPage( + private async *listByHostPoolPagingPage( resourceGroupName: string, - workspaceName: string, - options?: PrivateEndpointConnectionsListByWorkspaceOptionalParams, + hostPoolName: string, + options?: PrivateEndpointConnectionsListByHostPoolOptionalParams, settings?: PageSettings, ): AsyncIterableIterator { - let result: PrivateEndpointConnectionsListByWorkspaceResponse; + let result: PrivateEndpointConnectionsListByHostPoolResponse; let continuationToken = settings?.continuationToken; if (!continuationToken) { - result = await this._listByWorkspace( + result = await this._listByHostPool( resourceGroupName, - workspaceName, + hostPoolName, options, ); let page = result.value || []; @@ -108,9 +107,9 @@ export class PrivateEndpointConnectionsImpl yield page; } while (continuationToken) { - result = await this._listByWorkspaceNext( + result = await this._listByHostPoolNext( resourceGroupName, - workspaceName, + hostPoolName, continuationToken, options, ); @@ -121,14 +120,14 @@ export class PrivateEndpointConnectionsImpl } } - private async *listByWorkspacePagingAll( + private async *listByHostPoolPagingAll( resourceGroupName: string, - workspaceName: string, - options?: PrivateEndpointConnectionsListByWorkspaceOptionalParams, + hostPoolName: string, + options?: PrivateEndpointConnectionsListByHostPoolOptionalParams, ): AsyncIterableIterator { - for await (const page of this.listByWorkspacePagingPage( + for await (const page of this.listByHostPoolPagingPage( resourceGroupName, - workspaceName, + hostPoolName, options, )) { yield* page; @@ -136,19 +135,19 @@ export class PrivateEndpointConnectionsImpl } /** - * List private endpoint connections associated with hostpool. + * Get a PrivateEndpointConnectionWithSystemData * @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 workspaceName The name of the workspace * @param options The options parameters. */ - public listByHostPool( + public listByWorkspace( resourceGroupName: string, - hostPoolName: string, - options?: PrivateEndpointConnectionsListByHostPoolOptionalParams, + workspaceName: string, + options?: PrivateEndpointConnectionsListByWorkspaceOptionalParams, ): PagedAsyncIterableIterator { - const iter = this.listByHostPoolPagingAll( + const iter = this.listByWorkspacePagingAll( resourceGroupName, - hostPoolName, + workspaceName, options, ); return { @@ -162,9 +161,9 @@ export class PrivateEndpointConnectionsImpl if (settings?.maxPageSize) { throw new Error("maxPageSize is not supported by this operation."); } - return this.listByHostPoolPagingPage( + return this.listByWorkspacePagingPage( resourceGroupName, - hostPoolName, + workspaceName, options, settings, ); @@ -172,18 +171,18 @@ export class PrivateEndpointConnectionsImpl }; } - private async *listByHostPoolPagingPage( + private async *listByWorkspacePagingPage( resourceGroupName: string, - hostPoolName: string, - options?: PrivateEndpointConnectionsListByHostPoolOptionalParams, + workspaceName: string, + options?: PrivateEndpointConnectionsListByWorkspaceOptionalParams, settings?: PageSettings, ): AsyncIterableIterator { - let result: PrivateEndpointConnectionsListByHostPoolResponse; + let result: PrivateEndpointConnectionsListByWorkspaceResponse; let continuationToken = settings?.continuationToken; if (!continuationToken) { - result = await this._listByHostPool( + result = await this._listByWorkspace( resourceGroupName, - hostPoolName, + workspaceName, options, ); let page = result.value || []; @@ -192,9 +191,9 @@ export class PrivateEndpointConnectionsImpl yield page; } while (continuationToken) { - result = await this._listByHostPoolNext( + result = await this._listByWorkspaceNext( resourceGroupName, - hostPoolName, + workspaceName, continuationToken, options, ); @@ -205,14 +204,14 @@ export class PrivateEndpointConnectionsImpl } } - private async *listByHostPoolPagingAll( + private async *listByWorkspacePagingAll( resourceGroupName: string, - hostPoolName: string, - options?: PrivateEndpointConnectionsListByHostPoolOptionalParams, + workspaceName: string, + options?: PrivateEndpointConnectionsListByWorkspaceOptionalParams, ): AsyncIterableIterator { - for await (const page of this.listByHostPoolPagingPage( + for await (const page of this.listByWorkspacePagingPage( resourceGroupName, - hostPoolName, + workspaceName, options, )) { yield* page; @@ -220,266 +219,265 @@ export class PrivateEndpointConnectionsImpl } /** - * List private endpoint connections. + * Get a PrivateEndpointConnectionWithSystemData * @param resourceGroupName The name of the resource group. The name is case insensitive. - * @param workspaceName The name of the workspace + * @param hostPoolName The name of the host pool within the specified resource group * @param options The options parameters. */ - private _listByWorkspace( + private _listByHostPool( resourceGroupName: string, - workspaceName: string, - options?: PrivateEndpointConnectionsListByWorkspaceOptionalParams, - ): Promise { + hostPoolName: string, + options?: PrivateEndpointConnectionsListByHostPoolOptionalParams, + ): Promise { return this.client.sendOperationRequest( - { resourceGroupName, workspaceName, options }, - listByWorkspaceOperationSpec, + { resourceGroupName, hostPoolName, options }, + listByHostPoolOperationSpec, ); } /** - * Get a private endpoint connection. + * Get a PrivateEndpointConnectionWithSystemData * @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 hostPoolName The name of the host pool within the specified resource group + * @param privateEndpointConnectionName The name parameter for private endpoint * @param options The options parameters. */ - getByWorkspace( + getByHostPool( resourceGroupName: string, - workspaceName: string, + hostPoolName: string, privateEndpointConnectionName: string, - options?: PrivateEndpointConnectionsGetByWorkspaceOptionalParams, - ): Promise { + options?: PrivateEndpointConnectionsGetByHostPoolOptionalParams, + ): Promise { return this.client.sendOperationRequest( { resourceGroupName, - workspaceName, + hostPoolName, privateEndpointConnectionName, options, }, - getByWorkspaceOperationSpec, + getByHostPoolOperationSpec, ); } /** - * Remove a connection. + * Create a PrivateEndpointConnectionWithSystemData * @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 hostPoolName The name of the host pool within the specified resource group + * @param privateEndpointConnectionName The name parameter for private endpoint + * @param connection Resource create parameters. * @param options The options parameters. */ - deleteByWorkspace( + updateByHostPool( resourceGroupName: string, - workspaceName: string, + hostPoolName: string, privateEndpointConnectionName: string, - options?: PrivateEndpointConnectionsDeleteByWorkspaceOptionalParams, - ): Promise { + connection: PrivateEndpointConnectionWithSystemData, + options?: PrivateEndpointConnectionsUpdateByHostPoolOptionalParams, + ): Promise { return this.client.sendOperationRequest( { resourceGroupName, - workspaceName, + hostPoolName, privateEndpointConnectionName, + connection, options, }, - deleteByWorkspaceOperationSpec, + updateByHostPoolOperationSpec, ); } /** - * Approve or reject a private endpoint connection. + * Delete a PrivateEndpointConnectionWithSystemData * @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 hostPoolName The name of the host pool within the specified resource group + * @param privateEndpointConnectionName The name parameter for private endpoint * @param options The options parameters. */ - updateByWorkspace( + deleteByHostPool( resourceGroupName: string, - workspaceName: string, + hostPoolName: string, privateEndpointConnectionName: string, - connection: PrivateEndpointConnection, - options?: PrivateEndpointConnectionsUpdateByWorkspaceOptionalParams, - ): Promise { + options?: PrivateEndpointConnectionsDeleteByHostPoolOptionalParams, + ): Promise { return this.client.sendOperationRequest( { resourceGroupName, - workspaceName, + hostPoolName, privateEndpointConnectionName, - connection, options, }, - updateByWorkspaceOperationSpec, + deleteByHostPoolOperationSpec, ); } /** - * List private endpoint connections associated with hostpool. + * Get a PrivateEndpointConnectionWithSystemData * @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 workspaceName The name of the workspace * @param options The options parameters. */ - private _listByHostPool( + private _listByWorkspace( resourceGroupName: string, - hostPoolName: string, - options?: PrivateEndpointConnectionsListByHostPoolOptionalParams, - ): Promise { + workspaceName: string, + options?: PrivateEndpointConnectionsListByWorkspaceOptionalParams, + ): Promise { return this.client.sendOperationRequest( - { resourceGroupName, hostPoolName, options }, - listByHostPoolOperationSpec, + { resourceGroupName, workspaceName, options }, + listByWorkspaceOperationSpec, ); } /** - * Get a private endpoint connection. + * Get a PrivateEndpointConnectionWithSystemData * @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 workspaceName The name of the workspace + * @param privateEndpointConnectionName The name parameter for private endpoint * @param options The options parameters. */ - getByHostPool( + getByWorkspace( resourceGroupName: string, - hostPoolName: string, + workspaceName: string, privateEndpointConnectionName: string, - options?: PrivateEndpointConnectionsGetByHostPoolOptionalParams, - ): Promise { + options?: PrivateEndpointConnectionsGetByWorkspaceOptionalParams, + ): Promise { return this.client.sendOperationRequest( { resourceGroupName, - hostPoolName, + workspaceName, privateEndpointConnectionName, options, }, - getByHostPoolOperationSpec, + getByWorkspaceOperationSpec, ); } /** - * Remove a connection. + * Create a PrivateEndpointConnectionWithSystemData * @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 workspaceName The name of the workspace + * @param privateEndpointConnectionName The name parameter for private endpoint + * @param connection Resource create parameters. * @param options The options parameters. */ - deleteByHostPool( + updateByWorkspace( resourceGroupName: string, - hostPoolName: string, + workspaceName: string, privateEndpointConnectionName: string, - options?: PrivateEndpointConnectionsDeleteByHostPoolOptionalParams, - ): Promise { + connection: PrivateEndpointConnectionWithSystemData, + options?: PrivateEndpointConnectionsUpdateByWorkspaceOptionalParams, + ): Promise { return this.client.sendOperationRequest( { resourceGroupName, - hostPoolName, + workspaceName, privateEndpointConnectionName, + connection, options, }, - deleteByHostPoolOperationSpec, + updateByWorkspaceOperationSpec, ); } /** - * Approve or reject a private endpoint connection. + * Delete a PrivateEndpointConnectionWithSystemData * @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 workspaceName The name of the workspace + * @param privateEndpointConnectionName The name parameter for private endpoint * @param options The options parameters. */ - updateByHostPool( + deleteByWorkspace( resourceGroupName: string, - hostPoolName: string, + workspaceName: string, privateEndpointConnectionName: string, - connection: PrivateEndpointConnection, - options?: PrivateEndpointConnectionsUpdateByHostPoolOptionalParams, - ): Promise { + options?: PrivateEndpointConnectionsDeleteByWorkspaceOptionalParams, + ): Promise { return this.client.sendOperationRequest( { resourceGroupName, - hostPoolName, + workspaceName, privateEndpointConnectionName, - connection, options, }, - updateByHostPoolOperationSpec, + deleteByWorkspaceOperationSpec, ); } /** - * ListByWorkspaceNext + * ListByHostPoolNext * @param resourceGroupName The name of the resource group. The name is case insensitive. - * @param workspaceName The name of the workspace - * @param nextLink The nextLink from the previous successful call to the ListByWorkspace method. + * @param hostPoolName The name of the host pool within the specified resource group + * @param nextLink The nextLink from the previous successful call to the ListByHostPool method. * @param options The options parameters. */ - private _listByWorkspaceNext( + private _listByHostPoolNext( resourceGroupName: string, - workspaceName: string, + hostPoolName: string, nextLink: string, - options?: PrivateEndpointConnectionsListByWorkspaceNextOptionalParams, - ): Promise { + options?: PrivateEndpointConnectionsListByHostPoolNextOptionalParams, + ): Promise { return this.client.sendOperationRequest( - { resourceGroupName, workspaceName, nextLink, options }, - listByWorkspaceNextOperationSpec, + { resourceGroupName, hostPoolName, nextLink, options }, + listByHostPoolNextOperationSpec, ); } /** - * ListByHostPoolNext + * ListByWorkspaceNext * @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 nextLink The nextLink from the previous successful call to the ListByHostPool method. + * @param workspaceName The name of the workspace + * @param nextLink The nextLink from the previous successful call to the ListByWorkspace method. * @param options The options parameters. */ - private _listByHostPoolNext( + private _listByWorkspaceNext( resourceGroupName: string, - hostPoolName: string, + workspaceName: string, nextLink: string, - options?: PrivateEndpointConnectionsListByHostPoolNextOptionalParams, - ): Promise { + options?: PrivateEndpointConnectionsListByWorkspaceNextOptionalParams, + ): Promise { return this.client.sendOperationRequest( - { resourceGroupName, hostPoolName, nextLink, options }, - listByHostPoolNextOperationSpec, + { resourceGroupName, workspaceName, nextLink, options }, + listByWorkspaceNextOperationSpec, ); } } // Operation Specifications const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); -const listByWorkspaceOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}/privateEndpointConnections", +const listByHostPoolOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/privateEndpointConnections", httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.PrivateEndpointConnectionListResultWithSystemData, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - queryParameters: [Parameters.apiVersion], + queryParameters: [ + Parameters.apiVersion, + Parameters.pageSize, + Parameters.isDescending, + Parameters.initialSkip, + ], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, - Parameters.workspaceName, + Parameters.hostPoolName, ], headerParameters: [Parameters.accept], serializer, }; -const getByWorkspaceOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}/privateEndpointConnections/{privateEndpointConnectionName}", +const getByHostPoolOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/privateEndpointConnections/{privateEndpointConnectionName}", httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.PrivateEndpointConnectionWithSystemData, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, queryParameters: [Parameters.apiVersion], @@ -487,92 +485,90 @@ const getByWorkspaceOperationSpec: coreClient.OperationSpec = { Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, - Parameters.workspaceName, + Parameters.hostPoolName, Parameters.privateEndpointConnectionName, ], headerParameters: [Parameters.accept], serializer, }; -const deleteByWorkspaceOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}/privateEndpointConnections/{privateEndpointConnectionName}", - httpMethod: "DELETE", +const updateByHostPoolOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/privateEndpointConnections/{privateEndpointConnectionName}", + httpMethod: "PUT", responses: { - 200: {}, - 204: {}, + 200: { + bodyMapper: Mappers.PrivateEndpointConnectionWithSystemData, + }, + 201: { + bodyMapper: Mappers.PrivateEndpointConnectionWithSystemData, + }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, + requestBody: Parameters.connection, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, - Parameters.workspaceName, + Parameters.hostPoolName, Parameters.privateEndpointConnectionName, ], - headerParameters: [Parameters.accept], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", serializer, }; -const updateByWorkspaceOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}/privateEndpointConnections/{privateEndpointConnectionName}", - httpMethod: "PUT", +const deleteByHostPoolOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/privateEndpointConnections/{privateEndpointConnectionName}", + httpMethod: "DELETE", responses: { - 200: { - bodyMapper: Mappers.PrivateEndpointConnectionWithSystemData, - }, + 200: {}, + 204: {}, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - requestBody: Parameters.connection, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, - Parameters.workspaceName, + Parameters.hostPoolName, Parameters.privateEndpointConnectionName, ], - headerParameters: [Parameters.accept, Parameters.contentType], - mediaType: "json", + headerParameters: [Parameters.accept], serializer, }; -const listByHostPoolOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/privateEndpointConnections", +const listByWorkspaceOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}/privateEndpointConnections", httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.PrivateEndpointConnectionListResultWithSystemData, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - queryParameters: [ - Parameters.apiVersion, - Parameters.pageSize, - Parameters.isDescending, - Parameters.initialSkip, - ], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, - Parameters.hostPoolName, + Parameters.workspaceName, ], headerParameters: [Parameters.accept], serializer, }; -const getByHostPoolOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/privateEndpointConnections/{privateEndpointConnectionName}", +const getByWorkspaceOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}/privateEndpointConnections/{privateEndpointConnectionName}", httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.PrivateEndpointConnectionWithSystemData, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, queryParameters: [Parameters.apiVersion], @@ -580,58 +576,61 @@ const getByHostPoolOperationSpec: coreClient.OperationSpec = { Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, + Parameters.workspaceName, Parameters.privateEndpointConnectionName, - Parameters.hostPoolName, ], headerParameters: [Parameters.accept], serializer, }; -const deleteByHostPoolOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/privateEndpointConnections/{privateEndpointConnectionName}", - httpMethod: "DELETE", +const updateByWorkspaceOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}/privateEndpointConnections/{privateEndpointConnectionName}", + httpMethod: "PUT", responses: { - 200: {}, - 204: {}, + 200: { + bodyMapper: Mappers.PrivateEndpointConnectionWithSystemData, + }, + 201: { + bodyMapper: Mappers.PrivateEndpointConnectionWithSystemData, + }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, + requestBody: Parameters.connection, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, + Parameters.workspaceName, Parameters.privateEndpointConnectionName, - Parameters.hostPoolName, ], - headerParameters: [Parameters.accept], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", serializer, }; -const updateByHostPoolOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/privateEndpointConnections/{privateEndpointConnectionName}", - httpMethod: "PUT", +const deleteByWorkspaceOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}/privateEndpointConnections/{privateEndpointConnectionName}", + httpMethod: "DELETE", responses: { - 200: { - bodyMapper: Mappers.PrivateEndpointConnectionWithSystemData, - }, + 200: {}, + 204: {}, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - requestBody: Parameters.connection, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, + Parameters.workspaceName, Parameters.privateEndpointConnectionName, - Parameters.hostPoolName, ], - headerParameters: [Parameters.accept, Parameters.contentType], - mediaType: "json", + headerParameters: [Parameters.accept], serializer, }; -const listByWorkspaceNextOperationSpec: coreClient.OperationSpec = { +const listByHostPoolNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", httpMethod: "GET", responses: { @@ -639,7 +638,7 @@ const listByWorkspaceNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.PrivateEndpointConnectionListResultWithSystemData, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, urlParameters: [ @@ -647,12 +646,12 @@ const listByWorkspaceNextOperationSpec: coreClient.OperationSpec = { Parameters.nextLink, Parameters.subscriptionId, Parameters.resourceGroupName, - Parameters.workspaceName, + Parameters.hostPoolName, ], headerParameters: [Parameters.accept], serializer, }; -const listByHostPoolNextOperationSpec: coreClient.OperationSpec = { +const listByWorkspaceNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", httpMethod: "GET", responses: { @@ -660,7 +659,7 @@ const listByHostPoolNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.PrivateEndpointConnectionListResultWithSystemData, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, urlParameters: [ @@ -668,7 +667,7 @@ const listByHostPoolNextOperationSpec: coreClient.OperationSpec = { Parameters.nextLink, Parameters.subscriptionId, Parameters.resourceGroupName, - Parameters.hostPoolName, + Parameters.workspaceName, ], headerParameters: [Parameters.accept], serializer, diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/privateLinkResources.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/privateLinkResources.ts index b42da62b3b85..e848aeda158f 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/privateLinkResources.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/privateLinkResources.ts @@ -15,14 +15,14 @@ import * as Parameters from "../models/parameters.js"; import { DesktopVirtualizationAPIClient } from "../desktopVirtualizationAPIClient.js"; import { PrivateLinkResource, - PrivateLinkResourcesListByWorkspaceNextOptionalParams, - PrivateLinkResourcesListByWorkspaceOptionalParams, - PrivateLinkResourcesListByWorkspaceResponse, PrivateLinkResourcesListByHostPoolNextOptionalParams, PrivateLinkResourcesListByHostPoolOptionalParams, PrivateLinkResourcesListByHostPoolResponse, - PrivateLinkResourcesListByWorkspaceNextResponse, + PrivateLinkResourcesListByWorkspaceNextOptionalParams, + PrivateLinkResourcesListByWorkspaceOptionalParams, + PrivateLinkResourcesListByWorkspaceResponse, PrivateLinkResourcesListByHostPoolNextResponse, + PrivateLinkResourcesListByWorkspaceNextResponse, } from "../models/index.js"; /// @@ -39,19 +39,19 @@ export class PrivateLinkResourcesImpl implements PrivateLinkResources { } /** - * List the private link resources available for this workspace. + * List the private link resources available for this hostpool. * @param resourceGroupName The name of the resource group. The name is case insensitive. - * @param workspaceName The name of the workspace + * @param hostPoolName The name of the host pool within the specified resource group * @param options The options parameters. */ - public listByWorkspace( + public listByHostPool( resourceGroupName: string, - workspaceName: string, - options?: PrivateLinkResourcesListByWorkspaceOptionalParams, + hostPoolName: string, + options?: PrivateLinkResourcesListByHostPoolOptionalParams, ): PagedAsyncIterableIterator { - const iter = this.listByWorkspacePagingAll( + const iter = this.listByHostPoolPagingAll( resourceGroupName, - workspaceName, + hostPoolName, options, ); return { @@ -65,9 +65,9 @@ export class PrivateLinkResourcesImpl implements PrivateLinkResources { if (settings?.maxPageSize) { throw new Error("maxPageSize is not supported by this operation."); } - return this.listByWorkspacePagingPage( + return this.listByHostPoolPagingPage( resourceGroupName, - workspaceName, + hostPoolName, options, settings, ); @@ -75,18 +75,18 @@ export class PrivateLinkResourcesImpl implements PrivateLinkResources { }; } - private async *listByWorkspacePagingPage( + private async *listByHostPoolPagingPage( resourceGroupName: string, - workspaceName: string, - options?: PrivateLinkResourcesListByWorkspaceOptionalParams, + hostPoolName: string, + options?: PrivateLinkResourcesListByHostPoolOptionalParams, settings?: PageSettings, ): AsyncIterableIterator { - let result: PrivateLinkResourcesListByWorkspaceResponse; + let result: PrivateLinkResourcesListByHostPoolResponse; let continuationToken = settings?.continuationToken; if (!continuationToken) { - result = await this._listByWorkspace( + result = await this._listByHostPool( resourceGroupName, - workspaceName, + hostPoolName, options, ); let page = result.value || []; @@ -95,9 +95,9 @@ export class PrivateLinkResourcesImpl implements PrivateLinkResources { yield page; } while (continuationToken) { - result = await this._listByWorkspaceNext( + result = await this._listByHostPoolNext( resourceGroupName, - workspaceName, + hostPoolName, continuationToken, options, ); @@ -108,14 +108,14 @@ export class PrivateLinkResourcesImpl implements PrivateLinkResources { } } - private async *listByWorkspacePagingAll( + private async *listByHostPoolPagingAll( resourceGroupName: string, - workspaceName: string, - options?: PrivateLinkResourcesListByWorkspaceOptionalParams, + hostPoolName: string, + options?: PrivateLinkResourcesListByHostPoolOptionalParams, ): AsyncIterableIterator { - for await (const page of this.listByWorkspacePagingPage( + for await (const page of this.listByHostPoolPagingPage( resourceGroupName, - workspaceName, + hostPoolName, options, )) { yield* page; @@ -123,19 +123,19 @@ export class PrivateLinkResourcesImpl implements PrivateLinkResources { } /** - * List the private link resources available for this hostpool. + * List the private link resources available for this workspace. * @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 workspaceName The name of the workspace * @param options The options parameters. */ - public listByHostPool( + public listByWorkspace( resourceGroupName: string, - hostPoolName: string, - options?: PrivateLinkResourcesListByHostPoolOptionalParams, + workspaceName: string, + options?: PrivateLinkResourcesListByWorkspaceOptionalParams, ): PagedAsyncIterableIterator { - const iter = this.listByHostPoolPagingAll( + const iter = this.listByWorkspacePagingAll( resourceGroupName, - hostPoolName, + workspaceName, options, ); return { @@ -149,9 +149,9 @@ export class PrivateLinkResourcesImpl implements PrivateLinkResources { if (settings?.maxPageSize) { throw new Error("maxPageSize is not supported by this operation."); } - return this.listByHostPoolPagingPage( + return this.listByWorkspacePagingPage( resourceGroupName, - hostPoolName, + workspaceName, options, settings, ); @@ -159,18 +159,18 @@ export class PrivateLinkResourcesImpl implements PrivateLinkResources { }; } - private async *listByHostPoolPagingPage( + private async *listByWorkspacePagingPage( resourceGroupName: string, - hostPoolName: string, - options?: PrivateLinkResourcesListByHostPoolOptionalParams, + workspaceName: string, + options?: PrivateLinkResourcesListByWorkspaceOptionalParams, settings?: PageSettings, ): AsyncIterableIterator { - let result: PrivateLinkResourcesListByHostPoolResponse; + let result: PrivateLinkResourcesListByWorkspaceResponse; let continuationToken = settings?.continuationToken; if (!continuationToken) { - result = await this._listByHostPool( + result = await this._listByWorkspace( resourceGroupName, - hostPoolName, + workspaceName, options, ); let page = result.value || []; @@ -179,9 +179,9 @@ export class PrivateLinkResourcesImpl implements PrivateLinkResources { yield page; } while (continuationToken) { - result = await this._listByHostPoolNext( + result = await this._listByWorkspaceNext( resourceGroupName, - hostPoolName, + workspaceName, continuationToken, options, ); @@ -192,37 +192,20 @@ export class PrivateLinkResourcesImpl implements PrivateLinkResources { } } - private async *listByHostPoolPagingAll( + private async *listByWorkspacePagingAll( resourceGroupName: string, - hostPoolName: string, - options?: PrivateLinkResourcesListByHostPoolOptionalParams, + workspaceName: string, + options?: PrivateLinkResourcesListByWorkspaceOptionalParams, ): AsyncIterableIterator { - for await (const page of this.listByHostPoolPagingPage( + for await (const page of this.listByWorkspacePagingPage( resourceGroupName, - hostPoolName, + workspaceName, options, )) { yield* page; } } - /** - * 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 options parameters. - */ - private _listByWorkspace( - resourceGroupName: string, - workspaceName: string, - options?: PrivateLinkResourcesListByWorkspaceOptionalParams, - ): Promise { - return this.client.sendOperationRequest( - { resourceGroupName, workspaceName, options }, - listByWorkspaceOperationSpec, - ); - } - /** * List the private link resources available for this hostpool. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -241,21 +224,19 @@ export class PrivateLinkResourcesImpl implements PrivateLinkResources { } /** - * ListByWorkspaceNext + * 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 nextLink The nextLink from the previous successful call to the ListByWorkspace method. * @param options The options parameters. */ - private _listByWorkspaceNext( + private _listByWorkspace( resourceGroupName: string, workspaceName: string, - nextLink: string, - options?: PrivateLinkResourcesListByWorkspaceNextOptionalParams, - ): Promise { + options?: PrivateLinkResourcesListByWorkspaceOptionalParams, + ): Promise { return this.client.sendOperationRequest( - { resourceGroupName, workspaceName, nextLink, options }, - listByWorkspaceNextOperationSpec, + { resourceGroupName, workspaceName, options }, + listByWorkspaceOperationSpec, ); } @@ -277,19 +258,38 @@ export class PrivateLinkResourcesImpl implements PrivateLinkResources { listByHostPoolNextOperationSpec, ); } + + /** + * ListByWorkspaceNext + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param workspaceName The name of the workspace + * @param nextLink The nextLink from the previous successful call to the ListByWorkspace method. + * @param options The options parameters. + */ + private _listByWorkspaceNext( + resourceGroupName: string, + workspaceName: string, + nextLink: string, + options?: PrivateLinkResourcesListByWorkspaceNextOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, workspaceName, nextLink, options }, + listByWorkspaceNextOperationSpec, + ); + } } // Operation Specifications const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); -const listByWorkspaceOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}/privateLinkResources", +const listByHostPoolOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/privateLinkResources", httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.PrivateLinkResourceListResult, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, queryParameters: [ @@ -302,20 +302,20 @@ const listByWorkspaceOperationSpec: coreClient.OperationSpec = { Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, - Parameters.workspaceName, + Parameters.hostPoolName, ], headerParameters: [Parameters.accept], serializer, }; -const listByHostPoolOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/privateLinkResources", +const listByWorkspaceOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}/privateLinkResources", httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.PrivateLinkResourceListResult, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, queryParameters: [ @@ -328,12 +328,12 @@ const listByHostPoolOperationSpec: coreClient.OperationSpec = { Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, - Parameters.hostPoolName, + Parameters.workspaceName, ], headerParameters: [Parameters.accept], serializer, }; -const listByWorkspaceNextOperationSpec: coreClient.OperationSpec = { +const listByHostPoolNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", httpMethod: "GET", responses: { @@ -341,7 +341,7 @@ const listByWorkspaceNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.PrivateLinkResourceListResult, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, urlParameters: [ @@ -349,12 +349,12 @@ const listByWorkspaceNextOperationSpec: coreClient.OperationSpec = { Parameters.nextLink, Parameters.subscriptionId, Parameters.resourceGroupName, - Parameters.workspaceName, + Parameters.hostPoolName, ], headerParameters: [Parameters.accept], serializer, }; -const listByHostPoolNextOperationSpec: coreClient.OperationSpec = { +const listByWorkspaceNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", httpMethod: "GET", responses: { @@ -362,7 +362,7 @@ const listByHostPoolNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.PrivateLinkResourceListResult, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, urlParameters: [ @@ -370,7 +370,7 @@ const listByHostPoolNextOperationSpec: coreClient.OperationSpec = { Parameters.nextLink, Parameters.subscriptionId, Parameters.resourceGroupName, - Parameters.hostPoolName, + Parameters.workspaceName, ], headerParameters: [Parameters.accept], serializer, diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/scalingPlanPersonalSchedules.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/scalingPlanPersonalSchedules.ts index f647e2f88c09..cedf89c202b8 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/scalingPlanPersonalSchedules.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/scalingPlanPersonalSchedules.ts @@ -22,9 +22,9 @@ import { ScalingPlanPersonalSchedulesGetResponse, ScalingPlanPersonalSchedulesCreateOptionalParams, ScalingPlanPersonalSchedulesCreateResponse, - ScalingPlanPersonalSchedulesDeleteOptionalParams, ScalingPlanPersonalSchedulesUpdateOptionalParams, ScalingPlanPersonalSchedulesUpdateResponse, + ScalingPlanPersonalSchedulesDeleteOptionalParams, ScalingPlanPersonalSchedulesListNextResponse, } from "../models/index.js"; @@ -123,6 +123,23 @@ export class ScalingPlanPersonalSchedulesImpl } } + /** + * List ScalingPlanPersonalSchedules. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param scalingPlanName The name of the scaling plan. + * @param options The options parameters. + */ + private _list( + resourceGroupName: string, + scalingPlanName: string, + options?: ScalingPlanPersonalSchedulesListOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, scalingPlanName, options }, + listOperationSpec, + ); + } + /** * Get a ScalingPlanPersonalSchedule. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -169,25 +186,6 @@ export class ScalingPlanPersonalSchedulesImpl ); } - /** - * Remove a ScalingPlanPersonalSchedule. - * @param resourceGroupName The name of the resource group. The name is case insensitive. - * @param scalingPlanName The name of the scaling plan. - * @param scalingPlanScheduleName The name of the ScalingPlanSchedule - * @param options The options parameters. - */ - delete( - resourceGroupName: string, - scalingPlanName: string, - scalingPlanScheduleName: string, - options?: ScalingPlanPersonalSchedulesDeleteOptionalParams, - ): Promise { - return this.client.sendOperationRequest( - { resourceGroupName, scalingPlanName, scalingPlanScheduleName, options }, - deleteOperationSpec, - ); - } - /** * Update a ScalingPlanPersonalSchedule. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -208,19 +206,21 @@ export class ScalingPlanPersonalSchedulesImpl } /** - * List ScalingPlanPersonalSchedules. + * Remove a ScalingPlanPersonalSchedule. * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param scalingPlanName The name of the scaling plan. + * @param scalingPlanScheduleName The name of the ScalingPlanSchedule * @param options The options parameters. */ - private _list( + delete( resourceGroupName: string, scalingPlanName: string, - options?: ScalingPlanPersonalSchedulesListOptionalParams, - ): Promise { + scalingPlanScheduleName: string, + options?: ScalingPlanPersonalSchedulesDeleteOptionalParams, + ): Promise { return this.client.sendOperationRequest( - { resourceGroupName, scalingPlanName, options }, - listOperationSpec, + { resourceGroupName, scalingPlanName, scalingPlanScheduleName, options }, + deleteOperationSpec, ); } @@ -246,43 +246,43 @@ export class ScalingPlanPersonalSchedulesImpl // Operation Specifications const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); -const getOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/scalingPlans/{scalingPlanName}/personalSchedules/{scalingPlanScheduleName}", +const listOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/scalingPlans/{scalingPlanName}/personalSchedules", httpMethod: "GET", responses: { 200: { - bodyMapper: Mappers.ScalingPlanPersonalSchedule, + bodyMapper: Mappers.ScalingPlanPersonalScheduleList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - queryParameters: [Parameters.apiVersion], + queryParameters: [ + Parameters.apiVersion, + Parameters.pageSize, + Parameters.isDescending, + Parameters.initialSkip, + ], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, Parameters.scalingPlanName, - Parameters.scalingPlanScheduleName, ], headerParameters: [Parameters.accept], serializer, }; -const createOperationSpec: coreClient.OperationSpec = { +const getOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/scalingPlans/{scalingPlanName}/personalSchedules/{scalingPlanScheduleName}", - httpMethod: "PUT", + httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.ScalingPlanPersonalSchedule, }, - 201: { - bodyMapper: Mappers.ScalingPlanPersonalSchedule, - }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - requestBody: Parameters.scalingPlanSchedule2, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -291,20 +291,24 @@ const createOperationSpec: coreClient.OperationSpec = { Parameters.scalingPlanName, Parameters.scalingPlanScheduleName, ], - headerParameters: [Parameters.accept, Parameters.contentType], - mediaType: "json", + headerParameters: [Parameters.accept], serializer, }; -const deleteOperationSpec: coreClient.OperationSpec = { +const createOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/scalingPlans/{scalingPlanName}/personalSchedules/{scalingPlanScheduleName}", - httpMethod: "DELETE", + httpMethod: "PUT", responses: { - 200: {}, - 204: {}, + 200: { + bodyMapper: Mappers.ScalingPlanPersonalSchedule, + }, + 201: { + bodyMapper: Mappers.ScalingPlanPersonalSchedule, + }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, + requestBody: Parameters.scalingPlanSchedule, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -313,7 +317,8 @@ const deleteOperationSpec: coreClient.OperationSpec = { Parameters.scalingPlanName, Parameters.scalingPlanScheduleName, ], - headerParameters: [Parameters.accept], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", serializer, }; const updateOperationSpec: coreClient.OperationSpec = { @@ -324,10 +329,10 @@ const updateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ScalingPlanPersonalSchedule, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - requestBody: Parameters.scalingPlanSchedule3, + requestBody: Parameters.scalingPlanSchedule1, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -340,28 +345,23 @@ const updateOperationSpec: coreClient.OperationSpec = { mediaType: "json", serializer, }; -const listOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/scalingPlans/{scalingPlanName}/personalSchedules", - httpMethod: "GET", +const deleteOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/scalingPlans/{scalingPlanName}/personalSchedules/{scalingPlanScheduleName}", + httpMethod: "DELETE", responses: { - 200: { - bodyMapper: Mappers.ScalingPlanPersonalScheduleList, - }, + 200: {}, + 204: {}, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - queryParameters: [ - Parameters.apiVersion, - Parameters.pageSize, - Parameters.isDescending, - Parameters.initialSkip, - ], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, Parameters.scalingPlanName, + Parameters.scalingPlanScheduleName, ], headerParameters: [Parameters.accept], serializer, @@ -374,7 +374,7 @@ const listNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ScalingPlanPersonalScheduleList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, urlParameters: [ diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/scalingPlanPooledSchedules.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/scalingPlanPooledSchedules.ts index e0913c09756e..3c50af2d647c 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/scalingPlanPooledSchedules.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/scalingPlanPooledSchedules.ts @@ -22,9 +22,9 @@ import { ScalingPlanPooledSchedulesGetResponse, ScalingPlanPooledSchedulesCreateOptionalParams, ScalingPlanPooledSchedulesCreateResponse, - ScalingPlanPooledSchedulesDeleteOptionalParams, ScalingPlanPooledSchedulesUpdateOptionalParams, ScalingPlanPooledSchedulesUpdateResponse, + ScalingPlanPooledSchedulesDeleteOptionalParams, ScalingPlanPooledSchedulesListNextResponse, } from "../models/index.js"; @@ -123,6 +123,23 @@ export class ScalingPlanPooledSchedulesImpl } } + /** + * List ScalingPlanPooledSchedules. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param scalingPlanName The name of the scaling plan. + * @param options The options parameters. + */ + private _list( + resourceGroupName: string, + scalingPlanName: string, + options?: ScalingPlanPooledSchedulesListOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, scalingPlanName, options }, + listOperationSpec, + ); + } + /** * Get a ScalingPlanPooledSchedule. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -169,25 +186,6 @@ export class ScalingPlanPooledSchedulesImpl ); } - /** - * Remove a ScalingPlanPooledSchedule. - * @param resourceGroupName The name of the resource group. The name is case insensitive. - * @param scalingPlanName The name of the scaling plan. - * @param scalingPlanScheduleName The name of the ScalingPlanSchedule - * @param options The options parameters. - */ - delete( - resourceGroupName: string, - scalingPlanName: string, - scalingPlanScheduleName: string, - options?: ScalingPlanPooledSchedulesDeleteOptionalParams, - ): Promise { - return this.client.sendOperationRequest( - { resourceGroupName, scalingPlanName, scalingPlanScheduleName, options }, - deleteOperationSpec, - ); - } - /** * Update a ScalingPlanPooledSchedule. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -208,19 +206,21 @@ export class ScalingPlanPooledSchedulesImpl } /** - * List ScalingPlanPooledSchedules. + * Remove a ScalingPlanPooledSchedule. * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param scalingPlanName The name of the scaling plan. + * @param scalingPlanScheduleName The name of the ScalingPlanSchedule * @param options The options parameters. */ - private _list( + delete( resourceGroupName: string, scalingPlanName: string, - options?: ScalingPlanPooledSchedulesListOptionalParams, - ): Promise { + scalingPlanScheduleName: string, + options?: ScalingPlanPooledSchedulesDeleteOptionalParams, + ): Promise { return this.client.sendOperationRequest( - { resourceGroupName, scalingPlanName, options }, - listOperationSpec, + { resourceGroupName, scalingPlanName, scalingPlanScheduleName, options }, + deleteOperationSpec, ); } @@ -246,43 +246,43 @@ export class ScalingPlanPooledSchedulesImpl // Operation Specifications const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); -const getOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/scalingPlans/{scalingPlanName}/pooledSchedules/{scalingPlanScheduleName}", +const listOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/scalingPlans/{scalingPlanName}/pooledSchedules", httpMethod: "GET", responses: { 200: { - bodyMapper: Mappers.ScalingPlanPooledSchedule, + bodyMapper: Mappers.ScalingPlanPooledScheduleList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - queryParameters: [Parameters.apiVersion], + queryParameters: [ + Parameters.apiVersion, + Parameters.pageSize, + Parameters.isDescending, + Parameters.initialSkip, + ], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, Parameters.scalingPlanName, - Parameters.scalingPlanScheduleName, ], headerParameters: [Parameters.accept], serializer, }; -const createOperationSpec: coreClient.OperationSpec = { +const getOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/scalingPlans/{scalingPlanName}/pooledSchedules/{scalingPlanScheduleName}", - httpMethod: "PUT", + httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.ScalingPlanPooledSchedule, }, - 201: { - bodyMapper: Mappers.ScalingPlanPooledSchedule, - }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - requestBody: Parameters.scalingPlanSchedule, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -291,20 +291,24 @@ const createOperationSpec: coreClient.OperationSpec = { Parameters.scalingPlanName, Parameters.scalingPlanScheduleName, ], - headerParameters: [Parameters.accept, Parameters.contentType], - mediaType: "json", + headerParameters: [Parameters.accept], serializer, }; -const deleteOperationSpec: coreClient.OperationSpec = { +const createOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/scalingPlans/{scalingPlanName}/pooledSchedules/{scalingPlanScheduleName}", - httpMethod: "DELETE", + httpMethod: "PUT", responses: { - 200: {}, - 204: {}, + 200: { + bodyMapper: Mappers.ScalingPlanPooledSchedule, + }, + 201: { + bodyMapper: Mappers.ScalingPlanPooledSchedule, + }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, + requestBody: Parameters.scalingPlanSchedule2, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -313,7 +317,8 @@ const deleteOperationSpec: coreClient.OperationSpec = { Parameters.scalingPlanName, Parameters.scalingPlanScheduleName, ], - headerParameters: [Parameters.accept], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", serializer, }; const updateOperationSpec: coreClient.OperationSpec = { @@ -324,10 +329,10 @@ const updateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ScalingPlanPooledSchedule, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - requestBody: Parameters.scalingPlanSchedule1, + requestBody: Parameters.scalingPlanSchedule3, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -340,28 +345,23 @@ const updateOperationSpec: coreClient.OperationSpec = { mediaType: "json", serializer, }; -const listOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/scalingPlans/{scalingPlanName}/pooledSchedules", - httpMethod: "GET", +const deleteOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/scalingPlans/{scalingPlanName}/pooledSchedules/{scalingPlanScheduleName}", + httpMethod: "DELETE", responses: { - 200: { - bodyMapper: Mappers.ScalingPlanPooledScheduleList, - }, + 200: {}, + 204: {}, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - queryParameters: [ - Parameters.apiVersion, - Parameters.pageSize, - Parameters.isDescending, - Parameters.initialSkip, - ], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, Parameters.scalingPlanName, + Parameters.scalingPlanScheduleName, ], headerParameters: [Parameters.accept], serializer, @@ -374,7 +374,7 @@ const listNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ScalingPlanPooledScheduleList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, urlParameters: [ diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/scalingPlans.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/scalingPlans.ts index 6888baab34bd..7f55b819b5cd 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/scalingPlans.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/scalingPlans.ts @@ -15,25 +15,25 @@ import * as Parameters from "../models/parameters.js"; import { DesktopVirtualizationAPIClient } from "../desktopVirtualizationAPIClient.js"; import { ScalingPlan, - ScalingPlansListByResourceGroupNextOptionalParams, - ScalingPlansListByResourceGroupOptionalParams, - ScalingPlansListByResourceGroupResponse, ScalingPlansListBySubscriptionNextOptionalParams, ScalingPlansListBySubscriptionOptionalParams, ScalingPlansListBySubscriptionResponse, ScalingPlansListByHostPoolNextOptionalParams, ScalingPlansListByHostPoolOptionalParams, ScalingPlansListByHostPoolResponse, + ScalingPlansListByResourceGroupNextOptionalParams, + ScalingPlansListByResourceGroupOptionalParams, + ScalingPlansListByResourceGroupResponse, ScalingPlansGetOptionalParams, ScalingPlansGetResponse, ScalingPlansCreateOptionalParams, ScalingPlansCreateResponse, - ScalingPlansDeleteOptionalParams, ScalingPlansUpdateOptionalParams, ScalingPlansUpdateResponse, - ScalingPlansListByResourceGroupNextResponse, + ScalingPlansDeleteOptionalParams, ScalingPlansListBySubscriptionNextResponse, ScalingPlansListByHostPoolNextResponse, + ScalingPlansListByResourceGroupNextResponse, } from "../models/index.js"; /// @@ -49,75 +49,6 @@ export class ScalingPlansImpl implements ScalingPlans { this.client = client; } - /** - * List scaling plans. - * @param resourceGroupName The name of the resource group. The name is case insensitive. - * @param options The options parameters. - */ - public listByResourceGroup( - resourceGroupName: string, - options?: ScalingPlansListByResourceGroupOptionalParams, - ): PagedAsyncIterableIterator { - const iter = this.listByResourceGroupPagingAll(resourceGroupName, options); - return { - next() { - return iter.next(); - }, - [Symbol.asyncIterator]() { - return this; - }, - byPage: (settings?: PageSettings) => { - if (settings?.maxPageSize) { - throw new Error("maxPageSize is not supported by this operation."); - } - return this.listByResourceGroupPagingPage( - resourceGroupName, - options, - settings, - ); - }, - }; - } - - private async *listByResourceGroupPagingPage( - resourceGroupName: string, - options?: ScalingPlansListByResourceGroupOptionalParams, - settings?: PageSettings, - ): AsyncIterableIterator { - let result: ScalingPlansListByResourceGroupResponse; - let continuationToken = settings?.continuationToken; - if (!continuationToken) { - result = await this._listByResourceGroup(resourceGroupName, options); - let page = result.value || []; - continuationToken = result.nextLink; - setContinuationToken(page, continuationToken); - yield page; - } - while (continuationToken) { - result = await this._listByResourceGroupNext( - resourceGroupName, - continuationToken, - options, - ); - continuationToken = result.nextLink; - let page = result.value || []; - setContinuationToken(page, continuationToken); - yield page; - } - } - - private async *listByResourceGroupPagingAll( - resourceGroupName: string, - options?: ScalingPlansListByResourceGroupOptionalParams, - ): AsyncIterableIterator { - for await (const page of this.listByResourceGroupPagingPage( - resourceGroupName, - options, - )) { - yield* page; - } - } - /** * List scaling plans in subscription. * @param options The options parameters. @@ -257,72 +188,101 @@ export class ScalingPlansImpl implements ScalingPlans { } /** - * Get a scaling plan. + * List scaling plans. * @param resourceGroupName The name of the resource group. The name is case insensitive. - * @param scalingPlanName The name of the scaling plan. * @param options The options parameters. */ - get( + public listByResourceGroup( resourceGroupName: string, - scalingPlanName: string, - options?: ScalingPlansGetOptionalParams, - ): Promise { - return this.client.sendOperationRequest( - { resourceGroupName, scalingPlanName, options }, - getOperationSpec, - ); + options?: ScalingPlansListByResourceGroupOptionalParams, + ): PagedAsyncIterableIterator { + const iter = this.listByResourceGroupPagingAll(resourceGroupName, options); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: (settings?: PageSettings) => { + if (settings?.maxPageSize) { + throw new Error("maxPageSize is not supported by this operation."); + } + return this.listByResourceGroupPagingPage( + resourceGroupName, + options, + settings, + ); + }, + }; } - /** - * 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 options parameters. - */ - create( + private async *listByResourceGroupPagingPage( resourceGroupName: string, - scalingPlanName: string, - scalingPlan: ScalingPlan, - options?: ScalingPlansCreateOptionalParams, - ): Promise { - return this.client.sendOperationRequest( - { resourceGroupName, scalingPlanName, scalingPlan, options }, - createOperationSpec, - ); + options?: ScalingPlansListByResourceGroupOptionalParams, + settings?: PageSettings, + ): AsyncIterableIterator { + let result: ScalingPlansListByResourceGroupResponse; + let continuationToken = settings?.continuationToken; + if (!continuationToken) { + result = await this._listByResourceGroup(resourceGroupName, options); + let page = result.value || []; + continuationToken = result.nextLink; + setContinuationToken(page, continuationToken); + yield page; + } + while (continuationToken) { + result = await this._listByResourceGroupNext( + resourceGroupName, + continuationToken, + options, + ); + continuationToken = result.nextLink; + let page = result.value || []; + setContinuationToken(page, continuationToken); + yield page; + } + } + + private async *listByResourceGroupPagingAll( + resourceGroupName: string, + options?: ScalingPlansListByResourceGroupOptionalParams, + ): AsyncIterableIterator { + for await (const page of this.listByResourceGroupPagingPage( + resourceGroupName, + options, + )) { + yield* page; + } } /** - * 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. + * List scaling plans in subscription. * @param options The options parameters. */ - delete( - resourceGroupName: string, - scalingPlanName: string, - options?: ScalingPlansDeleteOptionalParams, - ): Promise { + private _listBySubscription( + options?: ScalingPlansListBySubscriptionOptionalParams, + ): Promise { return this.client.sendOperationRequest( - { resourceGroupName, scalingPlanName, options }, - deleteOperationSpec, + { options }, + listBySubscriptionOperationSpec, ); } /** - * Update a scaling plan. + * List scaling plan associated with hostpool. * @param resourceGroupName The name of the resource group. The name is case insensitive. - * @param scalingPlanName The name of the scaling plan. + * @param hostPoolName The name of the host pool within the specified resource group * @param options The options parameters. */ - update( + private _listByHostPool( resourceGroupName: string, - scalingPlanName: string, - options?: ScalingPlansUpdateOptionalParams, - ): Promise { + hostPoolName: string, + options?: ScalingPlansListByHostPoolOptionalParams, + ): Promise { return this.client.sendOperationRequest( - { resourceGroupName, scalingPlanName, options }, - updateOperationSpec, + { resourceGroupName, hostPoolName, options }, + listByHostPoolOperationSpec, ); } @@ -342,49 +302,72 @@ export class ScalingPlansImpl implements ScalingPlans { } /** - * List scaling plans in subscription. + * 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 options parameters. */ - private _listBySubscription( - options?: ScalingPlansListBySubscriptionOptionalParams, - ): Promise { + get( + resourceGroupName: string, + scalingPlanName: string, + options?: ScalingPlansGetOptionalParams, + ): Promise { return this.client.sendOperationRequest( - { options }, - listBySubscriptionOperationSpec, + { resourceGroupName, scalingPlanName, options }, + getOperationSpec, ); } /** - * List scaling plan associated with hostpool. + * Create or update a scaling plan. * @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 scalingPlanName The name of the scaling plan. + * @param scalingPlan Object containing scaling plan definitions. * @param options The options parameters. */ - private _listByHostPool( + create( resourceGroupName: string, - hostPoolName: string, - options?: ScalingPlansListByHostPoolOptionalParams, - ): Promise { + scalingPlanName: string, + scalingPlan: ScalingPlan, + options?: ScalingPlansCreateOptionalParams, + ): Promise { return this.client.sendOperationRequest( - { resourceGroupName, hostPoolName, options }, - listByHostPoolOperationSpec, + { resourceGroupName, scalingPlanName, scalingPlan, options }, + createOperationSpec, ); } /** - * ListByResourceGroupNext + * Update a scaling plan. * @param resourceGroupName The name of the resource group. The name is case insensitive. - * @param nextLink The nextLink from the previous successful call to the ListByResourceGroup method. + * @param scalingPlanName The name of the scaling plan. * @param options The options parameters. */ - private _listByResourceGroupNext( + update( resourceGroupName: string, - nextLink: string, - options?: ScalingPlansListByResourceGroupNextOptionalParams, - ): Promise { + scalingPlanName: string, + options?: ScalingPlansUpdateOptionalParams, + ): Promise { return this.client.sendOperationRequest( - { resourceGroupName, nextLink, options }, - listByResourceGroupNextOperationSpec, + { resourceGroupName, scalingPlanName, options }, + updateOperationSpec, + ); + } + + /** + * 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 options parameters. + */ + delete( + resourceGroupName: string, + scalingPlanName: string, + options?: ScalingPlansDeleteOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, scalingPlanName, options }, + deleteOperationSpec, ); } @@ -421,89 +404,110 @@ export class ScalingPlansImpl implements ScalingPlans { listByHostPoolNextOperationSpec, ); } + + /** + * ListByResourceGroupNext + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param nextLink The nextLink from the previous successful call to the ListByResourceGroup method. + * @param options The options parameters. + */ + private _listByResourceGroupNext( + resourceGroupName: string, + nextLink: string, + options?: ScalingPlansListByResourceGroupNextOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, nextLink, options }, + listByResourceGroupNextOperationSpec, + ); + } } // Operation Specifications const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); -const getOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/scalingPlans/{scalingPlanName}", +const listBySubscriptionOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/scalingPlans", httpMethod: "GET", responses: { 200: { - bodyMapper: Mappers.ScalingPlan, + bodyMapper: Mappers.ScalingPlanList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - queryParameters: [Parameters.apiVersion], - urlParameters: [ - Parameters.$host, - Parameters.subscriptionId, - Parameters.resourceGroupName, - Parameters.scalingPlanName, + queryParameters: [ + Parameters.apiVersion, + Parameters.pageSize, + Parameters.isDescending, + Parameters.initialSkip, ], + urlParameters: [Parameters.$host, Parameters.subscriptionId], headerParameters: [Parameters.accept], serializer, }; -const createOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/scalingPlans/{scalingPlanName}", - httpMethod: "PUT", +const listByHostPoolOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/scalingPlans", + httpMethod: "GET", responses: { 200: { - bodyMapper: Mappers.ScalingPlan, - }, - 201: { - bodyMapper: Mappers.ScalingPlan, + bodyMapper: Mappers.ScalingPlanList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - requestBody: Parameters.scalingPlan, - queryParameters: [Parameters.apiVersion], + queryParameters: [ + Parameters.apiVersion, + Parameters.pageSize, + Parameters.isDescending, + Parameters.initialSkip, + ], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, - Parameters.scalingPlanName, + Parameters.hostPoolName, ], - headerParameters: [Parameters.accept, Parameters.contentType], - mediaType: "json", + headerParameters: [Parameters.accept], serializer, }; -const deleteOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/scalingPlans/{scalingPlanName}", - httpMethod: "DELETE", +const listByResourceGroupOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/scalingPlans", + httpMethod: "GET", responses: { - 200: {}, - 204: {}, + 200: { + bodyMapper: Mappers.ScalingPlanList, + }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - queryParameters: [Parameters.apiVersion], + queryParameters: [ + Parameters.apiVersion, + Parameters.pageSize, + Parameters.isDescending, + Parameters.initialSkip, + ], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, - Parameters.scalingPlanName, ], headerParameters: [Parameters.accept], serializer, }; -const updateOperationSpec: coreClient.OperationSpec = { +const getOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/scalingPlans/{scalingPlanName}", - httpMethod: "PATCH", + httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.ScalingPlan, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - requestBody: Parameters.scalingPlan1, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -511,83 +515,79 @@ const updateOperationSpec: coreClient.OperationSpec = { Parameters.resourceGroupName, Parameters.scalingPlanName, ], - headerParameters: [Parameters.accept, Parameters.contentType], - mediaType: "json", + headerParameters: [Parameters.accept], serializer, }; -const listByResourceGroupOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/scalingPlans", - httpMethod: "GET", +const createOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/scalingPlans/{scalingPlanName}", + httpMethod: "PUT", responses: { 200: { - bodyMapper: Mappers.ScalingPlanList, + bodyMapper: Mappers.ScalingPlan, + }, + 201: { + bodyMapper: Mappers.ScalingPlan, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - queryParameters: [ - Parameters.apiVersion, - Parameters.pageSize, - Parameters.isDescending, - Parameters.initialSkip, - ], + requestBody: Parameters.scalingPlan, + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, + Parameters.scalingPlanName, ], - headerParameters: [Parameters.accept], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", serializer, }; -const listBySubscriptionOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/scalingPlans", - httpMethod: "GET", +const updateOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/scalingPlans/{scalingPlanName}", + httpMethod: "PATCH", responses: { 200: { - bodyMapper: Mappers.ScalingPlanList, + bodyMapper: Mappers.ScalingPlan, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - queryParameters: [ - Parameters.apiVersion, - Parameters.pageSize, - Parameters.isDescending, - Parameters.initialSkip, + requestBody: Parameters.scalingPlan1, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.scalingPlanName, ], - urlParameters: [Parameters.$host, Parameters.subscriptionId], - headerParameters: [Parameters.accept], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", serializer, }; -const listByHostPoolOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/scalingPlans", - httpMethod: "GET", +const deleteOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/scalingPlans/{scalingPlanName}", + httpMethod: "DELETE", responses: { - 200: { - bodyMapper: Mappers.ScalingPlanList, - }, + 200: {}, + 204: {}, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - queryParameters: [ - Parameters.apiVersion, - Parameters.pageSize, - Parameters.isDescending, - Parameters.initialSkip, - ], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, - Parameters.hostPoolName, + Parameters.scalingPlanName, ], headerParameters: [Parameters.accept], serializer, }; -const listByResourceGroupNextOperationSpec: coreClient.OperationSpec = { +const listBySubscriptionNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", httpMethod: "GET", responses: { @@ -595,19 +595,18 @@ const listByResourceGroupNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ScalingPlanList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, urlParameters: [ Parameters.$host, Parameters.nextLink, Parameters.subscriptionId, - Parameters.resourceGroupName, ], headerParameters: [Parameters.accept], serializer, }; -const listBySubscriptionNextOperationSpec: coreClient.OperationSpec = { +const listByHostPoolNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", httpMethod: "GET", responses: { @@ -615,18 +614,20 @@ const listBySubscriptionNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ScalingPlanList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, urlParameters: [ Parameters.$host, Parameters.nextLink, Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, ], headerParameters: [Parameters.accept], serializer, }; -const listByHostPoolNextOperationSpec: coreClient.OperationSpec = { +const listByResourceGroupNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", httpMethod: "GET", responses: { @@ -634,7 +635,7 @@ const listByHostPoolNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ScalingPlanList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, urlParameters: [ @@ -642,7 +643,6 @@ const listByHostPoolNextOperationSpec: coreClient.OperationSpec = { Parameters.nextLink, Parameters.subscriptionId, Parameters.resourceGroupName, - Parameters.hostPoolName, ], headerParameters: [Parameters.accept], serializer, diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/sessionHostConfigurations.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/sessionHostConfigurations.ts new file mode 100644 index 000000000000..6ae18d1f2cf2 --- /dev/null +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/sessionHostConfigurations.ts @@ -0,0 +1,507 @@ +/* + * 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 { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; +import { setContinuationToken } from "../pagingHelper.js"; +import { SessionHostConfigurations } from "../operationsInterfaces/index.js"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers.js"; +import * as Parameters from "../models/parameters.js"; +import { DesktopVirtualizationAPIClient } from "../desktopVirtualizationAPIClient.js"; +import { + SimplePollerLike, + OperationState, + createHttpPoller, +} from "@azure/core-lro"; +import { createLroSpec } from "../lroImpl.js"; +import { + SessionHostConfiguration, + SessionHostConfigurationsListByHostPoolNextOptionalParams, + SessionHostConfigurationsListByHostPoolOptionalParams, + SessionHostConfigurationsListByHostPoolResponse, + SessionHostConfigurationsGetOptionalParams, + SessionHostConfigurationsGetResponse, + SessionHostConfigurationsCreateOrUpdateOptionalParams, + SessionHostConfigurationsCreateOrUpdateResponse, + SessionHostConfigurationsUpdateOptionalParams, + SessionHostConfigurationsUpdateResponse, + SessionHostConfigurationsListByHostPoolNextResponse, +} from "../models/index.js"; + +/// +/** Class containing SessionHostConfigurations operations. */ +export class SessionHostConfigurationsImpl + implements SessionHostConfigurations +{ + private readonly client: DesktopVirtualizationAPIClient; + + /** + * Initialize a new instance of the class SessionHostConfigurations class. + * @param client Reference to the service client + */ + constructor(client: DesktopVirtualizationAPIClient) { + this.client = client; + } + + /** + * List SessionHostConfigurations. + * @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 options parameters. + */ + public listByHostPool( + resourceGroupName: string, + hostPoolName: string, + options?: SessionHostConfigurationsListByHostPoolOptionalParams, + ): PagedAsyncIterableIterator { + const iter = this.listByHostPoolPagingAll( + resourceGroupName, + hostPoolName, + options, + ); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: (settings?: PageSettings) => { + if (settings?.maxPageSize) { + throw new Error("maxPageSize is not supported by this operation."); + } + return this.listByHostPoolPagingPage( + resourceGroupName, + hostPoolName, + options, + settings, + ); + }, + }; + } + + private async *listByHostPoolPagingPage( + resourceGroupName: string, + hostPoolName: string, + options?: SessionHostConfigurationsListByHostPoolOptionalParams, + settings?: PageSettings, + ): AsyncIterableIterator { + let result: SessionHostConfigurationsListByHostPoolResponse; + let continuationToken = settings?.continuationToken; + if (!continuationToken) { + result = await this._listByHostPool( + resourceGroupName, + hostPoolName, + options, + ); + let page = result.value || []; + continuationToken = result.nextLink; + setContinuationToken(page, continuationToken); + yield page; + } + while (continuationToken) { + result = await this._listByHostPoolNext( + resourceGroupName, + hostPoolName, + continuationToken, + options, + ); + continuationToken = result.nextLink; + let page = result.value || []; + setContinuationToken(page, continuationToken); + yield page; + } + } + + private async *listByHostPoolPagingAll( + resourceGroupName: string, + hostPoolName: string, + options?: SessionHostConfigurationsListByHostPoolOptionalParams, + ): AsyncIterableIterator { + for await (const page of this.listByHostPoolPagingPage( + resourceGroupName, + hostPoolName, + options, + )) { + yield* page; + } + } + + /** + * List SessionHostConfigurations. + * @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 options parameters. + */ + private _listByHostPool( + resourceGroupName: string, + hostPoolName: string, + options?: SessionHostConfigurationsListByHostPoolOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, hostPoolName, options }, + listByHostPoolOperationSpec, + ); + } + + /** + * Get a SessionHostConfiguration. + * @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 options parameters. + */ + get( + resourceGroupName: string, + hostPoolName: string, + options?: SessionHostConfigurationsGetOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, hostPoolName, options }, + getOperationSpec, + ); + } + + /** + * Create or update a SessionHostConfiguration. + * @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 sessionHostConfiguration Resource create parameters. + * @param options The options parameters. + */ + async beginCreateOrUpdate( + resourceGroupName: string, + hostPoolName: string, + sessionHostConfiguration: SessionHostConfiguration, + options?: SessionHostConfigurationsCreateOrUpdateOptionalParams, + ): Promise< + SimplePollerLike< + OperationState, + SessionHostConfigurationsCreateOrUpdateResponse + > + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec, + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperationFn = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec, + ) => { + let currentRawResponse: coreClient.FullOperationResponse | undefined = + undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown, + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback, + }, + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON(), + }, + }; + }; + + const lro = createLroSpec({ + sendOperationFn, + args: { + resourceGroupName, + hostPoolName, + sessionHostConfiguration, + options, + }, + spec: createOrUpdateOperationSpec, + }); + const poller = await createHttpPoller< + SessionHostConfigurationsCreateOrUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "azure-async-operation", + }); + await poller.poll(); + return poller; + } + + /** + * Create or update a SessionHostConfiguration. + * @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 sessionHostConfiguration Resource create parameters. + * @param options The options parameters. + */ + async beginCreateOrUpdateAndWait( + resourceGroupName: string, + hostPoolName: string, + sessionHostConfiguration: SessionHostConfiguration, + options?: SessionHostConfigurationsCreateOrUpdateOptionalParams, + ): Promise { + const poller = await this.beginCreateOrUpdate( + resourceGroupName, + hostPoolName, + sessionHostConfiguration, + options, + ); + return poller.pollUntilDone(); + } + + /** + * Update a SessionHostConfiguration. + * @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 options parameters. + */ + async beginUpdate( + resourceGroupName: string, + hostPoolName: string, + options?: SessionHostConfigurationsUpdateOptionalParams, + ): Promise< + SimplePollerLike< + OperationState, + SessionHostConfigurationsUpdateResponse + > + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec, + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperationFn = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec, + ) => { + let currentRawResponse: coreClient.FullOperationResponse | undefined = + undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown, + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback, + }, + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON(), + }, + }; + }; + + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, hostPoolName, options }, + spec: updateOperationSpec, + }); + const poller = await createHttpPoller< + SessionHostConfigurationsUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "location", + }); + await poller.poll(); + return poller; + } + + /** + * Update a SessionHostConfiguration. + * @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 options parameters. + */ + async beginUpdateAndWait( + resourceGroupName: string, + hostPoolName: string, + options?: SessionHostConfigurationsUpdateOptionalParams, + ): Promise { + const poller = await this.beginUpdate( + resourceGroupName, + hostPoolName, + options, + ); + return poller.pollUntilDone(); + } + + /** + * ListByHostPoolNext + * @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 nextLink The nextLink from the previous successful call to the ListByHostPool method. + * @param options The options parameters. + */ + private _listByHostPoolNext( + resourceGroupName: string, + hostPoolName: string, + nextLink: string, + options?: SessionHostConfigurationsListByHostPoolNextOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, hostPoolName, nextLink, options }, + listByHostPoolNextOperationSpec, + ); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const listByHostPoolOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHostConfigurations", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.SessionHostConfigurationList, + }, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + ], + headerParameters: [Parameters.accept], + serializer, +}; +const getOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHostConfigurations/default", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.SessionHostConfiguration, + }, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + ], + headerParameters: [Parameters.accept], + serializer, +}; +const createOrUpdateOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHostConfigurations/default", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.SessionHostConfiguration, + }, + 201: { + bodyMapper: Mappers.SessionHostConfiguration, + }, + 202: { + bodyMapper: Mappers.SessionHostConfiguration, + }, + 204: { + bodyMapper: Mappers.SessionHostConfiguration, + }, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + requestBody: Parameters.sessionHostConfiguration, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer, +}; +const updateOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHostConfigurations/default", + httpMethod: "PATCH", + responses: { + 200: { + bodyMapper: Mappers.SessionHostConfiguration, + }, + 201: { + bodyMapper: Mappers.SessionHostConfiguration, + }, + 202: { + bodyMapper: Mappers.SessionHostConfiguration, + }, + 204: { + bodyMapper: Mappers.SessionHostConfiguration, + }, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + requestBody: Parameters.sessionHostConfiguration1, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer, +}; +const listByHostPoolNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.SessionHostConfigurationList, + }, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + urlParameters: [ + Parameters.$host, + Parameters.nextLink, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + ], + headerParameters: [Parameters.accept], + serializer, +}; diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/sessionHostManagements.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/sessionHostManagements.ts new file mode 100644 index 000000000000..d5e1a6b7d13f --- /dev/null +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/sessionHostManagements.ts @@ -0,0 +1,330 @@ +/* + * 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 { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; +import { setContinuationToken } from "../pagingHelper.js"; +import { SessionHostManagements } from "../operationsInterfaces/index.js"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers.js"; +import * as Parameters from "../models/parameters.js"; +import { DesktopVirtualizationAPIClient } from "../desktopVirtualizationAPIClient.js"; +import { + SessionHostManagement, + SessionHostManagementsListByHostPoolNextOptionalParams, + SessionHostManagementsListByHostPoolOptionalParams, + SessionHostManagementsListByHostPoolResponse, + SessionHostManagementsGetOptionalParams, + SessionHostManagementsGetResponse, + SessionHostManagementsCreateOrUpdateOptionalParams, + SessionHostManagementsCreateOrUpdateResponse, + SessionHostManagementsUpdateOptionalParams, + SessionHostManagementsUpdateResponse, + SessionHostManagementsListByHostPoolNextResponse, +} from "../models/index.js"; + +/// +/** Class containing SessionHostManagements operations. */ +export class SessionHostManagementsImpl implements SessionHostManagements { + private readonly client: DesktopVirtualizationAPIClient; + + /** + * Initialize a new instance of the class SessionHostManagements class. + * @param client Reference to the service client + */ + constructor(client: DesktopVirtualizationAPIClient) { + this.client = client; + } + + /** + * List SessionHostManagements. + * @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 options parameters. + */ + public listByHostPool( + resourceGroupName: string, + hostPoolName: string, + options?: SessionHostManagementsListByHostPoolOptionalParams, + ): PagedAsyncIterableIterator { + const iter = this.listByHostPoolPagingAll( + resourceGroupName, + hostPoolName, + options, + ); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: (settings?: PageSettings) => { + if (settings?.maxPageSize) { + throw new Error("maxPageSize is not supported by this operation."); + } + return this.listByHostPoolPagingPage( + resourceGroupName, + hostPoolName, + options, + settings, + ); + }, + }; + } + + private async *listByHostPoolPagingPage( + resourceGroupName: string, + hostPoolName: string, + options?: SessionHostManagementsListByHostPoolOptionalParams, + settings?: PageSettings, + ): AsyncIterableIterator { + let result: SessionHostManagementsListByHostPoolResponse; + let continuationToken = settings?.continuationToken; + if (!continuationToken) { + result = await this._listByHostPool( + resourceGroupName, + hostPoolName, + options, + ); + let page = result.value || []; + continuationToken = result.nextLink; + setContinuationToken(page, continuationToken); + yield page; + } + while (continuationToken) { + result = await this._listByHostPoolNext( + resourceGroupName, + hostPoolName, + continuationToken, + options, + ); + continuationToken = result.nextLink; + let page = result.value || []; + setContinuationToken(page, continuationToken); + yield page; + } + } + + private async *listByHostPoolPagingAll( + resourceGroupName: string, + hostPoolName: string, + options?: SessionHostManagementsListByHostPoolOptionalParams, + ): AsyncIterableIterator { + for await (const page of this.listByHostPoolPagingPage( + resourceGroupName, + hostPoolName, + options, + )) { + yield* page; + } + } + + /** + * List SessionHostManagements. + * @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 options parameters. + */ + private _listByHostPool( + resourceGroupName: string, + hostPoolName: string, + options?: SessionHostManagementsListByHostPoolOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, hostPoolName, options }, + listByHostPoolOperationSpec, + ); + } + + /** + * Get a SessionHostManagement. + * @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 options parameters. + */ + get( + resourceGroupName: string, + hostPoolName: string, + options?: SessionHostManagementsGetOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, hostPoolName, options }, + getOperationSpec, + ); + } + + /** + * Create or update a SessionHostManagement. + * @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 sessionHostManagement Resource create parameters. + * @param options The options parameters. + */ + createOrUpdate( + resourceGroupName: string, + hostPoolName: string, + sessionHostManagement: SessionHostManagement, + options?: SessionHostManagementsCreateOrUpdateOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, hostPoolName, sessionHostManagement, options }, + createOrUpdateOperationSpec, + ); + } + + /** + * Update a SessionHostManagement. + * @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 options parameters. + */ + update( + resourceGroupName: string, + hostPoolName: string, + options?: SessionHostManagementsUpdateOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, hostPoolName, options }, + updateOperationSpec, + ); + } + + /** + * ListByHostPoolNext + * @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 nextLink The nextLink from the previous successful call to the ListByHostPool method. + * @param options The options parameters. + */ + private _listByHostPoolNext( + resourceGroupName: string, + hostPoolName: string, + nextLink: string, + options?: SessionHostManagementsListByHostPoolNextOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, hostPoolName, nextLink, options }, + listByHostPoolNextOperationSpec, + ); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const listByHostPoolOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHostManagements", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.SessionHostManagementList, + }, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + ], + headerParameters: [Parameters.accept], + serializer, +}; +const getOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHostManagements/default", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.SessionHostManagement, + }, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + ], + headerParameters: [Parameters.accept], + serializer, +}; +const createOrUpdateOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHostManagements/default", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.SessionHostManagement, + }, + 201: { + bodyMapper: Mappers.SessionHostManagement, + }, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + requestBody: Parameters.sessionHostManagement, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer, +}; +const updateOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHostManagements/default", + httpMethod: "PATCH", + responses: { + 200: { + bodyMapper: Mappers.SessionHostManagement, + }, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + requestBody: Parameters.sessionHostManagement1, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer, +}; +const listByHostPoolNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.SessionHostManagementList, + }, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + urlParameters: [ + Parameters.$host, + Parameters.nextLink, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + ], + headerParameters: [Parameters.accept], + serializer, +}; diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/sessionHostManagementsUpdateStatus.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/sessionHostManagementsUpdateStatus.ts new file mode 100644 index 000000000000..16e9c9c8b64a --- /dev/null +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/sessionHostManagementsUpdateStatus.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 { SessionHostManagementsUpdateStatus } from "../operationsInterfaces/index.js"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers.js"; +import * as Parameters from "../models/parameters.js"; +import { DesktopVirtualizationAPIClient } from "../desktopVirtualizationAPIClient.js"; +import { + SessionHostManagementsUpdateStatusGetOptionalParams, + SessionHostManagementsUpdateStatusGetResponse, +} from "../models/index.js"; + +/** Class containing SessionHostManagementsUpdateStatus operations. */ +export class SessionHostManagementsUpdateStatusImpl + implements SessionHostManagementsUpdateStatus +{ + private readonly client: DesktopVirtualizationAPIClient; + + /** + * Initialize a new instance of the class SessionHostManagementsUpdateStatus class. + * @param client Reference to the service client + */ + constructor(client: DesktopVirtualizationAPIClient) { + this.client = client; + } + + /** + * Get a SessionHostManagementUpdateStatus. + * @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 options parameters. + */ + get( + resourceGroupName: string, + hostPoolName: string, + options?: SessionHostManagementsUpdateStatusGetOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, hostPoolName, options }, + getOperationSpec, + ); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const getOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHostManagements/default/sessionHostUpdateStatuses/default", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.SessionHostManagementUpdateStatus, + }, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + ], + headerParameters: [Parameters.accept], + serializer, +}; diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/sessionHosts.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/sessionHosts.ts index fa6bc26f0fd3..3e6b6c99466a 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/sessionHosts.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/sessionHosts.ts @@ -20,9 +20,10 @@ import { SessionHostsListResponse, SessionHostsGetOptionalParams, SessionHostsGetResponse, - SessionHostsDeleteOptionalParams, SessionHostsUpdateOptionalParams, SessionHostsUpdateResponse, + SessionHostsDeleteOptionalParams, + SessionHostsRetryProvisioningOptionalParams, SessionHostsListNextResponse, } from "../models/index.js"; @@ -115,6 +116,23 @@ export class SessionHostsImpl implements SessionHosts { } } + /** + * 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 options parameters. + */ + private _list( + resourceGroupName: string, + hostPoolName: string, + options?: SessionHostsListOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, hostPoolName, options }, + listOperationSpec, + ); + } + /** * Get a session host. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -135,57 +153,59 @@ export class SessionHostsImpl implements SessionHosts { } /** - * Remove a SessionHost. + * 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 options parameters. */ - delete( + update( resourceGroupName: string, hostPoolName: string, sessionHostName: string, - options?: SessionHostsDeleteOptionalParams, - ): Promise { + options?: SessionHostsUpdateOptionalParams, + ): Promise { return this.client.sendOperationRequest( { resourceGroupName, hostPoolName, sessionHostName, options }, - deleteOperationSpec, + updateOperationSpec, ); } /** - * Update a session host. + * 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 options parameters. */ - update( + delete( resourceGroupName: string, hostPoolName: string, sessionHostName: string, - options?: SessionHostsUpdateOptionalParams, - ): Promise { + options?: SessionHostsDeleteOptionalParams, + ): Promise { return this.client.sendOperationRequest( { resourceGroupName, hostPoolName, sessionHostName, options }, - updateOperationSpec, + deleteOperationSpec, ); } /** - * List sessionHosts. + * A synchronous resource action that returns no content. * @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 options parameters. */ - private _list( + retryProvisioning( resourceGroupName: string, hostPoolName: string, - options?: SessionHostsListOptionalParams, - ): Promise { + sessionHostName: string, + options?: SessionHostsRetryProvisioningOptionalParams, + ): Promise { return this.client.sendOperationRequest( - { resourceGroupName, hostPoolName, options }, - listOperationSpec, + { resourceGroupName, hostPoolName, sessionHostName, options }, + retryProvisioningOperationSpec, ); } @@ -211,39 +231,45 @@ export class SessionHostsImpl implements SessionHosts { // Operation Specifications const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); -const getOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}", +const listOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts", httpMethod: "GET", responses: { 200: { - bodyMapper: Mappers.SessionHost, + bodyMapper: Mappers.SessionHostList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - queryParameters: [Parameters.apiVersion], + queryParameters: [ + Parameters.apiVersion, + Parameters.pageSize, + Parameters.isDescending, + Parameters.initialSkip, + Parameters.vmPath, + ], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, Parameters.hostPoolName, - Parameters.sessionHostName, ], headerParameters: [Parameters.accept], serializer, }; -const deleteOperationSpec: coreClient.OperationSpec = { +const getOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}", - httpMethod: "DELETE", + httpMethod: "GET", responses: { - 200: {}, - 204: {}, + 200: { + bodyMapper: Mappers.SessionHost, + }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - queryParameters: [Parameters.apiVersion, Parameters.force], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, @@ -262,7 +288,7 @@ const updateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.SessionHost, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, requestBody: Parameters.sessionHost, @@ -278,28 +304,43 @@ const updateOperationSpec: coreClient.OperationSpec = { mediaType: "json", serializer, }; -const listOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts", - httpMethod: "GET", +const deleteOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}", + httpMethod: "DELETE", responses: { - 200: { - bodyMapper: Mappers.SessionHostList, - }, + 200: {}, + 204: {}, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - queryParameters: [ - Parameters.apiVersion, - Parameters.pageSize, - Parameters.isDescending, - Parameters.initialSkip, + queryParameters: [Parameters.apiVersion, Parameters.force], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.hostPoolName, + Parameters.sessionHostName, ], + headerParameters: [Parameters.accept], + serializer, +}; +const retryProvisioningOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/retryProvisioning", + httpMethod: "POST", + responses: { + 204: {}, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, Parameters.hostPoolName, + Parameters.sessionHostName, ], headerParameters: [Parameters.accept], serializer, @@ -312,7 +353,7 @@ const listNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.SessionHostList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, urlParameters: [ diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/startMenuItems.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/startMenuItems.ts index 48ca4a86e649..ddab07a80d49 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/startMenuItems.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/startMenuItems.ts @@ -165,7 +165,7 @@ const listOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.StartMenuItemList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, queryParameters: [ @@ -191,7 +191,7 @@ const listNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.StartMenuItemList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, urlParameters: [ diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/userSessions.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/userSessions.ts index 252bb4216c64..f75ec2c58403 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/userSessions.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/userSessions.ts @@ -15,19 +15,19 @@ import * as Parameters from "../models/parameters.js"; import { DesktopVirtualizationAPIClient } from "../desktopVirtualizationAPIClient.js"; import { UserSession, - UserSessionsListByHostPoolNextOptionalParams, - UserSessionsListByHostPoolOptionalParams, - UserSessionsListByHostPoolResponse, UserSessionsListNextOptionalParams, UserSessionsListOptionalParams, UserSessionsListResponse, + UserSessionsListByHostPoolNextOptionalParams, + UserSessionsListByHostPoolOptionalParams, + UserSessionsListByHostPoolResponse, UserSessionsGetOptionalParams, UserSessionsGetResponse, UserSessionsDeleteOptionalParams, UserSessionsDisconnectOptionalParams, UserSessionsSendMessageOptionalParams, - UserSessionsListByHostPoolNextResponse, UserSessionsListNextResponse, + UserSessionsListByHostPoolNextResponse, } from "../models/index.js"; /// @@ -47,16 +47,19 @@ export class UserSessionsImpl implements UserSessions { * 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 options parameters. */ - public listByHostPool( + public list( resourceGroupName: string, hostPoolName: string, - options?: UserSessionsListByHostPoolOptionalParams, + sessionHostName: string, + options?: UserSessionsListOptionalParams, ): PagedAsyncIterableIterator { - const iter = this.listByHostPoolPagingAll( + const iter = this.listPagingAll( resourceGroupName, hostPoolName, + sessionHostName, options, ); return { @@ -70,9 +73,10 @@ export class UserSessionsImpl implements UserSessions { if (settings?.maxPageSize) { throw new Error("maxPageSize is not supported by this operation."); } - return this.listByHostPoolPagingPage( + return this.listPagingPage( resourceGroupName, hostPoolName, + sessionHostName, options, settings, ); @@ -80,18 +84,20 @@ export class UserSessionsImpl implements UserSessions { }; } - private async *listByHostPoolPagingPage( + private async *listPagingPage( resourceGroupName: string, hostPoolName: string, - options?: UserSessionsListByHostPoolOptionalParams, + sessionHostName: string, + options?: UserSessionsListOptionalParams, settings?: PageSettings, ): AsyncIterableIterator { - let result: UserSessionsListByHostPoolResponse; + let result: UserSessionsListResponse; let continuationToken = settings?.continuationToken; if (!continuationToken) { - result = await this._listByHostPool( + result = await this._list( resourceGroupName, hostPoolName, + sessionHostName, options, ); let page = result.value || []; @@ -100,9 +106,10 @@ export class UserSessionsImpl implements UserSessions { yield page; } while (continuationToken) { - result = await this._listByHostPoolNext( + result = await this._listNext( resourceGroupName, hostPoolName, + sessionHostName, continuationToken, options, ); @@ -113,14 +120,16 @@ export class UserSessionsImpl implements UserSessions { } } - private async *listByHostPoolPagingAll( + private async *listPagingAll( resourceGroupName: string, hostPoolName: string, - options?: UserSessionsListByHostPoolOptionalParams, + sessionHostName: string, + options?: UserSessionsListOptionalParams, ): AsyncIterableIterator { - for await (const page of this.listByHostPoolPagingPage( + for await (const page of this.listPagingPage( resourceGroupName, hostPoolName, + sessionHostName, options, )) { yield* page; @@ -128,22 +137,19 @@ export class UserSessionsImpl implements UserSessions { } /** - * List userSessions. + * A synchronous resource action. * @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 options parameters. */ - public list( + public listByHostPool( resourceGroupName: string, hostPoolName: string, - sessionHostName: string, - options?: UserSessionsListOptionalParams, + options?: UserSessionsListByHostPoolOptionalParams, ): PagedAsyncIterableIterator { - const iter = this.listPagingAll( + const iter = this.listByHostPoolPagingAll( resourceGroupName, hostPoolName, - sessionHostName, options, ); return { @@ -157,10 +163,9 @@ export class UserSessionsImpl implements UserSessions { if (settings?.maxPageSize) { throw new Error("maxPageSize is not supported by this operation."); } - return this.listPagingPage( + return this.listByHostPoolPagingPage( resourceGroupName, hostPoolName, - sessionHostName, options, settings, ); @@ -168,20 +173,18 @@ export class UserSessionsImpl implements UserSessions { }; } - private async *listPagingPage( + private async *listByHostPoolPagingPage( resourceGroupName: string, hostPoolName: string, - sessionHostName: string, - options?: UserSessionsListOptionalParams, + options?: UserSessionsListByHostPoolOptionalParams, settings?: PageSettings, ): AsyncIterableIterator { - let result: UserSessionsListResponse; + let result: UserSessionsListByHostPoolResponse; let continuationToken = settings?.continuationToken; if (!continuationToken) { - result = await this._list( + result = await this._listByHostPool( resourceGroupName, hostPoolName, - sessionHostName, options, ); let page = result.value || []; @@ -190,10 +193,9 @@ export class UserSessionsImpl implements UserSessions { yield page; } while (continuationToken) { - result = await this._listNext( + result = await this._listByHostPoolNext( resourceGroupName, hostPoolName, - sessionHostName, continuationToken, options, ); @@ -204,16 +206,14 @@ export class UserSessionsImpl implements UserSessions { } } - private async *listPagingAll( + private async *listByHostPoolPagingAll( resourceGroupName: string, hostPoolName: string, - sessionHostName: string, - options?: UserSessionsListOptionalParams, + options?: UserSessionsListByHostPoolOptionalParams, ): AsyncIterableIterator { - for await (const page of this.listPagingPage( + for await (const page of this.listByHostPoolPagingPage( resourceGroupName, hostPoolName, - sessionHostName, options, )) { yield* page; @@ -224,16 +224,18 @@ export class UserSessionsImpl implements UserSessions { * 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 options parameters. */ - private _listByHostPool( + private _list( resourceGroupName: string, hostPoolName: string, - options?: UserSessionsListByHostPoolOptionalParams, - ): Promise { + sessionHostName: string, + options?: UserSessionsListOptionalParams, + ): Promise { return this.client.sendOperationRequest( - { resourceGroupName, hostPoolName, options }, - listByHostPoolOperationSpec, + { resourceGroupName, hostPoolName, sessionHostName, options }, + listOperationSpec, ); } @@ -291,25 +293,6 @@ export class UserSessionsImpl implements UserSessions { ); } - /** - * 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 options parameters. - */ - private _list( - resourceGroupName: string, - hostPoolName: string, - sessionHostName: string, - options?: UserSessionsListOptionalParams, - ): Promise { - return this.client.sendOperationRequest( - { resourceGroupName, hostPoolName, sessionHostName, options }, - listOperationSpec, - ); - } - /** * Disconnect a userSession. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -365,21 +348,19 @@ export class UserSessionsImpl implements UserSessions { } /** - * ListByHostPoolNext + * A synchronous resource action. * @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 nextLink The nextLink from the previous successful call to the ListByHostPool method. * @param options The options parameters. */ - private _listByHostPoolNext( + private _listByHostPool( resourceGroupName: string, hostPoolName: string, - nextLink: string, - options?: UserSessionsListByHostPoolNextOptionalParams, - ): Promise { + options?: UserSessionsListByHostPoolOptionalParams, + ): Promise { return this.client.sendOperationRequest( - { resourceGroupName, hostPoolName, nextLink, options }, - listByHostPoolNextOperationSpec, + { resourceGroupName, hostPoolName, options }, + listByHostPoolOperationSpec, ); } @@ -403,19 +384,38 @@ export class UserSessionsImpl implements UserSessions { listNextOperationSpec, ); } + + /** + * ListByHostPoolNext + * @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 nextLink The nextLink from the previous successful call to the ListByHostPool method. + * @param options The options parameters. + */ + private _listByHostPoolNext( + resourceGroupName: string, + hostPoolName: string, + nextLink: string, + options?: UserSessionsListByHostPoolNextOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, hostPoolName, nextLink, options }, + listByHostPoolNextOperationSpec, + ); + } } // Operation Specifications const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); -const listByHostPoolOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/userSessions", +const listOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions", httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.UserSessionList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, queryParameters: [ @@ -423,13 +423,13 @@ const listByHostPoolOperationSpec: coreClient.OperationSpec = { Parameters.pageSize, Parameters.isDescending, Parameters.initialSkip, - Parameters.filter, ], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, Parameters.hostPoolName, + Parameters.sessionHostName, ], headerParameters: [Parameters.accept], serializer, @@ -442,7 +442,7 @@ const getOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.UserSession, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, queryParameters: [Parameters.apiVersion], @@ -464,7 +464,7 @@ const deleteOperationSpec: coreClient.OperationSpec = { 200: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, queryParameters: [Parameters.apiVersion, Parameters.force], @@ -479,42 +479,37 @@ const deleteOperationSpec: coreClient.OperationSpec = { headerParameters: [Parameters.accept], serializer, }; -const listOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions", - httpMethod: "GET", +const disconnectOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions/{userSessionId}/disconnect", + httpMethod: "POST", responses: { - 200: { - bodyMapper: Mappers.UserSessionList, - }, + 200: {}, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - queryParameters: [ - Parameters.apiVersion, - Parameters.pageSize, - Parameters.isDescending, - Parameters.initialSkip, - ], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, Parameters.hostPoolName, Parameters.sessionHostName, + Parameters.userSessionId, ], headerParameters: [Parameters.accept], serializer, }; -const disconnectOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions/{userSessionId}/disconnect", +const sendMessageOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions/{userSessionId}/sendMessage", httpMethod: "POST", responses: { 200: {}, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, + requestBody: Parameters.sendMessage, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -524,33 +519,38 @@ const disconnectOperationSpec: coreClient.OperationSpec = { Parameters.sessionHostName, Parameters.userSessionId, ], - headerParameters: [Parameters.accept], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", serializer, }; -const sendMessageOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions/{userSessionId}/sendMessage", - httpMethod: "POST", +const listByHostPoolOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/userSessions", + httpMethod: "GET", responses: { - 200: {}, + 200: { + bodyMapper: Mappers.UserSessionList, + }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - requestBody: Parameters.sendMessage, - queryParameters: [Parameters.apiVersion], + queryParameters: [ + Parameters.apiVersion, + Parameters.filter, + Parameters.pageSize, + Parameters.isDescending, + Parameters.initialSkip, + ], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, Parameters.hostPoolName, - Parameters.sessionHostName, - Parameters.userSessionId, ], - headerParameters: [Parameters.accept, Parameters.contentType], - mediaType: "json", + headerParameters: [Parameters.accept], serializer, }; -const listByHostPoolNextOperationSpec: coreClient.OperationSpec = { +const listNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", httpMethod: "GET", responses: { @@ -558,7 +558,7 @@ const listByHostPoolNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.UserSessionList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, urlParameters: [ @@ -567,11 +567,12 @@ const listByHostPoolNextOperationSpec: coreClient.OperationSpec = { Parameters.subscriptionId, Parameters.resourceGroupName, Parameters.hostPoolName, + Parameters.sessionHostName, ], headerParameters: [Parameters.accept], serializer, }; -const listNextOperationSpec: coreClient.OperationSpec = { +const listByHostPoolNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", httpMethod: "GET", responses: { @@ -579,7 +580,7 @@ const listNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.UserSessionList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, urlParameters: [ @@ -588,7 +589,6 @@ const listNextOperationSpec: coreClient.OperationSpec = { Parameters.subscriptionId, Parameters.resourceGroupName, Parameters.hostPoolName, - Parameters.sessionHostName, ], headerParameters: [Parameters.accept], serializer, diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/workspaces.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/workspaces.ts index c3bb8f05034e..b09683f78f93 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/workspaces.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operations/workspaces.ts @@ -15,21 +15,21 @@ import * as Parameters from "../models/parameters.js"; import { DesktopVirtualizationAPIClient } from "../desktopVirtualizationAPIClient.js"; import { Workspace, - WorkspacesListByResourceGroupNextOptionalParams, - WorkspacesListByResourceGroupOptionalParams, - WorkspacesListByResourceGroupResponse, WorkspacesListBySubscriptionNextOptionalParams, WorkspacesListBySubscriptionOptionalParams, WorkspacesListBySubscriptionResponse, + WorkspacesListByResourceGroupNextOptionalParams, + WorkspacesListByResourceGroupOptionalParams, + WorkspacesListByResourceGroupResponse, WorkspacesGetOptionalParams, WorkspacesGetResponse, WorkspacesCreateOrUpdateOptionalParams, WorkspacesCreateOrUpdateResponse, - WorkspacesDeleteOptionalParams, WorkspacesUpdateOptionalParams, WorkspacesUpdateResponse, - WorkspacesListByResourceGroupNextResponse, + WorkspacesDeleteOptionalParams, WorkspacesListBySubscriptionNextResponse, + WorkspacesListByResourceGroupNextResponse, } from "../models/index.js"; /// @@ -46,15 +46,13 @@ export class WorkspacesImpl implements Workspaces { } /** - * List workspaces. - * @param resourceGroupName The name of the resource group. The name is case insensitive. + * List workspaces in subscription. * @param options The options parameters. */ - public listByResourceGroup( - resourceGroupName: string, - options?: WorkspacesListByResourceGroupOptionalParams, + public listBySubscription( + options?: WorkspacesListBySubscriptionOptionalParams, ): PagedAsyncIterableIterator { - const iter = this.listByResourceGroupPagingAll(resourceGroupName, options); + const iter = this.listBySubscriptionPagingAll(options); return { next() { return iter.next(); @@ -66,35 +64,26 @@ export class WorkspacesImpl implements Workspaces { if (settings?.maxPageSize) { throw new Error("maxPageSize is not supported by this operation."); } - return this.listByResourceGroupPagingPage( - resourceGroupName, - options, - settings, - ); + return this.listBySubscriptionPagingPage(options, settings); }, }; } - private async *listByResourceGroupPagingPage( - resourceGroupName: string, - options?: WorkspacesListByResourceGroupOptionalParams, + private async *listBySubscriptionPagingPage( + options?: WorkspacesListBySubscriptionOptionalParams, settings?: PageSettings, ): AsyncIterableIterator { - let result: WorkspacesListByResourceGroupResponse; + let result: WorkspacesListBySubscriptionResponse; let continuationToken = settings?.continuationToken; if (!continuationToken) { - result = await this._listByResourceGroup(resourceGroupName, options); + result = await this._listBySubscription(options); let page = result.value || []; continuationToken = result.nextLink; setContinuationToken(page, continuationToken); yield page; } while (continuationToken) { - result = await this._listByResourceGroupNext( - resourceGroupName, - continuationToken, - options, - ); + result = await this._listBySubscriptionNext(continuationToken, options); continuationToken = result.nextLink; let page = result.value || []; setContinuationToken(page, continuationToken); @@ -102,26 +91,24 @@ export class WorkspacesImpl implements Workspaces { } } - private async *listByResourceGroupPagingAll( - resourceGroupName: string, - options?: WorkspacesListByResourceGroupOptionalParams, + private async *listBySubscriptionPagingAll( + options?: WorkspacesListBySubscriptionOptionalParams, ): AsyncIterableIterator { - for await (const page of this.listByResourceGroupPagingPage( - resourceGroupName, - options, - )) { + for await (const page of this.listBySubscriptionPagingPage(options)) { yield* page; } } /** - * List workspaces in subscription. + * List workspaces. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param options The options parameters. */ - public listBySubscription( - options?: WorkspacesListBySubscriptionOptionalParams, + public listByResourceGroup( + resourceGroupName: string, + options?: WorkspacesListByResourceGroupOptionalParams, ): PagedAsyncIterableIterator { - const iter = this.listBySubscriptionPagingAll(options); + const iter = this.listByResourceGroupPagingAll(resourceGroupName, options); return { next() { return iter.next(); @@ -133,26 +120,35 @@ export class WorkspacesImpl implements Workspaces { if (settings?.maxPageSize) { throw new Error("maxPageSize is not supported by this operation."); } - return this.listBySubscriptionPagingPage(options, settings); + return this.listByResourceGroupPagingPage( + resourceGroupName, + options, + settings, + ); }, }; } - private async *listBySubscriptionPagingPage( - options?: WorkspacesListBySubscriptionOptionalParams, + private async *listByResourceGroupPagingPage( + resourceGroupName: string, + options?: WorkspacesListByResourceGroupOptionalParams, settings?: PageSettings, ): AsyncIterableIterator { - let result: WorkspacesListBySubscriptionResponse; + let result: WorkspacesListByResourceGroupResponse; let continuationToken = settings?.continuationToken; if (!continuationToken) { - result = await this._listBySubscription(options); + result = await this._listByResourceGroup(resourceGroupName, options); let page = result.value || []; continuationToken = result.nextLink; setContinuationToken(page, continuationToken); yield page; } while (continuationToken) { - result = await this._listBySubscriptionNext(continuationToken, options); + result = await this._listByResourceGroupNext( + resourceGroupName, + continuationToken, + options, + ); continuationToken = result.nextLink; let page = result.value || []; setContinuationToken(page, continuationToken); @@ -160,14 +156,46 @@ export class WorkspacesImpl implements Workspaces { } } - private async *listBySubscriptionPagingAll( - options?: WorkspacesListBySubscriptionOptionalParams, + private async *listByResourceGroupPagingAll( + resourceGroupName: string, + options?: WorkspacesListByResourceGroupOptionalParams, ): AsyncIterableIterator { - for await (const page of this.listBySubscriptionPagingPage(options)) { + for await (const page of this.listByResourceGroupPagingPage( + resourceGroupName, + options, + )) { yield* page; } } + /** + * List workspaces in subscription. + * @param options The options parameters. + */ + private _listBySubscription( + options?: WorkspacesListBySubscriptionOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { options }, + listBySubscriptionOperationSpec, + ); + } + + /** + * List workspaces. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param options The options parameters. + */ + private _listByResourceGroup( + resourceGroupName: string, + options?: WorkspacesListByResourceGroupOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, options }, + listByResourceGroupOperationSpec, + ); + } + /** * Get a workspace. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -204,23 +232,6 @@ export class WorkspacesImpl implements Workspaces { ); } - /** - * 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 options parameters. - */ - delete( - resourceGroupName: string, - workspaceName: string, - options?: WorkspacesDeleteOptionalParams, - ): Promise { - return this.client.sendOperationRequest( - { resourceGroupName, workspaceName, options }, - deleteOperationSpec, - ); - } - /** * Update a workspace. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -239,30 +250,34 @@ export class WorkspacesImpl implements Workspaces { } /** - * List workspaces. + * 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 options parameters. */ - private _listByResourceGroup( + delete( resourceGroupName: string, - options?: WorkspacesListByResourceGroupOptionalParams, - ): Promise { + workspaceName: string, + options?: WorkspacesDeleteOptionalParams, + ): Promise { return this.client.sendOperationRequest( - { resourceGroupName, options }, - listByResourceGroupOperationSpec, + { resourceGroupName, workspaceName, options }, + deleteOperationSpec, ); } /** - * List workspaces in subscription. + * ListBySubscriptionNext + * @param nextLink The nextLink from the previous successful call to the ListBySubscription method. * @param options The options parameters. */ - private _listBySubscription( - options?: WorkspacesListBySubscriptionOptionalParams, - ): Promise { + private _listBySubscriptionNext( + nextLink: string, + options?: WorkspacesListBySubscriptionNextOptionalParams, + ): Promise { return this.client.sendOperationRequest( - { options }, - listBySubscriptionOperationSpec, + { nextLink, options }, + listBySubscriptionNextOperationSpec, ); } @@ -282,61 +297,62 @@ export class WorkspacesImpl implements Workspaces { listByResourceGroupNextOperationSpec, ); } - - /** - * ListBySubscriptionNext - * @param nextLink The nextLink from the previous successful call to the ListBySubscription method. - * @param options The options parameters. - */ - private _listBySubscriptionNext( - nextLink: string, - options?: WorkspacesListBySubscriptionNextOptionalParams, - ): Promise { - return this.client.sendOperationRequest( - { nextLink, options }, - listBySubscriptionNextOperationSpec, - ); - } } // Operation Specifications const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); -const getOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}", +const listBySubscriptionOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/workspaces", httpMethod: "GET", responses: { 200: { - bodyMapper: Mappers.Workspace, + bodyMapper: Mappers.WorkspaceList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, queryParameters: [Parameters.apiVersion], + urlParameters: [Parameters.$host, Parameters.subscriptionId], + headerParameters: [Parameters.accept], + serializer, +}; +const listByResourceGroupOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.WorkspaceList, + }, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + queryParameters: [ + Parameters.apiVersion, + Parameters.pageSize, + Parameters.isDescending, + Parameters.initialSkip, + ], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, - Parameters.workspaceName, ], headerParameters: [Parameters.accept], serializer, }; -const createOrUpdateOperationSpec: coreClient.OperationSpec = { +const getOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}", - httpMethod: "PUT", + httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.Workspace, }, - 201: { - bodyMapper: Mappers.Workspace, - }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - requestBody: Parameters.workspace, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -344,20 +360,24 @@ const createOrUpdateOperationSpec: coreClient.OperationSpec = { Parameters.resourceGroupName, Parameters.workspaceName, ], - headerParameters: [Parameters.accept, Parameters.contentType], - mediaType: "json", + headerParameters: [Parameters.accept], serializer, }; -const deleteOperationSpec: coreClient.OperationSpec = { +const createOrUpdateOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}", - httpMethod: "DELETE", + httpMethod: "PUT", responses: { - 200: {}, - 204: {}, + 200: { + bodyMapper: Mappers.Workspace, + }, + 201: { + bodyMapper: Mappers.Workspace, + }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, + requestBody: Parameters.workspace, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -365,7 +385,8 @@ const deleteOperationSpec: coreClient.OperationSpec = { Parameters.resourceGroupName, Parameters.workspaceName, ], - headerParameters: [Parameters.accept], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", serializer, }; const updateOperationSpec: coreClient.OperationSpec = { @@ -376,7 +397,7 @@ const updateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.Workspace, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, requestBody: Parameters.workspace1, @@ -391,48 +412,27 @@ const updateOperationSpec: coreClient.OperationSpec = { mediaType: "json", serializer, }; -const listByResourceGroupOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces", - httpMethod: "GET", +const deleteOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}", + httpMethod: "DELETE", responses: { - 200: { - bodyMapper: Mappers.WorkspaceList, - }, + 200: {}, + 204: {}, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, - queryParameters: [ - Parameters.apiVersion, - Parameters.pageSize, - Parameters.isDescending, - Parameters.initialSkip, - ], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, + Parameters.workspaceName, ], headerParameters: [Parameters.accept], serializer, }; -const listBySubscriptionOperationSpec: coreClient.OperationSpec = { - path: "/subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/workspaces", - httpMethod: "GET", - responses: { - 200: { - bodyMapper: Mappers.WorkspaceList, - }, - default: { - bodyMapper: Mappers.CloudError, - }, - }, - queryParameters: [Parameters.apiVersion], - urlParameters: [Parameters.$host, Parameters.subscriptionId], - headerParameters: [Parameters.accept], - serializer, -}; -const listByResourceGroupNextOperationSpec: coreClient.OperationSpec = { +const listBySubscriptionNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", httpMethod: "GET", responses: { @@ -440,19 +440,18 @@ const listByResourceGroupNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.WorkspaceList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, urlParameters: [ Parameters.$host, Parameters.nextLink, Parameters.subscriptionId, - Parameters.resourceGroupName, ], headerParameters: [Parameters.accept], serializer, }; -const listBySubscriptionNextOperationSpec: coreClient.OperationSpec = { +const listByResourceGroupNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", httpMethod: "GET", responses: { @@ -460,13 +459,14 @@ const listBySubscriptionNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.WorkspaceList, }, default: { - bodyMapper: Mappers.CloudError, + bodyMapper: Mappers.ErrorResponse, }, }, urlParameters: [ Parameters.$host, Parameters.nextLink, Parameters.subscriptionId, + Parameters.resourceGroupName, ], headerParameters: [Parameters.accept], serializer, diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/activeSessionHostConfigurations.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/activeSessionHostConfigurations.ts new file mode 100644 index 000000000000..8330455632bc --- /dev/null +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/activeSessionHostConfigurations.ts @@ -0,0 +1,42 @@ +/* + * 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 { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { + ActiveSessionHostConfiguration, + ActiveSessionHostConfigurationsListByHostPoolOptionalParams, + ActiveSessionHostConfigurationsGetOptionalParams, + ActiveSessionHostConfigurationsGetResponse, +} from "../models/index.js"; + +/// +/** Interface representing a ActiveSessionHostConfigurations. */ +export interface ActiveSessionHostConfigurations { + /** + * Operation to list the ActiveSessionHostConfigurations associated with the 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 options parameters. + */ + listByHostPool( + resourceGroupName: string, + hostPoolName: string, + options?: ActiveSessionHostConfigurationsListByHostPoolOptionalParams, + ): PagedAsyncIterableIterator; + /** + * Get a ActiveSessionHostConfiguration. + * @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 options parameters. + */ + get( + resourceGroupName: string, + hostPoolName: string, + options?: ActiveSessionHostConfigurationsGetOptionalParams, + ): Promise; +} diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/appAttachPackageInfo.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/appAttachPackageInfo.ts index e85c9b8af96c..47bd08595737 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/appAttachPackageInfo.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/appAttachPackageInfo.ts @@ -20,7 +20,7 @@ export interface AppAttachPackageInfo { * Gets information from a package given the path to the 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 importPackageInfoRequest Object containing URI to package image and other optional properties + * @param importPackageInfoRequest Information to import app attach package * @param options The options parameters. */ listImport( diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/appAttachPackageOperations.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/appAttachPackageOperations.ts index c34370436a5b..e94279e1f6df 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/appAttachPackageOperations.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/appAttachPackageOperations.ts @@ -9,20 +9,27 @@ import { PagedAsyncIterableIterator } from "@azure/core-paging"; import { AppAttachPackage, - AppAttachPackageListByResourceGroupOptionalParams, AppAttachPackageListBySubscriptionOptionalParams, + AppAttachPackageListByResourceGroupOptionalParams, AppAttachPackageGetOptionalParams, AppAttachPackageGetResponse, AppAttachPackageCreateOrUpdateOptionalParams, AppAttachPackageCreateOrUpdateResponse, - AppAttachPackageDeleteOptionalParams, AppAttachPackageUpdateOptionalParams, AppAttachPackageUpdateResponse, + AppAttachPackageDeleteOptionalParams, } from "../models/index.js"; /// /** Interface representing a AppAttachPackageOperations. */ export interface AppAttachPackageOperations { + /** + * List App Attach packages in subscription. + * @param options The options parameters. + */ + listBySubscription( + options?: AppAttachPackageListBySubscriptionOptionalParams, + ): PagedAsyncIterableIterator; /** * List App Attach packages in resource group. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -32,13 +39,6 @@ export interface AppAttachPackageOperations { resourceGroupName: string, options?: AppAttachPackageListByResourceGroupOptionalParams, ): PagedAsyncIterableIterator; - /** - * List App Attach packages in subscription. - * @param options The options parameters. - */ - listBySubscription( - options?: AppAttachPackageListBySubscriptionOptionalParams, - ): PagedAsyncIterableIterator; /** * Get an app attach package. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -64,25 +64,25 @@ export interface AppAttachPackageOperations { options?: AppAttachPackageCreateOrUpdateOptionalParams, ): Promise; /** - * Remove an App Attach Package. + * Update an App Attach Package * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param appAttachPackageName The name of the App Attach package * @param options The options parameters. */ - delete( + update( resourceGroupName: string, appAttachPackageName: string, - options?: AppAttachPackageDeleteOptionalParams, - ): Promise; + options?: AppAttachPackageUpdateOptionalParams, + ): Promise; /** - * Update an App Attach Package + * Remove an App Attach Package. * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param appAttachPackageName The name of the App Attach package * @param options The options parameters. */ - update( + delete( resourceGroupName: string, appAttachPackageName: string, - options?: AppAttachPackageUpdateOptionalParams, - ): Promise; + options?: AppAttachPackageDeleteOptionalParams, + ): Promise; } diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/applicationGroups.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/applicationGroups.ts index 180e1e4baffc..958109da7374 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/applicationGroups.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/applicationGroups.ts @@ -9,20 +9,27 @@ import { PagedAsyncIterableIterator } from "@azure/core-paging"; import { ApplicationGroup, - ApplicationGroupsListByResourceGroupOptionalParams, ApplicationGroupsListBySubscriptionOptionalParams, + ApplicationGroupsListByResourceGroupOptionalParams, ApplicationGroupsGetOptionalParams, ApplicationGroupsGetResponse, ApplicationGroupsCreateOrUpdateOptionalParams, ApplicationGroupsCreateOrUpdateResponse, - ApplicationGroupsDeleteOptionalParams, ApplicationGroupsUpdateOptionalParams, ApplicationGroupsUpdateResponse, + ApplicationGroupsDeleteOptionalParams, } from "../models/index.js"; /// /** Interface representing a ApplicationGroups. */ export interface ApplicationGroups { + /** + * List applicationGroups in subscription. + * @param options The options parameters. + */ + listBySubscription( + options?: ApplicationGroupsListBySubscriptionOptionalParams, + ): PagedAsyncIterableIterator; /** * List applicationGroups. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -32,13 +39,6 @@ export interface ApplicationGroups { resourceGroupName: string, options?: ApplicationGroupsListByResourceGroupOptionalParams, ): PagedAsyncIterableIterator; - /** - * List applicationGroups in subscription. - * @param options The options parameters. - */ - listBySubscription( - options?: ApplicationGroupsListBySubscriptionOptionalParams, - ): PagedAsyncIterableIterator; /** * Get an application group. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -64,25 +64,25 @@ export interface ApplicationGroups { options?: ApplicationGroupsCreateOrUpdateOptionalParams, ): Promise; /** - * Remove an applicationGroup. + * 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 options parameters. */ - delete( + update( resourceGroupName: string, applicationGroupName: string, - options?: ApplicationGroupsDeleteOptionalParams, - ): Promise; + options?: ApplicationGroupsUpdateOptionalParams, + ): Promise; /** - * Update an applicationGroup. + * 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 options parameters. */ - update( + delete( resourceGroupName: string, applicationGroupName: string, - options?: ApplicationGroupsUpdateOptionalParams, - ): Promise; + options?: ApplicationGroupsDeleteOptionalParams, + ): Promise; } diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/applications.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/applications.ts index e1f548c80836..8a901926c1f3 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/applications.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/applications.ts @@ -14,9 +14,9 @@ import { ApplicationsGetResponse, ApplicationsCreateOrUpdateOptionalParams, ApplicationsCreateOrUpdateResponse, - ApplicationsDeleteOptionalParams, ApplicationsUpdateOptionalParams, ApplicationsUpdateResponse, + ApplicationsDeleteOptionalParams, } from "../models/index.js"; /// @@ -62,29 +62,29 @@ export interface Applications { options?: ApplicationsCreateOrUpdateOptionalParams, ): Promise; /** - * Remove an application. + * 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 options parameters. */ - delete( + update( resourceGroupName: string, applicationGroupName: string, applicationName: string, - options?: ApplicationsDeleteOptionalParams, - ): Promise; + options?: ApplicationsUpdateOptionalParams, + ): Promise; /** - * Update an application. + * 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 options parameters. */ - update( + delete( resourceGroupName: string, applicationGroupName: string, applicationName: string, - options?: ApplicationsUpdateOptionalParams, - ): Promise; + options?: ApplicationsDeleteOptionalParams, + ): Promise; } diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/controlSessionHostUpdate.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/controlSessionHostUpdate.ts new file mode 100644 index 000000000000..ce40ce195d58 --- /dev/null +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/controlSessionHostUpdate.ts @@ -0,0 +1,49 @@ +/* + * 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 { SimplePollerLike, OperationState } from "@azure/core-lro"; +import { + HostPoolUpdateControlParameter, + ControlSessionHostUpdatePostOptionalParams, + ControlSessionHostUpdatePostResponse, +} from "../models/index.js"; + +/** Interface representing a ControlSessionHostUpdate. */ +export interface ControlSessionHostUpdate { + /** + * Control actions on a session host update. + * @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 hostPoolUpdateControlParameter The content of the action request + * @param options The options parameters. + */ + beginPost( + resourceGroupName: string, + hostPoolName: string, + hostPoolUpdateControlParameter: HostPoolUpdateControlParameter, + options?: ControlSessionHostUpdatePostOptionalParams, + ): Promise< + SimplePollerLike< + OperationState, + ControlSessionHostUpdatePostResponse + > + >; + /** + * Control actions on a session host update. + * @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 hostPoolUpdateControlParameter The content of the action request + * @param options The options parameters. + */ + beginPostAndWait( + resourceGroupName: string, + hostPoolName: string, + hostPoolUpdateControlParameter: HostPoolUpdateControlParameter, + options?: ControlSessionHostUpdatePostOptionalParams, + ): Promise; +} diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/hostPools.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/hostPools.ts index 54ed9fcac881..855710fe6977 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/hostPools.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/hostPools.ts @@ -9,24 +9,31 @@ import { PagedAsyncIterableIterator } from "@azure/core-paging"; import { HostPool, - HostPoolsListByResourceGroupOptionalParams, HostPoolsListOptionalParams, + HostPoolsListByResourceGroupOptionalParams, HostPoolsGetOptionalParams, HostPoolsGetResponse, HostPoolsCreateOrUpdateOptionalParams, HostPoolsCreateOrUpdateResponse, - HostPoolsDeleteOptionalParams, HostPoolsUpdateOptionalParams, HostPoolsUpdateResponse, - HostPoolsRetrieveRegistrationTokenOptionalParams, - HostPoolsRetrieveRegistrationTokenResponse, + HostPoolsDeleteOptionalParams, HostPoolsListRegistrationTokensOptionalParams, HostPoolsListRegistrationTokensResponse, + HostPoolsRetrieveRegistrationTokenOptionalParams, + HostPoolsRetrieveRegistrationTokenResponse, } from "../models/index.js"; /// /** Interface representing a HostPools. */ export interface HostPools { + /** + * List hostPools in subscription. + * @param options The options parameters. + */ + list( + options?: HostPoolsListOptionalParams, + ): PagedAsyncIterableIterator; /** * List hostPools. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -36,13 +43,6 @@ export interface HostPools { resourceGroupName: string, options?: HostPoolsListByResourceGroupOptionalParams, ): PagedAsyncIterableIterator; - /** - * List hostPools in subscription. - * @param options The options parameters. - */ - list( - options?: HostPoolsListOptionalParams, - ): PagedAsyncIterableIterator; /** * Get a host pool. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -67,17 +67,6 @@ export interface HostPools { hostPool: HostPool, options?: HostPoolsCreateOrUpdateOptionalParams, ): 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 options parameters. - */ - delete( - resourceGroupName: string, - hostPoolName: string, - options?: HostPoolsDeleteOptionalParams, - ): Promise; /** * Update a host pool. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -90,16 +79,16 @@ export interface HostPools { options?: HostPoolsUpdateOptionalParams, ): Promise; /** - * Registration token of the host pool. + * 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 options parameters. */ - retrieveRegistrationToken( + delete( resourceGroupName: string, hostPoolName: string, - options?: HostPoolsRetrieveRegistrationTokenOptionalParams, - ): Promise; + options?: HostPoolsDeleteOptionalParams, + ): Promise; /** * Operation to list the RegistrationTokens associated with the HostPool * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -111,4 +100,15 @@ export interface HostPools { hostPoolName: string, options?: HostPoolsListRegistrationTokensOptionalParams, ): 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 options parameters. + */ + retrieveRegistrationToken( + resourceGroupName: string, + hostPoolName: string, + options?: HostPoolsRetrieveRegistrationTokenOptionalParams, + ): Promise; } diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/index.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/index.ts index 75b1da058c0a..ba346c0d37e7 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/index.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/index.ts @@ -7,20 +7,26 @@ */ export * from "./operations.js"; -export * from "./workspaces.js"; -export * from "./privateEndpointConnections.js"; -export * from "./privateLinkResources.js"; -export * from "./scalingPlans.js"; -export * from "./scalingPlanPooledSchedules.js"; -export * from "./scalingPlanPersonalSchedules.js"; +export * from "./appAttachPackageOperations.js"; export * from "./applicationGroups.js"; -export * from "./startMenuItems.js"; +export * from "./hostPools.js"; +export * from "./scalingPlans.js"; +export * from "./workspaces.js"; export * from "./applications.js"; export * from "./desktops.js"; -export * from "./hostPools.js"; -export * from "./userSessions.js"; -export * from "./sessionHosts.js"; -export * from "./msixPackages.js"; -export * from "./appAttachPackageInfo.js"; +export * from "./startMenuItems.js"; +export * from "./activeSessionHostConfigurations.js"; export * from "./msixImages.js"; -export * from "./appAttachPackageOperations.js"; +export * from "./appAttachPackageInfo.js"; +export * from "./msixPackages.js"; +export * from "./privateEndpointConnections.js"; +export * from "./privateLinkResources.js"; +export * from "./sessionHostConfigurations.js"; +export * from "./sessionHostManagements.js"; +export * from "./controlSessionHostUpdate.js"; +export * from "./initiateSessionHostUpdate.js"; +export * from "./sessionHostManagementsUpdateStatus.js"; +export * from "./sessionHosts.js"; +export * from "./userSessions.js"; +export * from "./scalingPlanPersonalSchedules.js"; +export * from "./scalingPlanPooledSchedules.js"; diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/initiateSessionHostUpdate.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/initiateSessionHostUpdate.ts new file mode 100644 index 000000000000..50a67ec1eff5 --- /dev/null +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/initiateSessionHostUpdate.ts @@ -0,0 +1,24 @@ +/* + * 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 { InitiateSessionHostUpdatePostOptionalParams } from "../models/index.js"; + +/** Interface representing a InitiateSessionHostUpdate. */ +export interface InitiateSessionHostUpdate { + /** + * Initiates a hostpool update or schedule an update for the future. + * @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 options parameters. + */ + post( + resourceGroupName: string, + hostPoolName: string, + options?: InitiateSessionHostUpdatePostOptionalParams, + ): Promise; +} diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/msixImages.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/msixImages.ts index 86ed576839e5..902f86593c01 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/msixImages.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/msixImages.ts @@ -18,9 +18,10 @@ import { export interface MsixImages { /** * Expands and Lists MSIX packages in an Image, given the Image Path. + * This action uses incorrect Msix casing intentionally to match the previous APIs. * @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 msixImageURI Object containing URI to MSIX Image + * @param msixImageURI Represents URI referring to MSIX Image * @param options The options parameters. */ listExpand( diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/msixPackages.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/msixPackages.ts index d852c14d9790..336625ae4a89 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/msixPackages.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/msixPackages.ts @@ -14,9 +14,10 @@ import { MsixPackagesGetResponse, MsixPackagesCreateOrUpdateOptionalParams, MsixPackagesCreateOrUpdateResponse, - MsixPackagesDeleteOptionalParams, + MsixPackagePatch, MsixPackagesUpdateOptionalParams, MsixPackagesUpdateResponse, + MsixPackagesDeleteOptionalParams, } from "../models/index.js"; /// @@ -64,31 +65,33 @@ export interface MsixPackages { options?: MsixPackagesCreateOrUpdateOptionalParams, ): Promise; /** - * Remove an MSIX Package. + * 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 msixPackage The resource properties to be updated. * @param options The options parameters. */ - delete( + update( resourceGroupName: string, hostPoolName: string, msixPackageFullName: string, - options?: MsixPackagesDeleteOptionalParams, - ): Promise; + msixPackage: MsixPackagePatch, + options?: MsixPackagesUpdateOptionalParams, + ): Promise; /** - * Update an MSIX Package. + * 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 options parameters. */ - update( + delete( resourceGroupName: string, hostPoolName: string, msixPackageFullName: string, - options?: MsixPackagesUpdateOptionalParams, - ): Promise; + options?: MsixPackagesDeleteOptionalParams, + ): Promise; } diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/operations.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/operations.ts index be1bdbc1e05b..1a072348ee0d 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/operations.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/operations.ts @@ -16,7 +16,7 @@ import { /** Interface representing a Operations. */ export interface Operations { /** - * List all of the available operations the Desktop Virtualization resource provider supports. + * List the operations for the provider * @param options The options parameters. */ list( diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/privateEndpointConnections.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/privateEndpointConnections.ts index 7f4ef74e01c3..7ae4760dc237 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/privateEndpointConnections.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/privateEndpointConnections.ts @@ -9,26 +9,36 @@ import { PagedAsyncIterableIterator } from "@azure/core-paging"; import { PrivateEndpointConnectionWithSystemData, - PrivateEndpointConnectionsListByWorkspaceOptionalParams, PrivateEndpointConnectionsListByHostPoolOptionalParams, - PrivateEndpointConnectionsGetByWorkspaceOptionalParams, - PrivateEndpointConnectionsGetByWorkspaceResponse, - PrivateEndpointConnectionsDeleteByWorkspaceOptionalParams, - PrivateEndpointConnection, - PrivateEndpointConnectionsUpdateByWorkspaceOptionalParams, - PrivateEndpointConnectionsUpdateByWorkspaceResponse, + PrivateEndpointConnectionsListByWorkspaceOptionalParams, PrivateEndpointConnectionsGetByHostPoolOptionalParams, PrivateEndpointConnectionsGetByHostPoolResponse, - PrivateEndpointConnectionsDeleteByHostPoolOptionalParams, PrivateEndpointConnectionsUpdateByHostPoolOptionalParams, PrivateEndpointConnectionsUpdateByHostPoolResponse, + PrivateEndpointConnectionsDeleteByHostPoolOptionalParams, + PrivateEndpointConnectionsGetByWorkspaceOptionalParams, + PrivateEndpointConnectionsGetByWorkspaceResponse, + PrivateEndpointConnectionsUpdateByWorkspaceOptionalParams, + PrivateEndpointConnectionsUpdateByWorkspaceResponse, + PrivateEndpointConnectionsDeleteByWorkspaceOptionalParams, } from "../models/index.js"; /// /** Interface representing a PrivateEndpointConnections. */ export interface PrivateEndpointConnections { /** - * List private endpoint connections. + * Get a PrivateEndpointConnectionWithSystemData + * @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 options parameters. + */ + listByHostPool( + resourceGroupName: string, + hostPoolName: string, + options?: PrivateEndpointConnectionsListByHostPoolOptionalParams, + ): PagedAsyncIterableIterator; + /** + * Get a PrivateEndpointConnectionWithSystemData * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param workspaceName The name of the workspace * @param options The options parameters. @@ -39,102 +49,85 @@ export interface PrivateEndpointConnections { options?: PrivateEndpointConnectionsListByWorkspaceOptionalParams, ): PagedAsyncIterableIterator; /** - * List private endpoint connections associated with hostpool. + * Get a PrivateEndpointConnectionWithSystemData * @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 parameter for private endpoint * @param options The options parameters. */ - listByHostPool( + getByHostPool( resourceGroupName: string, hostPoolName: string, - options?: PrivateEndpointConnectionsListByHostPoolOptionalParams, - ): PagedAsyncIterableIterator; + privateEndpointConnectionName: string, + options?: PrivateEndpointConnectionsGetByHostPoolOptionalParams, + ): Promise; /** - * Get a private endpoint connection. + * Create a PrivateEndpointConnectionWithSystemData * @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 hostPoolName The name of the host pool within the specified resource group + * @param privateEndpointConnectionName The name parameter for private endpoint + * @param connection Resource create parameters. * @param options The options parameters. */ - getByWorkspace( + updateByHostPool( resourceGroupName: string, - workspaceName: string, + hostPoolName: string, privateEndpointConnectionName: string, - options?: PrivateEndpointConnectionsGetByWorkspaceOptionalParams, - ): Promise; + connection: PrivateEndpointConnectionWithSystemData, + options?: PrivateEndpointConnectionsUpdateByHostPoolOptionalParams, + ): Promise; /** - * Remove a connection. + * Delete a PrivateEndpointConnectionWithSystemData * @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 hostPoolName The name of the host pool within the specified resource group + * @param privateEndpointConnectionName The name parameter for private endpoint * @param options The options parameters. */ - deleteByWorkspace( + deleteByHostPool( resourceGroupName: string, - workspaceName: string, + hostPoolName: string, privateEndpointConnectionName: string, - options?: PrivateEndpointConnectionsDeleteByWorkspaceOptionalParams, + options?: PrivateEndpointConnectionsDeleteByHostPoolOptionalParams, ): Promise; /** - * Approve or reject a private endpoint connection. + * Get a PrivateEndpointConnectionWithSystemData * @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 privateEndpointConnectionName The name parameter for private endpoint * @param options The options parameters. */ - updateByWorkspace( + getByWorkspace( resourceGroupName: string, workspaceName: string, privateEndpointConnectionName: string, - connection: PrivateEndpointConnection, - options?: PrivateEndpointConnectionsUpdateByWorkspaceOptionalParams, - ): Promise; + options?: PrivateEndpointConnectionsGetByWorkspaceOptionalParams, + ): Promise; /** - * Get a private endpoint connection. + * Create a PrivateEndpointConnectionWithSystemData * @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 workspaceName The name of the workspace + * @param privateEndpointConnectionName The name parameter for private endpoint + * @param connection Resource create parameters. * @param options The options parameters. */ - getByHostPool( + updateByWorkspace( resourceGroupName: string, - hostPoolName: string, + workspaceName: string, privateEndpointConnectionName: string, - options?: PrivateEndpointConnectionsGetByHostPoolOptionalParams, - ): Promise; + connection: PrivateEndpointConnectionWithSystemData, + options?: PrivateEndpointConnectionsUpdateByWorkspaceOptionalParams, + ): Promise; /** - * Remove a connection. + * Delete a PrivateEndpointConnectionWithSystemData * @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 workspaceName The name of the workspace + * @param privateEndpointConnectionName The name parameter for private endpoint * @param options The options parameters. */ - deleteByHostPool( + deleteByWorkspace( resourceGroupName: string, - hostPoolName: string, + workspaceName: string, privateEndpointConnectionName: string, - options?: PrivateEndpointConnectionsDeleteByHostPoolOptionalParams, + options?: PrivateEndpointConnectionsDeleteByWorkspaceOptionalParams, ): Promise; - /** - * 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 options parameters. - */ - updateByHostPool( - resourceGroupName: string, - hostPoolName: string, - privateEndpointConnectionName: string, - connection: PrivateEndpointConnection, - options?: PrivateEndpointConnectionsUpdateByHostPoolOptionalParams, - ): Promise; } diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/privateLinkResources.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/privateLinkResources.ts index e56cb6ab038b..986e218d742c 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/privateLinkResources.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/privateLinkResources.ts @@ -9,33 +9,33 @@ import { PagedAsyncIterableIterator } from "@azure/core-paging"; import { PrivateLinkResource, - PrivateLinkResourcesListByWorkspaceOptionalParams, PrivateLinkResourcesListByHostPoolOptionalParams, + PrivateLinkResourcesListByWorkspaceOptionalParams, } from "../models/index.js"; /// /** Interface representing a PrivateLinkResources. */ export interface PrivateLinkResources { /** - * List the private link resources available for this workspace. + * List the private link resources available for this hostpool. * @param resourceGroupName The name of the resource group. The name is case insensitive. - * @param workspaceName The name of the workspace + * @param hostPoolName The name of the host pool within the specified resource group * @param options The options parameters. */ - listByWorkspace( + listByHostPool( resourceGroupName: string, - workspaceName: string, - options?: PrivateLinkResourcesListByWorkspaceOptionalParams, + hostPoolName: string, + options?: PrivateLinkResourcesListByHostPoolOptionalParams, ): PagedAsyncIterableIterator; /** - * List the private link resources available for this hostpool. + * List the private link resources available for this workspace. * @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 workspaceName The name of the workspace * @param options The options parameters. */ - listByHostPool( + listByWorkspace( resourceGroupName: string, - hostPoolName: string, - options?: PrivateLinkResourcesListByHostPoolOptionalParams, + workspaceName: string, + options?: PrivateLinkResourcesListByWorkspaceOptionalParams, ): PagedAsyncIterableIterator; } diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/scalingPlanPersonalSchedules.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/scalingPlanPersonalSchedules.ts index 349096cd7e75..f61549859c93 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/scalingPlanPersonalSchedules.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/scalingPlanPersonalSchedules.ts @@ -14,9 +14,9 @@ import { ScalingPlanPersonalSchedulesGetResponse, ScalingPlanPersonalSchedulesCreateOptionalParams, ScalingPlanPersonalSchedulesCreateResponse, - ScalingPlanPersonalSchedulesDeleteOptionalParams, ScalingPlanPersonalSchedulesUpdateOptionalParams, ScalingPlanPersonalSchedulesUpdateResponse, + ScalingPlanPersonalSchedulesDeleteOptionalParams, } from "../models/index.js"; /// @@ -62,29 +62,29 @@ export interface ScalingPlanPersonalSchedules { options?: ScalingPlanPersonalSchedulesCreateOptionalParams, ): Promise; /** - * Remove a ScalingPlanPersonalSchedule. + * Update a ScalingPlanPersonalSchedule. * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param scalingPlanName The name of the scaling plan. * @param scalingPlanScheduleName The name of the ScalingPlanSchedule * @param options The options parameters. */ - delete( + update( resourceGroupName: string, scalingPlanName: string, scalingPlanScheduleName: string, - options?: ScalingPlanPersonalSchedulesDeleteOptionalParams, - ): Promise; + options?: ScalingPlanPersonalSchedulesUpdateOptionalParams, + ): Promise; /** - * Update a ScalingPlanPersonalSchedule. + * Remove a ScalingPlanPersonalSchedule. * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param scalingPlanName The name of the scaling plan. * @param scalingPlanScheduleName The name of the ScalingPlanSchedule * @param options The options parameters. */ - update( + delete( resourceGroupName: string, scalingPlanName: string, scalingPlanScheduleName: string, - options?: ScalingPlanPersonalSchedulesUpdateOptionalParams, - ): Promise; + options?: ScalingPlanPersonalSchedulesDeleteOptionalParams, + ): Promise; } diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/scalingPlanPooledSchedules.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/scalingPlanPooledSchedules.ts index 82066c010127..1e4b9374722e 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/scalingPlanPooledSchedules.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/scalingPlanPooledSchedules.ts @@ -14,9 +14,9 @@ import { ScalingPlanPooledSchedulesGetResponse, ScalingPlanPooledSchedulesCreateOptionalParams, ScalingPlanPooledSchedulesCreateResponse, - ScalingPlanPooledSchedulesDeleteOptionalParams, ScalingPlanPooledSchedulesUpdateOptionalParams, ScalingPlanPooledSchedulesUpdateResponse, + ScalingPlanPooledSchedulesDeleteOptionalParams, } from "../models/index.js"; /// @@ -62,29 +62,29 @@ export interface ScalingPlanPooledSchedules { options?: ScalingPlanPooledSchedulesCreateOptionalParams, ): Promise; /** - * Remove a ScalingPlanPooledSchedule. + * Update a ScalingPlanPooledSchedule. * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param scalingPlanName The name of the scaling plan. * @param scalingPlanScheduleName The name of the ScalingPlanSchedule * @param options The options parameters. */ - delete( + update( resourceGroupName: string, scalingPlanName: string, scalingPlanScheduleName: string, - options?: ScalingPlanPooledSchedulesDeleteOptionalParams, - ): Promise; + options?: ScalingPlanPooledSchedulesUpdateOptionalParams, + ): Promise; /** - * Update a ScalingPlanPooledSchedule. + * Remove a ScalingPlanPooledSchedule. * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param scalingPlanName The name of the scaling plan. * @param scalingPlanScheduleName The name of the ScalingPlanSchedule * @param options The options parameters. */ - update( + delete( resourceGroupName: string, scalingPlanName: string, scalingPlanScheduleName: string, - options?: ScalingPlanPooledSchedulesUpdateOptionalParams, - ): Promise; + options?: ScalingPlanPooledSchedulesDeleteOptionalParams, + ): Promise; } diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/scalingPlans.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/scalingPlans.ts index 2170432a6eaa..f0ef5947a83a 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/scalingPlans.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/scalingPlans.ts @@ -9,30 +9,21 @@ import { PagedAsyncIterableIterator } from "@azure/core-paging"; import { ScalingPlan, - ScalingPlansListByResourceGroupOptionalParams, ScalingPlansListBySubscriptionOptionalParams, ScalingPlansListByHostPoolOptionalParams, + ScalingPlansListByResourceGroupOptionalParams, ScalingPlansGetOptionalParams, ScalingPlansGetResponse, ScalingPlansCreateOptionalParams, ScalingPlansCreateResponse, - ScalingPlansDeleteOptionalParams, ScalingPlansUpdateOptionalParams, ScalingPlansUpdateResponse, + ScalingPlansDeleteOptionalParams, } from "../models/index.js"; /// /** Interface representing a ScalingPlans. */ export interface ScalingPlans { - /** - * List scaling plans. - * @param resourceGroupName The name of the resource group. The name is case insensitive. - * @param options The options parameters. - */ - listByResourceGroup( - resourceGroupName: string, - options?: ScalingPlansListByResourceGroupOptionalParams, - ): PagedAsyncIterableIterator; /** * List scaling plans in subscription. * @param options The options parameters. @@ -51,6 +42,15 @@ export interface ScalingPlans { hostPoolName: string, options?: ScalingPlansListByHostPoolOptionalParams, ): PagedAsyncIterableIterator; + /** + * List scaling plans. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param options The options parameters. + */ + listByResourceGroup( + resourceGroupName: string, + options?: ScalingPlansListByResourceGroupOptionalParams, + ): PagedAsyncIterableIterator; /** * Get a scaling plan. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -76,25 +76,25 @@ export interface ScalingPlans { options?: ScalingPlansCreateOptionalParams, ): Promise; /** - * Remove a scaling plan. + * 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 options parameters. */ - delete( + update( resourceGroupName: string, scalingPlanName: string, - options?: ScalingPlansDeleteOptionalParams, - ): Promise; + options?: ScalingPlansUpdateOptionalParams, + ): Promise; /** - * Update a scaling plan. + * 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 options parameters. */ - update( + delete( resourceGroupName: string, scalingPlanName: string, - options?: ScalingPlansUpdateOptionalParams, - ): Promise; + options?: ScalingPlansDeleteOptionalParams, + ): Promise; } diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/sessionHostConfigurations.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/sessionHostConfigurations.ts new file mode 100644 index 000000000000..2ba2d3705dc2 --- /dev/null +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/sessionHostConfigurations.ts @@ -0,0 +1,105 @@ +/* + * 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 { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { SimplePollerLike, OperationState } from "@azure/core-lro"; +import { + SessionHostConfiguration, + SessionHostConfigurationsListByHostPoolOptionalParams, + SessionHostConfigurationsGetOptionalParams, + SessionHostConfigurationsGetResponse, + SessionHostConfigurationsCreateOrUpdateOptionalParams, + SessionHostConfigurationsCreateOrUpdateResponse, + SessionHostConfigurationsUpdateOptionalParams, + SessionHostConfigurationsUpdateResponse, +} from "../models/index.js"; + +/// +/** Interface representing a SessionHostConfigurations. */ +export interface SessionHostConfigurations { + /** + * List SessionHostConfigurations. + * @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 options parameters. + */ + listByHostPool( + resourceGroupName: string, + hostPoolName: string, + options?: SessionHostConfigurationsListByHostPoolOptionalParams, + ): PagedAsyncIterableIterator; + /** + * Get a SessionHostConfiguration. + * @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 options parameters. + */ + get( + resourceGroupName: string, + hostPoolName: string, + options?: SessionHostConfigurationsGetOptionalParams, + ): Promise; + /** + * Create or update a SessionHostConfiguration. + * @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 sessionHostConfiguration Resource create parameters. + * @param options The options parameters. + */ + beginCreateOrUpdate( + resourceGroupName: string, + hostPoolName: string, + sessionHostConfiguration: SessionHostConfiguration, + options?: SessionHostConfigurationsCreateOrUpdateOptionalParams, + ): Promise< + SimplePollerLike< + OperationState, + SessionHostConfigurationsCreateOrUpdateResponse + > + >; + /** + * Create or update a SessionHostConfiguration. + * @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 sessionHostConfiguration Resource create parameters. + * @param options The options parameters. + */ + beginCreateOrUpdateAndWait( + resourceGroupName: string, + hostPoolName: string, + sessionHostConfiguration: SessionHostConfiguration, + options?: SessionHostConfigurationsCreateOrUpdateOptionalParams, + ): Promise; + /** + * Update a SessionHostConfiguration. + * @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 options parameters. + */ + beginUpdate( + resourceGroupName: string, + hostPoolName: string, + options?: SessionHostConfigurationsUpdateOptionalParams, + ): Promise< + SimplePollerLike< + OperationState, + SessionHostConfigurationsUpdateResponse + > + >; + /** + * Update a SessionHostConfiguration. + * @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 options parameters. + */ + beginUpdateAndWait( + resourceGroupName: string, + hostPoolName: string, + options?: SessionHostConfigurationsUpdateOptionalParams, + ): Promise; +} diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/sessionHostManagements.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/sessionHostManagements.ts new file mode 100644 index 000000000000..08e0bca55c31 --- /dev/null +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/sessionHostManagements.ts @@ -0,0 +1,70 @@ +/* + * 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 { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { + SessionHostManagement, + SessionHostManagementsListByHostPoolOptionalParams, + SessionHostManagementsGetOptionalParams, + SessionHostManagementsGetResponse, + SessionHostManagementsCreateOrUpdateOptionalParams, + SessionHostManagementsCreateOrUpdateResponse, + SessionHostManagementsUpdateOptionalParams, + SessionHostManagementsUpdateResponse, +} from "../models/index.js"; + +/// +/** Interface representing a SessionHostManagements. */ +export interface SessionHostManagements { + /** + * List SessionHostManagements. + * @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 options parameters. + */ + listByHostPool( + resourceGroupName: string, + hostPoolName: string, + options?: SessionHostManagementsListByHostPoolOptionalParams, + ): PagedAsyncIterableIterator; + /** + * Get a SessionHostManagement. + * @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 options parameters. + */ + get( + resourceGroupName: string, + hostPoolName: string, + options?: SessionHostManagementsGetOptionalParams, + ): Promise; + /** + * Create or update a SessionHostManagement. + * @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 sessionHostManagement Resource create parameters. + * @param options The options parameters. + */ + createOrUpdate( + resourceGroupName: string, + hostPoolName: string, + sessionHostManagement: SessionHostManagement, + options?: SessionHostManagementsCreateOrUpdateOptionalParams, + ): Promise; + /** + * Update a SessionHostManagement. + * @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 options parameters. + */ + update( + resourceGroupName: string, + hostPoolName: string, + options?: SessionHostManagementsUpdateOptionalParams, + ): Promise; +} diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/sessionHostManagementsUpdateStatus.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/sessionHostManagementsUpdateStatus.ts new file mode 100644 index 000000000000..0171b2315ac9 --- /dev/null +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/sessionHostManagementsUpdateStatus.ts @@ -0,0 +1,27 @@ +/* + * 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 { + SessionHostManagementsUpdateStatusGetOptionalParams, + SessionHostManagementsUpdateStatusGetResponse, +} from "../models/index.js"; + +/** Interface representing a SessionHostManagementsUpdateStatus. */ +export interface SessionHostManagementsUpdateStatus { + /** + * Get a SessionHostManagementUpdateStatus. + * @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 options parameters. + */ + get( + resourceGroupName: string, + hostPoolName: string, + options?: SessionHostManagementsUpdateStatusGetOptionalParams, + ): Promise; +} diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/sessionHosts.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/sessionHosts.ts index 3d518613d5af..4502dad2ad27 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/sessionHosts.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/sessionHosts.ts @@ -12,9 +12,10 @@ import { SessionHostsListOptionalParams, SessionHostsGetOptionalParams, SessionHostsGetResponse, - SessionHostsDeleteOptionalParams, SessionHostsUpdateOptionalParams, SessionHostsUpdateResponse, + SessionHostsDeleteOptionalParams, + SessionHostsRetryProvisioningOptionalParams, } from "../models/index.js"; /// @@ -44,6 +45,19 @@ export interface SessionHosts { sessionHostName: string, options?: SessionHostsGetOptionalParams, ): Promise; + /** + * 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 options parameters. + */ + update( + resourceGroupName: string, + hostPoolName: string, + sessionHostName: string, + options?: SessionHostsUpdateOptionalParams, + ): Promise; /** * Remove a SessionHost. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -58,16 +72,16 @@ export interface SessionHosts { options?: SessionHostsDeleteOptionalParams, ): Promise; /** - * Update a session host. + * A synchronous resource action that returns no content. * @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 options parameters. */ - update( + retryProvisioning( resourceGroupName: string, hostPoolName: string, sessionHostName: string, - options?: SessionHostsUpdateOptionalParams, - ): Promise; + options?: SessionHostsRetryProvisioningOptionalParams, + ): Promise; } diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/userSessions.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/userSessions.ts index 29895e619ba1..5e60c97c492a 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/userSessions.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/userSessions.ts @@ -9,8 +9,8 @@ import { PagedAsyncIterableIterator } from "@azure/core-paging"; import { UserSession, - UserSessionsListByHostPoolOptionalParams, UserSessionsListOptionalParams, + UserSessionsListByHostPoolOptionalParams, UserSessionsGetOptionalParams, UserSessionsGetResponse, UserSessionsDeleteOptionalParams, @@ -25,25 +25,25 @@ export interface UserSessions { * 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 options parameters. */ - listByHostPool( + list( resourceGroupName: string, hostPoolName: string, - options?: UserSessionsListByHostPoolOptionalParams, + sessionHostName: string, + options?: UserSessionsListOptionalParams, ): PagedAsyncIterableIterator; /** - * List userSessions. + * A synchronous resource action. * @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 options parameters. */ - list( + listByHostPool( resourceGroupName: string, hostPoolName: string, - sessionHostName: string, - options?: UserSessionsListOptionalParams, + options?: UserSessionsListByHostPoolOptionalParams, ): PagedAsyncIterableIterator; /** * Get a userSession. diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/workspaces.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/workspaces.ts index e7f5b538366b..546dfd57d127 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/workspaces.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/src/operationsInterfaces/workspaces.ts @@ -9,20 +9,27 @@ import { PagedAsyncIterableIterator } from "@azure/core-paging"; import { Workspace, - WorkspacesListByResourceGroupOptionalParams, WorkspacesListBySubscriptionOptionalParams, + WorkspacesListByResourceGroupOptionalParams, WorkspacesGetOptionalParams, WorkspacesGetResponse, WorkspacesCreateOrUpdateOptionalParams, WorkspacesCreateOrUpdateResponse, - WorkspacesDeleteOptionalParams, WorkspacesUpdateOptionalParams, WorkspacesUpdateResponse, + WorkspacesDeleteOptionalParams, } from "../models/index.js"; /// /** Interface representing a Workspaces. */ export interface Workspaces { + /** + * List workspaces in subscription. + * @param options The options parameters. + */ + listBySubscription( + options?: WorkspacesListBySubscriptionOptionalParams, + ): PagedAsyncIterableIterator; /** * List workspaces. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -32,13 +39,6 @@ export interface Workspaces { resourceGroupName: string, options?: WorkspacesListByResourceGroupOptionalParams, ): PagedAsyncIterableIterator; - /** - * List workspaces in subscription. - * @param options The options parameters. - */ - listBySubscription( - options?: WorkspacesListBySubscriptionOptionalParams, - ): PagedAsyncIterableIterator; /** * Get a workspace. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -64,25 +64,25 @@ export interface Workspaces { options?: WorkspacesCreateOrUpdateOptionalParams, ): Promise; /** - * Remove a workspace. + * 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 options parameters. */ - delete( + update( resourceGroupName: string, workspaceName: string, - options?: WorkspacesDeleteOptionalParams, - ): Promise; + options?: WorkspacesUpdateOptionalParams, + ): Promise; /** - * Update a workspace. + * 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 options parameters. */ - update( + delete( resourceGroupName: string, workspaceName: string, - options?: WorkspacesUpdateOptionalParams, - ): Promise; + options?: WorkspacesDeleteOptionalParams, + ): Promise; } diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/test/sampleTest.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/test/sampleTest.ts new file mode 100644 index 000000000000..a1cf7c25afd2 --- /dev/null +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/test/sampleTest.ts @@ -0,0 +1,40 @@ +/* + * 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 { + Recorder, + RecorderStartOptions, +} from "@azure-tools/test-recorder"; + +const replaceableVariables: Record = { + AZURE_CLIENT_ID: "azure_client_id", + AZURE_CLIENT_SECRET: "azure_client_secret", + AZURE_TENANT_ID: "88888888-8888-8888-8888-888888888888", + SUBSCRIPTION_ID: "azure_subscription_id", +}; + +const recorderOptions: RecorderStartOptions = { + envSetupForPlayback: replaceableVariables, +}; + +describe("My test", () => { + let recorder: Recorder; + + beforeEach(async (ctx) => { + recorder = new Recorder(ctx); + await recorder.start(recorderOptions); + }); + + afterEach(async () => { + await recorder.stop(); + }); + + it("sample test", async function () { + console.log("Hi, I'm a test!"); + }); +}); diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/test/snippets.spec.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/test/snippets.spec.ts index 3e5f53a0f9f9..995b41687b57 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/test/snippets.spec.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/test/snippets.spec.ts @@ -1,15 +1,29 @@ +/* + * 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. + */ + // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import { DesktopVirtualizationAPIClient } from "../src/index.js"; -import { DefaultAzureCredential, InteractiveBrowserCredential } from "@azure/identity"; +import { + DefaultAzureCredential, + InteractiveBrowserCredential, +} from "@azure/identity"; import { setLogLevel } from "@azure/logger"; import { describe, it } from "vitest"; describe("snippets", () => { it("ReadmeSampleCreateClient_Node", async () => { const subscriptionId = "00000000-0000-0000-0000-000000000000"; - const client = new DesktopVirtualizationAPIClient(new DefaultAzureCredential(), subscriptionId); + const client = new DesktopVirtualizationAPIClient( + new DefaultAzureCredential(), + subscriptionId, + ); }); it("ReadmeSampleCreateClient_Browser", async () => { @@ -18,7 +32,10 @@ describe("snippets", () => { tenantId: "", clientId: "", }); - const client = new DesktopVirtualizationAPIClient(credential, subscriptionId); + const client = new DesktopVirtualizationAPIClient( + credential, + subscriptionId, + ); }); it("SetLogLevel", async () => { diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/tsconfig.browser.config.json b/sdk/desktopvirtualization/arm-desktopvirtualization/tsconfig.browser.config.json index 75871518e3a0..0c8bafa97126 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/tsconfig.browser.config.json +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/tsconfig.browser.config.json @@ -1,3 +1,6 @@ { - "extends": ["./tsconfig.test.json", "../../../tsconfig.browser.base.json"] + "extends": [ + "./tsconfig.test.json", + "../../../tsconfig.browser.base.json" + ] } diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/tsconfig.json b/sdk/desktopvirtualization/arm-desktopvirtualization/tsconfig.json index 19ceb382b521..b35d05ad6e9d 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/tsconfig.json +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/tsconfig.json @@ -1,13 +1,27 @@ { - "references": [ - { - "path": "./tsconfig.src.json" - }, - { - "path": "./tsconfig.samples.json" - }, - { - "path": "./tsconfig.test.json" - } + "compilerOptions": { + "module": "es6", + "moduleResolution": "node", + "strict": true, + "target": "es6", + "sourceMap": true, + "declarationMap": true, + "esModuleInterop": true, + "allowSyntheticDefaultImports": true, + "forceConsistentCasingInFileNames": true, + "lib": [ + "es6", + "dom" + ], + "declaration": true, + "outDir": "./dist-esm", + "importHelpers": true + }, + "include": [ + "src/**/*.ts", + "test/**/*.ts" + ], + "exclude": [ + "node_modules" ] -} +} \ No newline at end of file diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/tsconfig.samples.json b/sdk/desktopvirtualization/arm-desktopvirtualization/tsconfig.samples.json index 41ff38fa2212..44e042e70d3f 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/tsconfig.samples.json +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/tsconfig.samples.json @@ -2,7 +2,9 @@ "extends": "../../../tsconfig.samples.base.json", "compilerOptions": { "paths": { - "@azure/arm-desktopvirtualization": ["./dist/esm"] + "@azure/arm-desktopvirtualization": [ + "./dist/esm" + ] } } } diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/tsconfig.test.json b/sdk/desktopvirtualization/arm-desktopvirtualization/tsconfig.test.json index 290ca214aebc..3c2b783a8c1b 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/tsconfig.test.json +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/tsconfig.test.json @@ -1,3 +1,6 @@ { - "extends": ["./tsconfig.src.json", "../../../tsconfig.test.base.json"] + "extends": [ + "./tsconfig.src.json", + "../../../tsconfig.test.base.json" + ] } diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/vitest.browser.config.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/vitest.browser.config.ts index 10e70dbfa8ee..182729ab5ce9 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/vitest.browser.config.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/vitest.browser.config.ts @@ -1,3 +1,4 @@ + // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. @@ -8,7 +9,7 @@ export default mergeConfig( viteConfig, defineConfig({ test: { - include: ["dist-test/browser/test/**/*.spec.js"], + include: ["dist-test/browser/test/**/*.spec.js",], testTimeout: 1200000, hookTimeout: 1200000, }, diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/vitest.config.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/vitest.config.ts index 86a71911ccc2..40e031385dd8 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/vitest.config.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/vitest.config.ts @@ -1,3 +1,4 @@ + // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. diff --git a/sdk/desktopvirtualization/arm-desktopvirtualization/vitest.esm.config.ts b/sdk/desktopvirtualization/arm-desktopvirtualization/vitest.esm.config.ts index 5e9735e9b144..a70127279fc9 100644 --- a/sdk/desktopvirtualization/arm-desktopvirtualization/vitest.esm.config.ts +++ b/sdk/desktopvirtualization/arm-desktopvirtualization/vitest.esm.config.ts @@ -1,3 +1,4 @@ + // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. @@ -5,4 +6,7 @@ import { mergeConfig } from "vitest/config"; import vitestConfig from "./vitest.config.ts"; import vitestEsmConfig from "../../../vitest.esm.shared.config.ts"; -export default mergeConfig(vitestConfig, vitestEsmConfig); +export default mergeConfig( + vitestConfig, + vitestEsmConfig +);