import React, { type ReactNode } from 'react'; interface Workspace2Props { title: string; children: ReactNode; hasUnsavedChanges?: boolean; } /** * @experimental */ export interface Workspace2DefinitionProps { /** * This function launches a child workspace. Unlike `launchWorkspace()`, this function is meant * to be called from the a workspace, and it does not allow passing (or changing) * the window props or group props * @param workspaceName * @param workspaceProps */ launchChildWorkspace(workspaceName: string, workspaceProps?: Props): Promise; /** * closes the current workspace, along with its children. * @param options Optional configuration for closing the workspace. * @param options.closeWindow If true, the workspace's window, along with all workspaces within it, will be closed as well. * @param options.discardUnsavedChanges If true, the "unsaved changes" modal will be suppressed, and the value of `hasUnsavedChanges` will be ignored. Use this when closing the workspace immediately after changes are saved. * @returns a Promise that resolves to true if the workspace is closed, false otherwise. */ closeWorkspace(options?: { closeWindow?: boolean; discardUnsavedChanges?: boolean; }): Promise; workspaceProps: WorkspaceProps | null; windowProps: WindowProps | null; groupProps: GroupProps | null; workspaceName: string; windowName: string; isRootWorkspace: boolean; showActionMenu: boolean; } /** * @experimental */ export type Workspace2Definition = React.FC>; /** * The Workspace2 component is used as a top-level container to render * its children as content within a workspace. When creating a workspace * component, `` should be the top-level component returned, * wrapping all of the workspace content. * @experimental */ export declare const Workspace2: React.FC; export {}; //# sourceMappingURL=workspace2.component.d.ts.map