import { SuiteConfig } from "./config";
import { SuiteExecutionResult } from "./suiteexecution";
export declare class TestRunner {
    private _suiteConfigs;
    private _executionResults;
    private _timeStart;
    private _subscribers;
    get suites(): SuiteConfig[];
    get results(): SuiteExecutionResult[];
    get exitCode(): number;
    get allPassing(): boolean;
    subscribe(callback: Function): void;
    addSuite(suiteConfig: SuiteConfig): void;
    run(): Promise<SuiteExecutionResult[]>;
    runSpawn(): Promise<SuiteExecutionResult[]>;
    protected _runSpawn(): Promise<SuiteExecutionResult[]>;
    protected _runSpawnAync(): Promise<SuiteExecutionResult[]>;
    private _onDone;
    toString(): string;
    protected _publish(message: string): void;
}
