import type { Combinator } from '../types.ts'; import { GRAMMAR_REFLECTION, NODE_TAG, NODE_TYPE } from './reflection-symbols.ts'; export { GRAMMAR_REFLECTION, NODE_TYPE, NODE_TAG } from './reflection-symbols.ts'; export type GrammarNodeReflection = { type: string; tags: readonly string[]; }; export type GrammarReflection = { nodes: readonly GrammarNodeReflection[]; }; export type GrammarWithReflection = { readonly [GRAMMAR_REFLECTION]?: GrammarReflection; readonly [NODE_TYPE]?: NodeType; readonly [NODE_TAG]?: NodeTag; }; export declare function collectGrammarReflection(ruleMap: ReadonlyArray]>, opts?: { followLazy?: boolean; }): GrammarReflection; export declare function mergeGrammarReflections(reflections: readonly GrammarReflection[]): GrammarReflection; export declare function grammarReflectionOf(grammar: object): GrammarReflection | undefined; export declare function grammarReflectionSource(reflection: GrammarReflection): string; //# sourceMappingURL=reflection.d.ts.map