import { IRPCProtocol } from '@opensumi/ide-connection'; import { Emitter } from '@opensumi/ide-core-common'; import { IExtHostLayout, IMainThreadLayout, ITabbarHandler } from '../../../common/sumi/layout'; import { IExtHostCommands, IExtensionDescription, type ViewBadge } from '../../../common/vscode'; export declare class TabbarHandler implements ITabbarHandler { id: string; private proxy; readonly onActivateEmitter: Emitter; readonly onActivate: import("@opensumi/ide-core-common").Event; readonly onInActivateEmitter: Emitter; readonly onInActivate: import("@opensumi/ide-core-common").Event; constructor(id: string, proxy: IMainThreadLayout); setTitle(title: string): void; setIcon(iconPath: string): void; setSize(size: number): void; activate(): void; deactivate(): void; setVisible(visible: boolean): void; setBadge(badge?: string | ViewBadge): void; isAttached(): Promise; } export declare class ExtHostLayout implements IExtHostLayout { private rpcProtocol; private handles; private proxy; constructor(rpcProtocol: IRPCProtocol); getTabbarHandler(id: string): ITabbarHandler; $acceptMessage(id: string, type: 'activate' | 'deactivate'): void; } export declare function createLayoutAPIFactory(extHostCommands: IExtHostCommands, kaitianLayout: IExtHostLayout, extension: IExtensionDescription): { toggleBottomPanel: (size?: number) => Promise; toggleLeftPanel: (size?: number) => Promise; toggleRightPanel: (size?: number) => Promise; showRightPanel: (size?: number) => Promise; hideRightPanel: () => Promise; activatePanel: (id: any) => Promise; isBottomPanelVisible: () => Promise; isLeftPanelVisible: () => Promise; isRightPanelVisible: () => Promise; getTabbarHandler: (id: string) => ITabbarHandler; getExtensionTabbarHandler: (id: string, extensionId?: string) => ITabbarHandler; }; //# sourceMappingURL=ext.host.layout.d.ts.map