import { Event } from '../utils/event.js';
import { MessageTransport, MessageTransportProvider } from './transport.js';
import { Socket } from 'socket.io-client';
export declare const SocketIoTransportProvider: MessageTransportProvider;
export declare class SocketIoTransport implements MessageTransport {
    protected socket: Socket;
    readonly id = "socket.io";
    private onReconnectEmitter;
    private onDisconnectEmitter;
    private onErrorEmitter;
    private disconnectTimeout?;
    private ready;
    get onDisconnect(): Event<void>;
    get onReconnect(): Event<void>;
    get onError(): Event<string>;
    constructor(socket: Socket);
    write(data: Uint8Array): Promise<void>;
    read(cb: (data: Uint8Array) => void): void;
    dispose(): void;
}
//# sourceMappingURL=socket-io-transport.d.ts.map