///
import * as Tp from 'thingpedia';
import * as events from 'events';
declare class ClientConnection extends events.EventEmitter {
private _serverAddress;
private _identity;
private _authToken;
private _closeOk;
private _outgoingBuffer;
private _ratelimitTimer;
private _retryAttempts;
private _socket;
isClient: boolean;
isServer: boolean;
constructor(serverAddress: string, identity: string, authToken: string);
private _onConnectionLost;
private _onConnected;
open(): Promise;
close(): Promise;
send(msg: any): void;
sendMany(buffer: any[]): void;
}
declare class ServerConnection extends events.EventEmitter {
private _connections;
private _platform;
isClient: boolean;
isServer: boolean;
constructor(platform: Tp.BasePlatform);
isConnected(remote: string): boolean;
private _findConnection;
private _handleConnection;
open(): Promise;
close(): Promise;
closeOne(identity: string): Promise;
private _sendTo;
send(msg: any, to?: string): void;
sendMany(buffer: any[], to?: string): void;
}
export { ClientConnection, ServerConnection };