import * as TSU from "@panyam/tsutils"; import { Str, Grammar, Rule } from "../grammar"; import { FirstSets, NullableSet, FollowSets } from "../sets"; import { LRAction } from "../lr"; import { LRItemGraph } from "../lritems"; type StringMap = TSU.StringMap; export declare function Goto(ig: LRItemGraph, newState: number): LRAction; export declare function Shift(itemGraph: LRItemGraph, newState: number): LRAction; export declare function Reduce(rule: Rule): LRAction; export declare function listsEqual(l1: string[], l2: string[]): boolean; export declare function expectNullables(nullables: NullableSet, terms: string[]): void; export declare function expectFSEntries(g: Grammar, fs: FirstSets | FollowSets, entries: StringMap): void; export declare function expectRules(g: Grammar, nt: string, ...rules: (string | Str)[]): void; export declare function verifyItemGraphs(ig: LRItemGraph, entries: any, debug?: boolean): boolean; export declare function verifyLLParseTable(name: string, g: Grammar, actions: StringMap>, debug?: boolean): boolean; export declare function testParseTable(grammarFile: string, ptablesFile: string, ptabType: "lr1" | "slr" | "lalr", debug?: string): void; export {};