import { EventEmitter } from 'events';
import { Config, CreeveyStatus, ApprovePayload, ServerTest } from '../../types.js';
export default class Runner extends EventEmitter {
    private failFast;
    private screenDir;
    private reportDir;
    private browsers;
    private scheduler;
    private pools;
    tests: Partial<Record<string, ServerTest>>;
    get isRunning(): boolean;
    constructor(config: Config);
    private handlePoolMessage;
    private handlePoolStop;
    init(): Promise<void>;
    updateTests(testsDiff: Partial<Record<string, ServerTest>>): void;
    start(ids: string[]): void;
    stop(): void;
    get status(): CreeveyStatus;
    private copyImage;
    approveAll(): Promise<void>;
    approve({ id, retry, image }: ApprovePayload): Promise<void>;
    private sendUpdate;
}
