import { ActionAST } from "../tool/ast/ActionAST.js"; import { Grammar } from "../tool/Grammar.js"; import { LexerGrammar } from "../tool/LexerGrammar.js"; import { Rule } from "../tool/Rule.js"; /** Look for errors and dead code stuff */ export declare class UseDefAnalyzer { static trackTokenRuleRefsInActions(g: Grammar): void; static actionIsContextDependent(actionAST: ActionAST): boolean; /** Find all rules reachable from r directly or indirectly for all r in g */ static getRuleDependencies(g: Grammar): Map>; static getRuleDependencies(g: LexerGrammar, modeName: string): Map>; static getRuleDependencies(g: Grammar, rules: Rule[]): Map>; }