import { ATNState } from "./atn/ATNState.js";
import { InterpreterRuleContext } from "./InterpreterRuleContext.js";
import { Parser } from "./Parser.js";
import { RecognitionException } from "./RecognitionException.js";
import { Token } from "./Token.js";
import { ATN } from "./atn/ATN.js";
import { Vocabulary } from "./Vocabulary.js";
import { TokenStream } from "./TokenStream.js";
import { ParserRuleContext } from "./ParserRuleContext.js";
import { DecisionState } from "./atn/DecisionState.js";
export declare class ParserInterpreter extends Parser {
    #private;
    rootContext: InterpreterRuleContext;
    overrideDecisionRoot: InterpreterRuleContext | null;
    protected parentContextStack: Array<[ParserRuleContext | null, number]>;
    private overrideDecisionAlt;
    private overrideDecisionReached;
    private decisionToDFA;
    private sharedContextCache;
    private pushRecursionContextStates;
    constructor(grammarFileName: string, vocabulary: Vocabulary, ruleNames: string[], atn: ATN, input: TokenStream);
    reset(): void;
    get atn(): ATN;
    get vocabulary(): Vocabulary;
    get ruleNames(): string[];
    get grammarFileName(): string;
    get atnState(): ATNState;
    parse(startRuleIndex: number): ParserRuleContext;
    addDecisionOverride(decision: number, tokenIndex: number, forcedAlt: number): void;
    get overrideDecision(): number;
    get overrideDecisionInputIndex(): number;
    enterRecursionRule(localctx: ParserRuleContext, state: number, ruleIndex: number, precedence: number): void;
    get serializedATN(): number[];
    protected visitState(p: ATNState): void;
    protected visitDecisionState(p: DecisionState): number;
    protected createInterpreterRuleContext(parent: ParserRuleContext | null, invokingStateNumber: number, ruleIndex: number): InterpreterRuleContext;
    protected visitRuleStopState(p: ATNState): void;
    protected recover(e: RecognitionException): void;
    protected recoverInline(): Token;
}
