import type { Config } from "../../../config";
import type { MainRunner } from "../../../runner";
import type { Test } from "../../../types";
interface SelectivityRunnerOptions {
    shouldDisableSelectivity?: boolean;
}
export declare class SelectivityRunner {
    private readonly _config;
    private readonly _runTestFn;
    private readonly _opts?;
    private readonly _browserSelectivityDisabledCache;
    private readonly _testsToRun;
    private readonly _processingTestLimit;
    private readonly _processingTestPromises;
    private readonly _stats;
    private readonly _usedDumpsTracker;
    static create(...args: ConstructorParameters<typeof this>): SelectivityRunner;
    constructor(mainRunner: MainRunner, config: Config, runTestFn: (test: Test, browserId: string) => void, opts?: SelectivityRunnerOptions);
    private _shouldDisableSelectivityForBrowser;
    startTestCheckToRun(test: Test, browserId: string): void;
    runNecessaryTests(): Promise<void>;
    _saveSelectivityReport(): Promise<void>;
}
export {};
