import { BaseTestsTreeBuilder, BaseTestsTreeBuilderOptions, Tree } from './base';
import { ReporterTestResult } from '../test-adapter';
import { RawSuitesRow } from '../types';
interface Stats {
    total: number;
    passed: number;
    failed: number;
    skipped: number;
    retries: number;
}
type FinalStats = Stats & {
    perBrowser: {
        [browserName: string]: {
            [browserVersion: string]: Stats;
        };
    };
};
export interface SkipItem {
    browser: string;
    suite: string;
    comment?: string;
}
interface BrowserItem {
    id: string;
    versions: string[];
}
export interface StaticTestsTreeBuilderOptions extends BaseTestsTreeBuilderOptions {
}
export declare class StaticTestsTreeBuilder extends BaseTestsTreeBuilder {
    protected _stats: FinalStats;
    protected _skips: SkipItem[];
    protected _failedTestIds: {
        [key: string]: boolean;
    };
    protected _passedTestIds: {
        [key: string]: boolean;
    };
    protected _skippedTestIds: {
        [key: string]: boolean;
    };
    constructor(options: StaticTestsTreeBuilderOptions);
    build(rows?: RawSuitesRow[]): {
        tree: Tree;
        stats: FinalStats;
        skips: SkipItem[];
        browsers: BrowserItem[];
    };
    protected _addResultIdToBrowser(browserId: string, testResultId: string): void;
    protected _calcStats(testResult: ReporterTestResult, { testId, browserName }: {
        testId: string;
        browserName: string;
    }): void;
}
export {};
