import * as Promise from 'bluebird';
import { ITestSuite } from './ITestSuite';
import File from '../file/File';
import Timer from '../util/Timer';
import TestQueue from '../test/TestQueue';
import TestResult from '../test/TestResult';
import { ITestOptions } from '../test/ITestOptions';
import { ITestReporter } from '../reporter/ITestReporter';
export default class TestSuiteBase implements ITestSuite {
    testSuiteName: string;
    errorHeadline: string;
    options: ITestOptions;
    timer: Timer;
    testResults: TestResult[];
    testReporter: ITestReporter;
    printErrorCount: boolean;
    queue: TestQueue;
    constructor(options: ITestOptions, testSuiteName: string, errorHeadline: string);
    start(targetFiles: File[], testCallback: (result: TestResult) => void): Promise<ITestSuite>;
    runTest(targetFile: File): Promise<TestResult>;
    readonly okTests: TestResult[];
    readonly ngTests: TestResult[];
}
