///
///
import {EventEmitter} from 'events';
import {ClientOpts, RedisClient} from 'redis';
declare class BeeQueue extends EventEmitter {
name: string;
keyPrefix: string;
jobs: any;
paused: boolean;
settings: any;
backoffStrategies: Map) => number>;
constructor(name: string, settings?: BeeQueue.QueueSettings);
on(ev: 'ready', fn: () => void): this;
on(ev: 'error', fn: (err: Error) => void): this;
on(ev: 'succeeded', fn: (job: BeeQueue.Job, result: any) => void): this;
on(ev: 'retrying', fn: (job: BeeQueue.Job, err: Error) => void): this;
on(ev: 'failed', fn: (job: BeeQueue.Job, err: Error) => void): this;
on(ev: 'stalled', fn: (jobId: string) => void): this;
on(ev: 'job succeeded', fn: (jobId: string, result: any) => void): this;
on(ev: 'job retrying', fn: (jobId: string, err: Error) => void): this;
on(ev: 'job failed', fn: (jobId: string, err: Error) => void): this;
on(ev: 'job progress', fn: (jobId: string, progress: any) => void): this;
ready(): Promise;
ready(cb?: (err: Error | null) => void): Promise;
isRunning(): boolean;
connect(): Promise;
createJob(data: U): BeeQueue.Job;
getJob(jobId: string, cb: (job: BeeQueue.Job) => void): void;
getJob(jobId: string): Promise>;
getJobs(
type: string,
page: BeeQueue.Page,
cb: (jobs: BeeQueue.Job[]) => void
): void;
getJobs(type: string, page: BeeQueue.Page): Promise[]>;
process(handler: (job: BeeQueue.Job) => Promise): void;
process(
handler: (job: BeeQueue.Job, done: BeeQueue.DoneCallback) => void
): void;
process(
concurrency: number,
handler: (job: BeeQueue.Job) => Promise
): void;
process(
concurrency: number,
handler: (job: BeeQueue.Job, done: BeeQueue.DoneCallback) => void
): void;
checkStalledJobs(interval?: number): Promise;
checkStalledJobs(
interval: number,
cb: (err: Error, numStalled: number) => void
): void;
checkStalledJobs(cb: (err: Error, numStalled: number) => void): void;
checkHealth(): Promise;
checkHealth(cb: (counts: BeeQueue.HealthCheckResult) => void): void;
close(cb: () => void): void;
close(timeout?: number | null): Promise;
close(timeout: number | undefined | null, cb: () => void): void;
isRunning(): boolean;
ready(): Promise;
ready(cb: () => void): Promise;
removeJob(jobId: string): Promise;
removeJob(jobId: string, cb: () => void): void;
destroy(): Promise;
destroy(cb: () => void): void;
saveAll(jobs: BeeQueue.Job[]): Promise