export interface SocketClientOptions {
    url: string;
    hostId: string;
    pairingCode: string;
    onConnect: () => void;
    onDisconnect: () => void;
    onTunnelOpen: (socketRef: any, authHashRef: string, sharedKeyRef: string) => void;
    onTunnelClose: () => void;
    onPacket?: (packet: any, send: (p: any) => void) => void;
    log: (msg: string, type?: string) => void;
    createWebRTC?: boolean;
}
export declare function createSocketClient(options: SocketClientOptions): {
    disconnect: () => void;
    send: (packet: any) => void;
    getSessionPeer: (sessionId: string) => {
        send: (packet: any) => void;
        signal: (signalData: any) => void;
        close: () => void;
        peer: any;
    } | undefined;
};
