import { Socket } from 'socket.io-client';
import { Observable } from 'rxjs';
export declare class SocketService<P extends Socket = any> {
    socket: P | Socket;
    constructor(socket: P | Socket);
    changeRoom(tokenRoomOld: string, tokenRoomNew: string, callback?: (resp: any) => void): SocketService;
    emitToRoom(event: string, room: string, payload?: any, callback?: (resp: any) => void): SocketService;
    emitEvent(event: string, callback?: (resp: any) => void): SocketService;
    on(event: string, callback: (args?: any) => void): void;
    fromEvent<T>(event: string): Observable<T>;
    disconnect(): void;
}
