import { WebSocket, RawData } from 'ws';
import { IncomingMessage } from 'http';
import { Provider, Router, Transport } from '../../models';
import { WsRequestContext } from './context';
import { WsExecutor } from './executor';
export declare const buildWsListener: <T extends WsRequestContext["TContext"]>(router: Router<T>) => (socket: WebSocket, request: IncomingMessage) => Promise<void>;
export declare class WsTransport extends Transport<WsExecutor> {
    executor: WsExecutor;
    compileContext(provider: Provider<WsTransport['TContext']>, socket: WebSocket, request: IncomingMessage, event: WsExecutor['TContext']['event'], message?: RawData): Promise<WsRequestContext>;
}
//# sourceMappingURL=index.d.ts.map