import type { Combinator } from '../types.ts'; /** * Does this rule body have a position OF ITS OWN at which ambient trivia is * consulted? * * This is the gate on re-establishing a rule's ambient trivia when it is * referenced from a region that CLEARED it (`ref.ts` in the interpreter, * `Encoder.scopedRef` in the table — both must ask the same question, or the two * engines parse different languages again). * * A body with no such position — a bare alternation, a dispatch, a single * terminal — cannot be repaired by installing a scanner, because it never * consults one. Installing it there changes nothing about the rule and * everything about what its arms delegate to, which is how a `noTrivia(...)` * region stopped meaning anything two references down. * * `lazy` is deliberately false and is never followed: a reference is the * delegation this question is about, so following it would both loop and answer * for a different rule. `grammar` is false because it declares its own scope, so * an outer install never reaches its body. `dispatch` is false because it is a * ROUTE: its arms re-enter from the routed token and spell their own padding. * * Structural and pure — callers resolve it ONCE, not per parse. */ export declare function hasOwnTriviaBoundary(p: Combinator, depth?: number): boolean; //# sourceMappingURL=trivia-boundary.d.ts.map