import { BrowserContext } from 'playwright'; import { ActionBlocklist } from '../../utils/blocklist.js'; export interface DiscoveredElement { tag: string; type: 'button' | 'link' | 'input' | 'select' | 'checkbox' | 'radio' | 'tab' | 'other'; text: string; selector: string; disabled: boolean; role?: string; href?: string; inputType?: string; placeholder?: string; } export interface InteractionOutcome { element: string; elementType: string; action: string; result: 'success' | 'error' | 'no_change' | 'dialog_opened' | 'navigated' | 'content_updated' | 'toast_shown' | 'skipped'; details: string; duration_ms: number; } export interface ApiObservation { url: string; method: string; status: number; path: string; responseTime_ms: number; isError: boolean; } export interface PageExploration { route: string; url: string; elements_discovered: number; elements_by_type: Record; interactions: InteractionOutcome[]; api_calls: ApiObservation[]; errors: string[]; duration_ms: number; screenshot_path?: string; } export declare function explorePage(context: BrowserContext, route: string, baseUrl: string, screenshotsDir: string, blocklist?: ActionBlocklist): Promise; export declare function exploreAllPages(context: BrowserContext, routes: string[], baseUrl: string, screenshotsDir: string, blocklist?: ActionBlocklist): Promise;