123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175 |
- import './_version.js';
- interface OnSyncCallbackOptions {
- queue: Queue;
- }
- interface OnSyncCallback {
- (options: OnSyncCallbackOptions): void | Promise<void>;
- }
- export interface QueueOptions {
- forceSyncFallback?: boolean;
- maxRetentionTime?: number;
- onSync?: OnSyncCallback;
- }
- interface QueueEntry {
- request: Request;
- timestamp?: number;
- metadata?: object;
- }
- declare class Queue {
- private readonly _name;
- private readonly _onSync;
- private readonly _maxRetentionTime;
- private readonly _queueStore;
- private readonly _forceSyncFallback;
- private _syncInProgress;
- private _requestsAddedDuringSync;
-
- constructor(name: string, { forceSyncFallback, onSync, maxRetentionTime }?: QueueOptions);
-
- get name(): string;
-
- pushRequest(entry: QueueEntry): Promise<void>;
-
- unshiftRequest(entry: QueueEntry): Promise<void>;
-
- popRequest(): Promise<QueueEntry | undefined>;
-
- shiftRequest(): Promise<QueueEntry | undefined>;
-
- getAll(): Promise<Array<QueueEntry>>;
-
- size(): Promise<number>;
-
- _addRequest({ request, metadata, timestamp }: QueueEntry, operation: 'push' | 'unshift'): Promise<void>;
-
- _removeRequest(operation: 'pop' | 'shift'): Promise<QueueEntry | undefined>;
-
- replayRequests(): Promise<void>;
-
- registerSync(): Promise<void>;
-
- private _addSyncListener;
-
- static get _queueNames(): Set<string>;
- }
- export { Queue };
|