import { Agent, Transport, TransportConfig } from '../'; import StreamManagement from '../helpers/StreamManagement'; import { JSONData, Registry } from '../jxt'; import { Duplex } from '../platform'; import { Stream } from '../protocol'; export default class WSConnection extends Duplex implements Transport { hasStream?: boolean; stream?: Stream; private client; private config; private sm; private stanzas; private closing; private parser?; private socket?; private disconnectTimeoutId?; constructor(client: Agent, sm: StreamManagement, stanzas: Registry); _read(): void; _write(chunk: string, encoding: string, done: (err?: Error) => void): void; connect(opts: TransportConfig): void; disconnect(clean?: boolean): void; send(dataOrName: string, data?: JSONData): Promise; restart(): void; private startHeader; private closeHeader; }