UNPKG

931 BTypeScriptView Raw
1/**
2 * A simple queue with optional priority.
3 */
4export declare class Queue {
5 /**
6 * Queue data.
7 */
8 private _queue_;
9 /**
10 * Queue constructor.
11 */
12 constructor();
13 /**
14 * Get size of queue.
15 *
16 * @returns Total callbacks in queue.
17 */
18 get size(): number;
19 /**
20 * Clear queue.
21 */
22 clear(): void;
23 /**
24 * Enqueue callback.
25 *
26 * @param handler Callback function.
27 * @param priority Callback priority.
28 */
29 push(handler: () => Promise<unknown>, priority?: number): void;
30 /**
31 * Pop callback off queue.
32 *
33 * @returns Callback function or null if empty.
34 */
35 pop(): (() => Promise<unknown>) | null;
36 /**
37 * Shift callback off queue.
38 *
39 * @returns Callback function or null if empty.
40 */
41 shift(): (() => Promise<unknown>) | null;
42 /**
43 * Run queue.
44 */
45 run(): Promise<void>;
46}