import { Page } from './page'; import { RemoteElement } from './remote-element'; import { CdpNode } from './types'; /** * Maintains stateful CDP DOM client, similar to DevTools "Elements" tab. * * Note: DOM tracking is disabled by default and is only enabled in Autopilot * for selector building features. * * @internal */ export declare class DomManager { page: Page; nodesMap: Map; updatesCounter: number; eventListeners: Array<[string, (...args: any[]) => void]>; constructor(page: Page); enable(): void; disable(): void; invalidate(): void; getNodeById(nodeId: number): CdpNode | null; resolveNodeFromEl(el: RemoteElement): Promise; requestChildNodes(nodeId: number): void; querySelectorAll(nodeId: number, selector: string): Promise; highlightElement(el: RemoteElement): void; highlightNode(node: CdpNode, highlightConfig?: any): void; hideHighlight(): void; convertAttributes(cdpAttributes?: never[]): {}; parseClassList(classAttr: string): string[]; registerNode(parentNode: CdpNode | null, cdpNode: CdpNode): void; unregisterNode(node: CdpNode): void; onSetChildNodes(params: { parentId: number; nodes: CdpNode[]; }): void; onAttributeModified(params: { nodeId: number; name: string; value: string; }): void; onAttributeRemoved(params: { nodeId: number; name: string; }): void; onChildNodeInserted(params: { parentNodeId: number; previousNodeId: number; node: CdpNode; }): void; onChildNodeRemoved(params: { parentNodeId: number; nodeId: number; }): void; onChildNodeCountUpdated(params: { nodeId: number; childNodeCount: number; }): void; onCharacterDataModified(params: { nodeId: number; characterData: string; }): void; onPseudoElementAdded(params: { parentId: number; pseudoElement: CdpNode; }): void; onPseudoElementRemoved(params: { pseudoElementId: number; }): void; } //# sourceMappingURL=dom.d.ts.map