import type { Rule } from "../types.js"; interface StaticInteractiveHit { tag: string; line: number; column: number; } /** * Walk JSX once for lowercase (native) elements that carry a click handler. * Returns the offenders (handler + no role) and the total count of static * interactive elements (the scored denominator). Custom PascalCase components * are skipped (the handler is a prop, not a DOM element). An element with a * spread (`{...props}`) is skipped entirely — `role` may be forwarded through * the spread, invisible to the AST, so flagging it would be a false positive. */ declare function scanStaticInteractive(source: string): { offenders: StaticInteractiveHit[]; total: number; }; declare function isAllowlisted(repoRoot: string): boolean; export declare const rule: Rule; export declare const _internal: { scanStaticInteractive: typeof scanStaticInteractive; isAllowlisted: typeof isAllowlisted; DISABLE_DIRECTIVE: string; }; export {};