import { TransactionResolveStream } from '../../interface/Interface';
import { ConnectionStatus } from '../../enum/Enum';
import { Queue } from '../Queue';
import { XAPI } from '../XAPI';
export declare class StreamConnection extends Queue {
    private XAPI;
    session: string;
    private pingTimeout;
    constructor(XAPI: XAPI, url: string);
    connect(): void;
    onConnectionChange(callBack: (status: ConnectionStatus) => void, key?: string | null): void;
    private setConnectionStatus;
    protected sendCommand(command: string, completion?: any, urgent?: boolean): Promise<TransactionResolveStream>;
    closeConnection(): void;
    ping(): Promise<TransactionResolveStream>;
    protected sendSubscribe(command: string, completion?: any): Promise<TransactionResolveStream>;
    protected sendUnsubscribe(command: string, completion?: any): Promise<TransactionResolveStream>;
}
