/** * DOM watchdog for browser DOM tree management * * This watchdog acts as a bridge between the event-driven browser session * and the DOM service implementation, maintaining cached state and providing * helper methods for other watchdogs. */ import { BaseWatchdog } from './base'; import { BrowserSession } from '../session'; import { TabCreatedEvent, BrowserStateRequestEvent, BrowserErrorEvent } from '../events-classes'; import { BrowserStateSummary } from '../views'; import { SerializedDOMState, EnhancedDOMTreeNode } from '../../dom/views'; export interface DOMWatchdogConfig { enabled?: boolean; } export declare class DOMWatchdog extends BaseWatchdog { static readonly LISTENS_TO: (typeof TabCreatedEvent | typeof BrowserStateRequestEvent)[]; static readonly EMITS: (typeof BrowserErrorEvent)[]; selectorMap: Map | null; currentDomState: SerializedDOMState | null; enhancedDomTree: EnhancedDOMTreeNode | null; private domService; constructor(browserSession: BrowserSession, config?: DOMWatchdogConfig); onTabCreatedEvent(event: TabCreatedEvent): Promise; private getRecentEventsStr; onBrowserStateRequestEvent(event: BrowserStateRequestEvent): Promise; private buildDomTree; private waitForStableNetwork; private getPageInfo; getElementByIndex(index: number): Promise; clearCache(): void; isFileInput(element: EnhancedDOMTreeNode): boolean; cleanup(): Promise; } //# sourceMappingURL=dom.d.ts.map