import type { CDP } from "..";
import type { CDPSessionId } from "../types";
import type { SelectivityMapSourceMapUrlFn } from "../../../config/types";
export declare class CSSSelectivity {
    private readonly _cdp;
    private readonly _cdpSessionId;
    private readonly _wdSessionId;
    private readonly _sourceRoot;
    private readonly _mapSourceMapUrl;
    private _cssOnStyleSheetAddedFn;
    private readonly _stylesSourceMap;
    private readonly _styleSheetIdToSourceMapUrl;
    private readonly _coverageResult;
    constructor(cdp: CDP, cdpSessionId: CDPSessionId, wdSessionId: string, sourceRoot: string, mapSourceMapUrl: SelectivityMapSourceMapUrlFn | null);
    private _processStyle;
    private _ensureStylesAreLoading;
    private _waitForLoadingStyles;
    private _saveSessionCache;
    private _loadSessionCache;
    start(): Promise<void>;
    takeCoverageSnapshot(): Promise<void>;
    /** @param drop only performs cleanup without providing actual deps. Should be "true" if test is failed */
    stop(drop?: boolean): Promise<Set<string> | null>;
}
