/** * Introspector — Walks the React component tree to discover interactive elements. * * This module traverses React's internal fiber tree to find components * that are interactive (buttons, inputs, scrollviews, etc.) and extracts * their metadata (testID, accessibility props, handlers, layout). * * The introspector runs periodically and updates the ElementRegistry. */ import type { ElementInfo, ElementHandlers } from './types'; interface FiberNode { tag: number; type: any; stateNode: any; memoizedProps: Record; child: FiberNode | null; sibling: FiberNode | null; return: FiberNode | null; key: string | null; ref: any; _debugOwner?: FiberNode; _debugSource?: { fileName: string; lineNumber: number; }; } export interface IntrospectedElement { id: string; info: Omit; ref: React.RefObject; handlers: ElementHandlers; } /** * Main introspection function. Accepts a React root ref and returns * all discovered interactive elements. */ export declare function introspect(rootRef: React.RefObject, includeNonInteractive?: boolean): IntrospectedElement[]; /** * Extract text content from a fiber node's children. */ export declare function extractTextContent(fiber: FiberNode): string; export {}; //# sourceMappingURL=Introspector.d.ts.map