import { BehaviorSubject, Subject } from 'rxjs';
import { MotionMasterReqResSocket } from './motion-master-req-res-socket';
import { IMotionMasterMessage } from './types';
export declare class MotionMasterReqResWorkerSocket implements MotionMasterReqResSocket {
    readonly worker: Worker;
    readonly opened$: BehaviorSubject<boolean>;
    readonly close$: Subject<{
        code: number;
        reason: string;
    }>;
    readonly alive$: BehaviorSubject<boolean>;
    readonly message$: Subject<IMotionMasterMessage>;
    private _url?;
    private _pingSystemInterval?;
    private _systemAliveTimeout?;
    constructor(worker: Worker);
    get url(): string | undefined;
    get pingSystemInterval(): number | undefined;
    get systemAliveTimeout(): number | undefined;
    open(url: string, pingSystemInterval?: number, systemAliveTimeout?: number): void;
    reopen(): void;
    close(): void;
    send(message: IMotionMasterMessage): void;
}
