/** * Return lexical reads that cannot cross an artifact boundary. This is an Oxc * AST binding check, never a source-text heuristic: property names and plain * object keys are not lexical reads. The result becomes inert metadata on the * macro-produced node and is enforced later by the runtime IR re-lowerer. * * Kept as the combined `structural ++ free` list so every existing caller and the * standalone unit gate see one flat array. `directBuilderBindings` exposes the * split the provenance path needs. */ export declare function directBuilderUnsupportedBindings(src: string): string[]; /** * The analysis, SPLIT into two kinds of unsupported binding: * * - `structural` — a refusal no provenance can rescue: an un-analyzable node * kind, a non-Identifier parameter, `this` / `arguments`, an async or generator * reducer. These fail closed and fall back to the interpreter. * - `free` — a plain lexical read of a name declared OUTSIDE the builder. Such a * name is a refusal on its own, but it CAN be re-bound in a downstream module if * that module re-emits the import it came from. The evaluator resolves each free * name against the authoring module's imports: one that resolves is carried as * import provenance; one that does not stays a refusal. */ export declare function directBuilderBindings(src: string): { structural: string[]; free: string[]; }; //# sourceMappingURL=direct-builder-static.d.ts.map