import { PathEvent, PathEventEmitter } from './core';
import { Momentum } from './momentum';
export declare class Socket extends PathEventEmitter {
    protected momentum: Momentum;
    static readonly pollingSpeed = 15000;
    private connection?;
    private connecting?;
    private connectingResolver?;
    private events;
    private reconnect;
    private pending;
    private token?;
    private reconnectTimeout;
    connected: boolean;
    constructor(momentum: Momentum);
    private scheduleReconnect;
    close(reconnect?: boolean): void;
    connect(): Promise<void>;
    ping(): Promise<number>;
    send(channel: string, payload?: any): void;
    subscribe(event: string | PathEvent): Promise<boolean>;
    subscriptions(): Promise<string[]>;
    unsubscribe(event: string | PathEvent): Promise<boolean>;
}
//# sourceMappingURL=sockets.d.ts.map