import { MultiRange, Initializer as MultiRangeInitializer } from 'multi-integer-range'; declare type InvokedFunction = (integer: number) => Promise; declare type Options = { resolved?: MultiRangeInitializer; }; /** * Asynchronously invokes the specified callback function * for each integer specified via append(). * The callback is invoked only once for each integer. * This class is backed by PriorityIntegerQueue. */ export default class PriorityIntegerCaller { private fn; private queue; private inOperation; private processing; readonly resolvedRange: MultiRange; readonly rejectedRange: MultiRange; private callbacks; constructor(fn: InvokedFunction, options?: Options); append(target: MultiRangeInitializer, priority?: number): void; waitFor(target: MultiRangeInitializer): Promise; private markAsResolved; private markAsRejected; private processCallbacks; private next; } export {};