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