import { IWSSocket, IClient, ISession, IEnvelope, Message, IIncomingMessage } from '../contracts'; import { AbstractConnection } from './connection'; export declare abstract class AbstractClient extends AbstractConnection implements IClient { socket: IWSSocket; protected request: IIncomingMessage; constructor(socket: IWSSocket, request: IIncomingMessage); get isInitialized(): boolean; close(): void; send(payloadOrPromise: any): Promise; error(code: number, message: string, error?: Error): void; abstract parseEnvelope(payload: string): IEnvelope; abstract parseMessage(envelope: IEnvelope): Message; abstract getEventName(message: any): string; private sendSync; }