Spaces:
Running
Running
declare function fastq<C, T = any, R = any>(context: C, worker: fastq.worker<C, T, R>, concurrency: number): fastq.queue<T, R> | |
declare function fastq<C, T = any, R = any>(worker: fastq.worker<C, T, R>, concurrency: number): fastq.queue<T, R> | |
declare namespace fastq { | |
type worker<C, T = any, R = any> = (this: C, task: T, cb: fastq.done<R>) => void | |
type asyncWorker<C, T = any, R = any> = (this: C, task: T) => Promise<R> | |
type done<R = any> = (err: Error | null, result?: R) => void | |
type errorHandler<T = any> = (err: Error, task: T) => void | |
interface queue<T = any, R = any> { | |
push(task: T, done?: done<R>): void | |
unshift(task: T, done?: done<R>): void | |
pause(): any | |
resume(): any | |
idle(): boolean | |
length(): number | |
getQueue(): T[] | |
kill(): any | |
killAndDrain(): any | |
error(handler: errorHandler): void | |
concurrency: number | |
drain(): any | |
empty: () => void | |
saturated: () => void | |
} | |
interface queueAsPromised<T = any, R = any> extends queue<T, R> { | |
push(task: T): Promise<R> | |
unshift(task: T): Promise<R> | |
drained(): Promise<void> | |
} | |
function promise<C, T = any, R = any>(context: C, worker: fastq.asyncWorker<C, T, R>, concurrency: number): fastq.queueAsPromised<T, R> | |
function promise<C, T = any, R = any>(worker: fastq.asyncWorker<C, T, R>, concurrency: number): fastq.queueAsPromised<T, R> | |
} | |
export = fastq | |