///
import { Logger } from "pino";
import { Closable } from "../Closable";
export declare class JobDistributor implements Closable {
private readonly fetch;
private readonly run;
private readonly logger?;
readonly maxJobs: number;
private readonly autoCheckEvery;
private readonly jobs;
private isClosed;
get load(): number;
get isPacked(): boolean;
constructor(fetch: () => Promise<[
"empty"
] | ["retry"] | ["success", T] | ["wait", number]>, run: (job: T) => Promise, logger?: Logger | undefined, maxJobs?: number, autoCheckEvery?: number);
start(): Promise;
private workOn;
setTimeout: (cb: () => void, timeout: number) => NodeJS.Timeout;
private delayAutoCheck;
nextCheck: {
handle: NodeJS.Timeout;
time: number;
} | null;
private checkAgainAfter;
checkForNewJobs(): Promise;
close(): void;
}
//# sourceMappingURL=job-distributor.d.ts.map