import { IRPCProtocol } from '@opensumi/ide-connection';
import { Disposable } from '@opensumi/ide-core-browser';
import { IIDEWindowWebviewEnv, IIDEWindowWebviewOptions, IMainThreadIDEWindow, IWindowInfo } from '../../common/sumi/window';
export declare class MainThreadIDEWindow extends Disposable implements IMainThreadIDEWindow {
    private rpcProtocol;
    private _proxy;
    private _plainWebviewWindowMap;
    private readonly webviewService;
    constructor(rpcProtocol: IRPCProtocol);
    $createWebviewWindow(webviewId: string, options?: IIDEWindowWebviewOptions, env?: IIDEWindowWebviewEnv): Promise<IWindowInfo>;
    $show(webviewId: string): Promise<void>;
    $hide(webviewId: string): Promise<void>;
    $setSize(webviewId: string, size: {
        width: number;
        height: number;
    }): Promise<void>;
    $postMessage(webviewId: string, message: any): Promise<void>;
    $setAlwaysOnTop(webviewId: string, flag: boolean): Promise<void>;
    $loadURL(webviewId: string, url: string): Promise<void>;
    $destroy(webviewId: string): Promise<void>;
}
//# sourceMappingURL=main.thread.window.d.ts.map