import type { ConnectionController } from '../ConnectionController'; import type { IncomingMessage } from '../../messages/IncomingMessage'; import type { OutgoingMessage } from '../../messages/OutgoingMessage'; import type { BinaryMessage } from '../../messages/BinaryMessage'; export declare abstract class Connection { headers: Record; private connectionController; setConnectionController(cc: ConnectionController): void; abstract reply(message: OutgoingMessage): Promise; abstract send(message: OutgoingMessage): Promise; abstract getSocket(): any; abstract close(data?: string): Promise; getStore(): Record; protected onMessage(message: IncomingMessage): Promise; protected onBinaryMessage(message: BinaryMessage): Promise; protected onClose(): Promise; }