import { IRPCProtocol } from '@opensumi/ide-connection';
import { ExtensionConnection, IInterProcessConnectionService } from '../../../common/vscode';
export declare class ExtHostConnection implements IInterProcessConnectionService {
    private rpcProtocol;
    private proxy;
    private connections;
    private readonly debug;
    constructor(rpcProtocol: IRPCProtocol);
    /**
     * 通过ID获取Connection并发送消息
     * @param id
     * @param message
     */
    $sendMessage(id: string, message: string): Promise<void>;
    /**
     * 创建Connection
     * @param id
     */
    $createConnection(id: string): Promise<void>;
    /**
     * 移除Connection
     * @param id
     */
    $deleteConnection(id: string): Promise<void>;
    /**
     * 如果已存在，返回存在的Connection，否则创建新的Connection
     * @param id
     */
    ensureConnection(id: string): Promise<ExtensionConnection>;
    /**
     * 如果已存在，返回存在的Connection，否则创建新的Connection
     * @param id
     */
    doEnsureConnection(id: string): Promise<ExtensionConnection>;
    /**
     * 创建新的Connection
     * @param id
     */
    protected doCreateConnection(id: string): Promise<ExtensionConnection>;
}
//# sourceMappingURL=ext.host.connection.d.ts.map