import { IBatchAnalyzer, IOptions, ITaskArchived, ITaskDone, ITaskQueued, ITaskRunning } from './IBatchAnalyzer';
/**
 * General batch analysis class
 */
export declare class BatchAnalyzer implements IBatchAnalyzer {
    private readonly options;
    readonly queued: ITaskQueued[];
    readonly running: ITaskRunning[];
    readonly done: ITaskArchived[];
    readonly failed: ITaskArchived[];
    private coolingDown?;
    private disposed;
    constructor(options?: Partial<IOptions>);
    addTask(url: string, source?: string): Promise<ITaskDone>;
    private trigger;
    private runTask;
    private coolDown;
    readonly state: () => {
        queued: ITaskArchived[];
        running: ITaskArchived[];
        done: ITaskArchived[];
        failed: ITaskArchived[];
    };
    readonly taskUpdate: () => void | undefined;
    dispose(): void;
}
