import { iSuite, iScenario, SuiteStatusCallback, SuiteCallback, ScenarioCallback } from "./interfaces";
export declare class SuiteTaskManager {
    private _suite;
    private _scenarios;
    private _dateInitialized;
    private _dateStarted;
    private _dateExecutionBegan;
    private _dateExecutionCompleted;
    private _dateFinished;
    private _beforeAllCallbacks;
    private _afterAllCallbacks;
    private _successCallbacks;
    private _failureCallbacks;
    private _finallyCallbacks;
    private _beforeEachCallbacks;
    private _afterEachCallbacks;
    private _statusCallbacks;
    private _concurrencyLimit;
    private _maxTimeToWaitForPendingScenariosToBeReady;
    private _finishedPromise;
    private _finishedResolve;
    get finished(): Promise<void>;
    get concurrencyLimit(): number;
    set concurrencyLimit(value: number);
    get scenarioCount(): number;
    get hasStarted(): boolean;
    get hasExecutionBegan(): boolean;
    get hasExecutionCompleted(): boolean;
    get hasFinished(): boolean;
    get canAllSuitesExecute(): boolean;
    get haveAnyFailed(): boolean;
    get haveAllPassed(): boolean;
    get totalDuration(): number | null;
    get executionDuration(): number | null;
    get scenarios(): iScenario[];
    get scenariosNotReadyToExecute(): iScenario[];
    get scenariosReadyToExecute(): iScenario[];
    get scenariosFailed(): iScenario[];
    get scenariosWaitingToExecute(): iScenario[];
    get scenariosCurrentlyExcuting(): iScenario[];
    constructor(suite: iSuite);
    beforeAll(message: string, callback: SuiteCallback, prepend?: boolean): void;
    beforeAll(callback: SuiteCallback, prepend?: boolean): void;
    beforeEach(message: string, callback: ScenarioCallback, prepend?: boolean): void;
    beforeEach(callback: ScenarioCallback, prepend?: boolean): void;
    afterAll(message: string, callback: SuiteCallback, prepend?: boolean): void;
    afterAll(callback: SuiteCallback, prepend?: boolean): void;
    afterEach(message: string, callback: ScenarioCallback, prepend?: boolean): void;
    afterEach(callback: ScenarioCallback, prepend?: boolean): void;
    failure(message: string, callback: SuiteCallback, prepend?: boolean): void;
    failure(callback: SuiteCallback, prepend?: boolean): void;
    success(message: string, callback: SuiteCallback, prepend?: boolean): void;
    success(callback: SuiteCallback, prepend?: boolean): void;
    finally(message: string, callback: SuiteCallback, prepend?: boolean): void;
    finally(callback: SuiteCallback, prepend?: boolean): void;
    registerScenario(scenario: iScenario): void;
    subscribe(callback: SuiteStatusCallback): void;
    private _go;
    private _executeScenarios;
    private _waitForScenariosToFinish;
    private _startExecutingScenarios;
    private _markSuiteExecutionAsCompleted;
    private _executeScenario;
    private _fireSuiteCallbacks;
    private _fireScenarioCallbacks;
    private _addCallback;
}
