import { type BushitsuTransport } from '../core/transport'; export interface WebSocketLike { readyState: number; send(data: string): void; close(code?: number, reason?: string): void; addEventListener?: (type: string, listener: (...args: any[]) => void) => void; removeEventListener?: (type: string, listener: (...args: any[]) => void) => void; on?: (type: string, listener: (...args: any[]) => void) => void; off?: (type: string, listener: (...args: any[]) => void) => void; removeListener?: (type: string, listener: (...args: any[]) => void) => void; } export type WebSocketFactory = (url: string) => WebSocketLike; export declare const createWebSocketTransport: (factory: WebSocketFactory) => BushitsuTransport; export declare const createBrowserWebSocketTransport: () => BushitsuTransport;