import { CDPConnection } from "../connection";
import { CDPEventEmitter } from "../emitter";
import type { CDPSessionId } from "../types";
export interface DomEvents {
    attributeModified: Record<string, unknown>;
    attributeRemoved: Record<string, unknown>;
    characterDataModified: Record<string, unknown>;
    childNodeCountUpdated: Record<string, unknown>;
    childNodeInserted: Record<string, unknown>;
    childNodeRemoved: Record<string, unknown>;
    documentUpdated: Record<string, unknown>;
    setChildNodes: Record<string, unknown>;
}
/** @link https://chromedevtools.github.io/devtools-protocol/1-3/Dom/ */
export declare class CDPDom extends CDPEventEmitter<DomEvents> {
    private readonly _connection;
    constructor(connection: CDPConnection);
    /** @param sessionId result of "Target.attachToTarget" */
    /** @link https://chromedevtools.github.io/devtools-protocol/1-3/DOM/#method-enable */
    enable(sessionId: CDPSessionId): Promise<void>;
    /** @param sessionId result of "Target.attachToTarget" */
    /** @link https://chromedevtools.github.io/devtools-protocol/1-3/DOM/#method-disable */
    disable(sessionId: CDPSessionId): Promise<void>;
}
