import { Injector } from '@opensumi/di';
import { IRPCProtocol } from '@opensumi/ide-connection';
import { IEventBus, WithEventBus } from '@opensumi/ide-core-browser';
import { IExtHostCommon, IMainThreadCommon } from '../../common/sumi/common';
import { ExtHostEvent } from '../types';
/**
 * 通用 Sumi Main Api
 * 对于一些比较小的零碎功能, 不单独开main.thread.xxx.ts了，这样方便快速开发
 */
export declare class MainThreadCommon extends WithEventBus implements IMainThreadCommon {
    private rpcProtocol;
    private injector;
    _proxy: IExtHostCommon;
    themeService: IEventBus;
    private subscribedEvent;
    constructor(rpcProtocol: IRPCProtocol, injector: Injector);
    onExtHostEvent(e: ExtHostEvent): Promise<any[]> | undefined;
    $subscribeEvent(eventName: string): Promise<void>;
    $unSubscribeEvent(eventName: string): Promise<void>;
}
//# sourceMappingURL=main.thread.common.d.ts.map