export interface Queue { hash: (v: T) => string; add(item: T): boolean; remove(hash: string): T | undefined; poll(): T | undefined; has(hash: string): boolean; size(): number; } export declare class SimpleQueue implements Queue { private _map; private _sorted; hash: (v: T) => string; private _compare; constructor(compare: (v1: T, v2: T) => boolean, hash: (v: T) => string); add(item: T): boolean; remove(hash: string): T | undefined; _reSort(): void; poll(): T | undefined; has(hash: string): boolean; size(): number; } export declare function heapSort(queue: Queue, items: T[]): T[]; export type Return = { a: 'POLL'; r: T | undefined; } | { a: 'ADD'; r: boolean; } | { a: 'REMOVE'; r: T | undefined; }; export type Action = (queue: Queue) => Return[]; //# sourceMappingURL=priorityQueueTestHelpers.d.ts.map