declare type TaskResult = { kind: "resolved"; value: T; } | { kind: "discarded"; }; interface QueueController { discard(): void; } export declare class ControlledQueue { private queue; private queueLoopPromise; private discardQueue; private queueLoop; exec(pfn: (controller: QueueController) => Promise): Promise>; } export {};