import { Executor } from '../executors/Executor';
import Reporter, { ReporterProperties } from './Reporter';
import Test from '../Test';
import Suite from '../Suite';
export default class Html extends Reporter implements HtmlProperties {
    document: Document;
    location: Location;
    protected _reportContainer: Element | undefined;
    protected _reportControls: Element | undefined;
    protected _reportNode: Element | undefined;
    protected _summaryNode: Element | undefined;
    protected _summaryNodes: Element[];
    protected _suiteCount: number;
    protected _testCount: number;
    protected _testsInSuite: number;
    protected _testIndex: number;
    protected _processedTests: any;
    protected _failedFilter: any;
    protected _fragment: DocumentFragment;
    protected _indentLevel: number;
    protected _runningSuites: any;
    constructor(executor: Executor, options?: HtmlOptions);
    protected _generateSummary(suite: Suite): void;
    protected _injectCSS(): void;
    protected _getIndentLevel(node: Element): number;
    protected _setCollapsed(node: Element, shouldCollapse?: boolean): void;
    error(error: Error): void;
    runStart(): void;
    suiteStart(suite: Suite): void;
    suiteEnd(suite: Suite): void;
    testEnd(test: Test): void;
    private createLinkNode(obj);
}
export interface HtmlProperties extends ReporterProperties {
    document: Document;
    location: Location;
}
export declare type HtmlOptions = Partial<HtmlProperties>;
