import * as t from "@babel/types"; import type { NodePath, PluginPass } from "@babel/core"; import type { Ctx } from "../context"; type State = PluginPass; /** * Diagnostics. These never alter the output — they only emit code-frame * warnings to surface mistakes that would otherwise fail silently: * * - a broken reactive chain: a signal assigned to a non-`$` variable; * - a naming-contract violation: a `$`-prefixed declaration that cannot * become a signal (`let $a;`), or a `function $foo(){}` that is neither a * `$use*` hook nor an uppercase component. */ export declare const createDiagnosticsVisitor: (ctx: Ctx) => { VariableDeclarator?: undefined; AssignmentExpression?: undefined; FunctionDeclaration?: undefined; } | { VariableDeclarator(path: NodePath, _state: State): void; AssignmentExpression(path: NodePath, _state: State): void; FunctionDeclaration(path: NodePath, _state: State): void; }; export {};