/** * Advanced UI probes — detect and exercise drag-drop, date pickers, sliders, * and typeahead/autocomplete widgets on a crawled page. * * Results feed ZeTa's test generator so it can emit interaction-level test * cases for these widget families instead of falling back to generic clicks. * * Each probe is independently try/caught so a broken widget does not abort * the others. All browser-side code runs inside page.evaluate / page.$$eval * to avoid serialisation issues with DOM handles. */ import type { Page } from 'playwright'; export interface DragDropCapture { library: 'html5' | 'dnd-kit' | 'react-beautiful-dnd' | 'sortablejs' | 'pointer-event' | 'none'; draggableCount: number; dropZoneCount: number; testAttempted: boolean; testCompleted: boolean; } export interface DatePickerCapture { fieldLabel: string; pickerType: 'calendar-popup' | 'native-date' | 'native-datetime' | 'none'; minDate?: string; maxDate?: string; disabledDatesFound: boolean; sampleSelectedValue?: string; } export interface SliderCapture { label: string; min: number; max: number; step: number; currentValue: number; } export interface TypeaheadCapture { label: string; minCharsToTrigger: number; sampleSuggestions: string[]; noResultsText: string | null; } export interface AdvancedProbeResult { dragDrop: DragDropCapture; datePickers: DatePickerCapture[]; sliders: SliderCapture[]; typeaheads: TypeaheadCapture[]; } export declare function probeAdvancedUI(page: Page): Promise;