import { Terminal } from "./Terminal.js";
import { NonTerminal } from "./NonTerminal.js";
import { Production } from "./Production.js";
import { Sym } from "./Symbol.js";
declare class BNF {
    static readonly ARTIFICIAL_START_SYMBOL: NonTerminal;
    static readonly ARTIFICIAL_STOP_SYMBOL: Terminal;
    readonly symbols: Map<string, Sym>;
    readonly productions: Production[];
    constructor(other?: BNF);
    reset(): void;
    removeStartProduction(): void;
    addProduction(p: Production): Production;
    getSymbol(symbol: string): Sym;
    getProductions(left: NonTerminal): Production[];
    toString(): string;
}
export { BNF };
//# sourceMappingURL=BNF.d.ts.map