@shockpkg/dir-projector
Version:
Package for creating Shockwave Director projectors
44 lines (43 loc) • 892 B
TypeScript
/**
* A simple queue with optional priority.
*/
export declare class Queue extends Object {
/**
* Queue data.
*/
private _queue_;
constructor();
/**
* Get size of queue.
*
* @returns Total callbacks in queue.
*/
get size(): number;
/**
* Clear queue.
*/
clear(): void;
/**
* Enqueue callback.
*
* @param handler Callback function.
* @param priority Callback priority.
*/
push(handler: () => Promise<any>, priority?: number): void;
/**
* Pop callback off queue.
*
* @returns Callback function or null if empty.
*/
pop(): (() => Promise<any>) | null;
/**
* Shift callback off queue.
*
* @returns Callback function or null if empty.
*/
shift(): (() => Promise<any>) | null;
/**
* Run queue.
*/
run(): Promise<void>;
}