/// <reference types="node" />
import { MessageConnection } from 'vscode-jsonrpc';
import { EventEmitter } from 'events';
import { Protocol } from 'raas-core';
export declare class Installable {
    private connection;
    private emitter;
    constructor(connection: MessageConnection, emitter: EventEmitter);
    private listenToInstallableChanges;
    addInstallable(installable: Protocol.InstallableServer, timeout?: number): Promise<Protocol.Status>;
    updateInstallableServer(installable: Protocol.InstallableServer, timeout?: number): Promise<Protocol.Status>;
    deleteInstallableServer(installable: Protocol.InstallableServer, timeout?: number): Promise<Protocol.Status>;
    getAllInstallableServers(timeout?: number): Promise<Protocol.InstallableServer[]>;
    private send;
}
