import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { MigrateWorkspaceRequest, MigrateWorkspaceResult } from "../models/models_0"; /** * @public */ export type { __MetadataBearer }; /** * @public * * The input for {@link MigrateWorkspaceCommand}. */ export interface MigrateWorkspaceCommandInput extends MigrateWorkspaceRequest { } /** * @public * * The output of {@link MigrateWorkspaceCommand}. */ export interface MigrateWorkspaceCommandOutput extends MigrateWorkspaceResult, __MetadataBearer { } declare const MigrateWorkspaceCommand_base: { new (input: MigrateWorkspaceCommandInput): import("@smithy/core/client").CommandImpl; new (input: MigrateWorkspaceCommandInput): import("@smithy/core/client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/types").EndpointParameterInstructions; }; /** *

Migrates a WorkSpace from one operating system or bundle type to another, while * retaining the data on the user volume.

*

The migration process recreates the WorkSpace by using a new root volume from the target * bundle image and the user volume from the last available snapshot of the original * WorkSpace. During migration, the original D:\Users\%USERNAME% user profile * folder is renamed to D:\Users\%USERNAME%MMddyyTHHmmss%.NotMigrated. A new * D:\Users\%USERNAME%\ folder is generated by the new OS. Certain files in * the old user profile are moved to the new user profile.

*

For available migration scenarios, details about what happens during migration, and best * practices, see Migrate a * WorkSpace.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { WorkSpacesClient, MigrateWorkspaceCommand } from "@aws-sdk/client-workspaces"; // ES Modules import * // const { WorkSpacesClient, MigrateWorkspaceCommand } = require("@aws-sdk/client-workspaces"); // CommonJS import * // import type { WorkSpacesClientConfig } from "@aws-sdk/client-workspaces"; * const config = {}; // type is WorkSpacesClientConfig * const client = new WorkSpacesClient(config); * const input = { // MigrateWorkspaceRequest * SourceWorkspaceId: "STRING_VALUE", // required * BundleId: "STRING_VALUE", // required * }; * const command = new MigrateWorkspaceCommand(input); * const response = await client.send(command); * // { // MigrateWorkspaceResult * // SourceWorkspaceId: "STRING_VALUE", * // TargetWorkspaceId: "STRING_VALUE", * // }; * * ``` * * @param MigrateWorkspaceCommandInput - {@link MigrateWorkspaceCommandInput} * @returns {@link MigrateWorkspaceCommandOutput} * @see {@link MigrateWorkspaceCommandInput} for command's `input` shape. * @see {@link MigrateWorkspaceCommandOutput} for command's `response` shape. * @see {@link WorkSpacesClientResolvedConfig | config} for WorkSpacesClient's `config` shape. * * @throws {@link AccessDeniedException} (client fault) *

The user is not authorized to access a resource.

* * @throws {@link InvalidParameterValuesException} (client fault) *

One or more parameter values are not valid.

* * @throws {@link OperationInProgressException} (client fault) *

The properties of this WorkSpace are currently being modified. Try again in a moment.

* * @throws {@link OperationNotSupportedException} (client fault) *

This operation is not supported.

* * @throws {@link ResourceNotFoundException} (client fault) *

The resource could not be found.

* * @throws {@link ResourceUnavailableException} (client fault) *

The specified resource is not available.

* * @throws {@link WorkSpacesServiceException} *

Base exception class for all service exceptions from WorkSpaces service.

* * * @public */ export declare class MigrateWorkspaceCommand extends MigrateWorkspaceCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: MigrateWorkspaceRequest; output: MigrateWorkspaceResult; }; sdk: { input: MigrateWorkspaceCommandInput; output: MigrateWorkspaceCommandOutput; }; }; }