import * as TSU from "@panyam/tsutils"; import { Str, Sym, Grammar } from "./grammar"; export declare function removeUselessSymbols(g: Grammar, fromSymbol?: TSU.Nullable): void; export declare function expandNullProductions(grammar: Grammar, str: Str, results?: TSU.StringMap): TSU.StringMap; export declare function removeNullProductions(grammar: Grammar, nt?: TSU.Nullable): void; export declare function removeCycles(grammar: Grammar): void; export declare function hasDirectLeftRecursion(sym: Sym, grammar: Grammar): boolean; export declare function leftFactor(grammar: Grammar, nt?: TSU.Nullable): void; export declare function removeDirectLeftRecursion(grammar: Grammar, nt?: TSU.Nullable): void; export declare function removeIndirectLeftRecursion(grammar: Grammar): void;