@yaruno/priority-queue
Version:
Priority queue implementation in TypeScript
23 lines (21 loc) • 587 B
text/typescript
interface PriorityQueueItem<T> {
value: T;
priority: number;
}
declare class PriorityQueue {
private head;
private tail;
private queueSize;
constructor();
enqueue(value: any, priority: number): number;
peek(): PriorityQueueItem<any> | null;
size(): number;
dequeue(): PriorityQueueItem<any> | null;
clear(): void;
[Symbol.iterator](): Generator<{
value: any;
priority: number;
}, void, unknown>;
drain(): Generator<PriorityQueueItem<any> | null, void, unknown>;
}
export { PriorityQueue, type PriorityQueueItem };