/// <reference types="node" />
import * as net from 'net';
import * as rpc from 'vscode-jsonrpc';
import { RuntimeService } from './services/runtimeService';
import { rhamtEvents } from 'raas-core';
import { NotificationService } from './services/notificationService';
import { InstallationService } from './services/installationService';
import { InstallableServerService } from './services/installableServerService';
export declare class Client {
    private messageHandler;
    id: string;
    socket: net.Socket;
    connection: rpc.MessageConnection;
    onDisconnected: rhamtEvents.TypedEvent<void>;
    constructor(socket: net.Socket, id: string);
    private listenToSocket;
    register(runtimeService: RuntimeService, notificationService: NotificationService, installableServerService: InstallableServerService, installationService: InstallationService): void;
    listen(): void;
    dispose(): void;
}
