import { ComProtocolConnectOptions, ComProtocolDisconnectOptions, ComProtocolSendOptions } from '@iotize/tap/protocol/api'; import { Observable, Subscription } from 'rxjs'; import { AbstractComProtocol } from './abstract-com-protocol'; /** * */ export declare abstract class QueueComProtocol extends AbstractComProtocol { _disconnect$?: Observable; _connect$?: Observable; _connectionSubscription?: Subscription; private _jobQueue; abstract _connect(options?: ComProtocolConnectOptions): Observable; abstract _disconnect(options?: ComProtocolDisconnectOptions): Observable; _send(data: Uint8Array, options: ComProtocolSendOptions): Observable; constructor(); /** * Cancel pending requests */ cancel(): void; /** * * @param data * @param options */ send(data: Uint8Array, options?: ComProtocolSendOptions): Observable; /** * Connect with timeout * * If connect has already been called or is in progress / no further action * * @param options */ connect(options?: ComProtocolConnectOptions): Observable; disconnect(options?: ComProtocolDisconnectOptions): Observable; }