import { ErrorNode, ParseTreeListener, ParserRuleContext, TerminalNode } from 'antlr4ng';
import { ParseContext, SelfExpressionContext, UnaryMinusExpressionContext, NotExpressionContext, LiteralExpressionContext, IdentifierExpressionContext, ParenthesesExpressionContext, PowerExpressionContext, MultiplyDivideModExpressionContext, AddSubtractExpressionContext, ComparisonExpressionContext, InExpressionContext, EqualityExpressionContext, AndExpressionContext, XorExpressionContext, OrExpressionContext, ImpliesExpressionContext, TernaryExpressionContext, FunctionCallExpressionContext, NavigationExpressionContext, IndexAccessExpressionContext, NumericLiteralAltContext, StringLiteralAltContext, BooleanTrueLiteralAltContext, BooleanFalseLiteralAltContext, TemporalLiteralAltContext, NullLiteralAltContext, EnumLiteralAltContext, EnumLiteralContext, QualifiedNameContext, DateLiteralContext, TimestampLiteralContext, TimeLiteralContext, TodayLiteralContext, YesterdayLiteralContext, TomorrowLiteralContext, ArgumentListContext, ArgumentContext, IteratorArgumentContext } from './IdemParser.js';
/**
 * This interface defines a complete listener for a parse tree produced by
 * `IdemParser`.
 */
export declare class IdemListener implements ParseTreeListener {
    /**
     * Enter a parse tree produced by `IdemParser.parse`.
     * @param ctx the parse tree
     */
    enterParse?: (ctx: ParseContext) => void;
    /**
     * Exit a parse tree produced by `IdemParser.parse`.
     * @param ctx the parse tree
     */
    exitParse?: (ctx: ParseContext) => void;
    /**
     * Enter a parse tree produced by the `selfExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    enterSelfExpression?: (ctx: SelfExpressionContext) => void;
    /**
     * Exit a parse tree produced by the `selfExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    exitSelfExpression?: (ctx: SelfExpressionContext) => void;
    /**
     * Enter a parse tree produced by the `unaryMinusExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    enterUnaryMinusExpression?: (ctx: UnaryMinusExpressionContext) => void;
    /**
     * Exit a parse tree produced by the `unaryMinusExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    exitUnaryMinusExpression?: (ctx: UnaryMinusExpressionContext) => void;
    /**
     * Enter a parse tree produced by the `notExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    enterNotExpression?: (ctx: NotExpressionContext) => void;
    /**
     * Exit a parse tree produced by the `notExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    exitNotExpression?: (ctx: NotExpressionContext) => void;
    /**
     * Enter a parse tree produced by the `literalExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    enterLiteralExpression?: (ctx: LiteralExpressionContext) => void;
    /**
     * Exit a parse tree produced by the `literalExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    exitLiteralExpression?: (ctx: LiteralExpressionContext) => void;
    /**
     * Enter a parse tree produced by the `identifierExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    enterIdentifierExpression?: (ctx: IdentifierExpressionContext) => void;
    /**
     * Exit a parse tree produced by the `identifierExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    exitIdentifierExpression?: (ctx: IdentifierExpressionContext) => void;
    /**
     * Enter a parse tree produced by the `parenthesesExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    enterParenthesesExpression?: (ctx: ParenthesesExpressionContext) => void;
    /**
     * Exit a parse tree produced by the `parenthesesExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    exitParenthesesExpression?: (ctx: ParenthesesExpressionContext) => void;
    /**
     * Enter a parse tree produced by the `powerExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    enterPowerExpression?: (ctx: PowerExpressionContext) => void;
    /**
     * Exit a parse tree produced by the `powerExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    exitPowerExpression?: (ctx: PowerExpressionContext) => void;
    /**
     * Enter a parse tree produced by the `multiplyDivideModExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    enterMultiplyDivideModExpression?: (ctx: MultiplyDivideModExpressionContext) => void;
    /**
     * Exit a parse tree produced by the `multiplyDivideModExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    exitMultiplyDivideModExpression?: (ctx: MultiplyDivideModExpressionContext) => void;
    /**
     * Enter a parse tree produced by the `addSubtractExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    enterAddSubtractExpression?: (ctx: AddSubtractExpressionContext) => void;
    /**
     * Exit a parse tree produced by the `addSubtractExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    exitAddSubtractExpression?: (ctx: AddSubtractExpressionContext) => void;
    /**
     * Enter a parse tree produced by the `comparisonExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    enterComparisonExpression?: (ctx: ComparisonExpressionContext) => void;
    /**
     * Exit a parse tree produced by the `comparisonExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    exitComparisonExpression?: (ctx: ComparisonExpressionContext) => void;
    /**
     * Enter a parse tree produced by the `inExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    enterInExpression?: (ctx: InExpressionContext) => void;
    /**
     * Exit a parse tree produced by the `inExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    exitInExpression?: (ctx: InExpressionContext) => void;
    /**
     * Enter a parse tree produced by the `equalityExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    enterEqualityExpression?: (ctx: EqualityExpressionContext) => void;
    /**
     * Exit a parse tree produced by the `equalityExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    exitEqualityExpression?: (ctx: EqualityExpressionContext) => void;
    /**
     * Enter a parse tree produced by the `andExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    enterAndExpression?: (ctx: AndExpressionContext) => void;
    /**
     * Exit a parse tree produced by the `andExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    exitAndExpression?: (ctx: AndExpressionContext) => void;
    /**
     * Enter a parse tree produced by the `xorExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    enterXorExpression?: (ctx: XorExpressionContext) => void;
    /**
     * Exit a parse tree produced by the `xorExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    exitXorExpression?: (ctx: XorExpressionContext) => void;
    /**
     * Enter a parse tree produced by the `orExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    enterOrExpression?: (ctx: OrExpressionContext) => void;
    /**
     * Exit a parse tree produced by the `orExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    exitOrExpression?: (ctx: OrExpressionContext) => void;
    /**
     * Enter a parse tree produced by the `impliesExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    enterImpliesExpression?: (ctx: ImpliesExpressionContext) => void;
    /**
     * Exit a parse tree produced by the `impliesExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    exitImpliesExpression?: (ctx: ImpliesExpressionContext) => void;
    /**
     * Enter a parse tree produced by the `ternaryExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    enterTernaryExpression?: (ctx: TernaryExpressionContext) => void;
    /**
     * Exit a parse tree produced by the `ternaryExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    exitTernaryExpression?: (ctx: TernaryExpressionContext) => void;
    /**
     * Enter a parse tree produced by the `functionCallExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    enterFunctionCallExpression?: (ctx: FunctionCallExpressionContext) => void;
    /**
     * Exit a parse tree produced by the `functionCallExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    exitFunctionCallExpression?: (ctx: FunctionCallExpressionContext) => void;
    /**
     * Enter a parse tree produced by the `navigationExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    enterNavigationExpression?: (ctx: NavigationExpressionContext) => void;
    /**
     * Exit a parse tree produced by the `navigationExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    exitNavigationExpression?: (ctx: NavigationExpressionContext) => void;
    /**
     * Enter a parse tree produced by the `indexAccessExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    enterIndexAccessExpression?: (ctx: IndexAccessExpressionContext) => void;
    /**
     * Exit a parse tree produced by the `indexAccessExpression`
     * labeled alternative in `IdemParser.expression`.
     * @param ctx the parse tree
     */
    exitIndexAccessExpression?: (ctx: IndexAccessExpressionContext) => void;
    /**
     * Enter a parse tree produced by the `numericLiteralAlt`
     * labeled alternative in `IdemParser.literal`.
     * @param ctx the parse tree
     */
    enterNumericLiteralAlt?: (ctx: NumericLiteralAltContext) => void;
    /**
     * Exit a parse tree produced by the `numericLiteralAlt`
     * labeled alternative in `IdemParser.literal`.
     * @param ctx the parse tree
     */
    exitNumericLiteralAlt?: (ctx: NumericLiteralAltContext) => void;
    /**
     * Enter a parse tree produced by the `stringLiteralAlt`
     * labeled alternative in `IdemParser.literal`.
     * @param ctx the parse tree
     */
    enterStringLiteralAlt?: (ctx: StringLiteralAltContext) => void;
    /**
     * Exit a parse tree produced by the `stringLiteralAlt`
     * labeled alternative in `IdemParser.literal`.
     * @param ctx the parse tree
     */
    exitStringLiteralAlt?: (ctx: StringLiteralAltContext) => void;
    /**
     * Enter a parse tree produced by the `booleanTrueLiteralAlt`
     * labeled alternative in `IdemParser.literal`.
     * @param ctx the parse tree
     */
    enterBooleanTrueLiteralAlt?: (ctx: BooleanTrueLiteralAltContext) => void;
    /**
     * Exit a parse tree produced by the `booleanTrueLiteralAlt`
     * labeled alternative in `IdemParser.literal`.
     * @param ctx the parse tree
     */
    exitBooleanTrueLiteralAlt?: (ctx: BooleanTrueLiteralAltContext) => void;
    /**
     * Enter a parse tree produced by the `booleanFalseLiteralAlt`
     * labeled alternative in `IdemParser.literal`.
     * @param ctx the parse tree
     */
    enterBooleanFalseLiteralAlt?: (ctx: BooleanFalseLiteralAltContext) => void;
    /**
     * Exit a parse tree produced by the `booleanFalseLiteralAlt`
     * labeled alternative in `IdemParser.literal`.
     * @param ctx the parse tree
     */
    exitBooleanFalseLiteralAlt?: (ctx: BooleanFalseLiteralAltContext) => void;
    /**
     * Enter a parse tree produced by the `temporalLiteralAlt`
     * labeled alternative in `IdemParser.literal`.
     * @param ctx the parse tree
     */
    enterTemporalLiteralAlt?: (ctx: TemporalLiteralAltContext) => void;
    /**
     * Exit a parse tree produced by the `temporalLiteralAlt`
     * labeled alternative in `IdemParser.literal`.
     * @param ctx the parse tree
     */
    exitTemporalLiteralAlt?: (ctx: TemporalLiteralAltContext) => void;
    /**
     * Enter a parse tree produced by the `nullLiteralAlt`
     * labeled alternative in `IdemParser.literal`.
     * @param ctx the parse tree
     */
    enterNullLiteralAlt?: (ctx: NullLiteralAltContext) => void;
    /**
     * Exit a parse tree produced by the `nullLiteralAlt`
     * labeled alternative in `IdemParser.literal`.
     * @param ctx the parse tree
     */
    exitNullLiteralAlt?: (ctx: NullLiteralAltContext) => void;
    /**
     * Enter a parse tree produced by the `enumLiteralAlt`
     * labeled alternative in `IdemParser.literal`.
     * @param ctx the parse tree
     */
    enterEnumLiteralAlt?: (ctx: EnumLiteralAltContext) => void;
    /**
     * Exit a parse tree produced by the `enumLiteralAlt`
     * labeled alternative in `IdemParser.literal`.
     * @param ctx the parse tree
     */
    exitEnumLiteralAlt?: (ctx: EnumLiteralAltContext) => void;
    /**
     * Enter a parse tree produced by `IdemParser.enumLiteral`.
     * @param ctx the parse tree
     */
    enterEnumLiteral?: (ctx: EnumLiteralContext) => void;
    /**
     * Exit a parse tree produced by `IdemParser.enumLiteral`.
     * @param ctx the parse tree
     */
    exitEnumLiteral?: (ctx: EnumLiteralContext) => void;
    /**
     * Enter a parse tree produced by `IdemParser.qualifiedName`.
     * @param ctx the parse tree
     */
    enterQualifiedName?: (ctx: QualifiedNameContext) => void;
    /**
     * Exit a parse tree produced by `IdemParser.qualifiedName`.
     * @param ctx the parse tree
     */
    exitQualifiedName?: (ctx: QualifiedNameContext) => void;
    /**
     * Enter a parse tree produced by the `dateLiteral`
     * labeled alternative in `IdemParser.temporalLiteral`.
     * @param ctx the parse tree
     */
    enterDateLiteral?: (ctx: DateLiteralContext) => void;
    /**
     * Exit a parse tree produced by the `dateLiteral`
     * labeled alternative in `IdemParser.temporalLiteral`.
     * @param ctx the parse tree
     */
    exitDateLiteral?: (ctx: DateLiteralContext) => void;
    /**
     * Enter a parse tree produced by the `timestampLiteral`
     * labeled alternative in `IdemParser.temporalLiteral`.
     * @param ctx the parse tree
     */
    enterTimestampLiteral?: (ctx: TimestampLiteralContext) => void;
    /**
     * Exit a parse tree produced by the `timestampLiteral`
     * labeled alternative in `IdemParser.temporalLiteral`.
     * @param ctx the parse tree
     */
    exitTimestampLiteral?: (ctx: TimestampLiteralContext) => void;
    /**
     * Enter a parse tree produced by the `timeLiteral`
     * labeled alternative in `IdemParser.temporalLiteral`.
     * @param ctx the parse tree
     */
    enterTimeLiteral?: (ctx: TimeLiteralContext) => void;
    /**
     * Exit a parse tree produced by the `timeLiteral`
     * labeled alternative in `IdemParser.temporalLiteral`.
     * @param ctx the parse tree
     */
    exitTimeLiteral?: (ctx: TimeLiteralContext) => void;
    /**
     * Enter a parse tree produced by the `todayLiteral`
     * labeled alternative in `IdemParser.temporalLiteral`.
     * @param ctx the parse tree
     */
    enterTodayLiteral?: (ctx: TodayLiteralContext) => void;
    /**
     * Exit a parse tree produced by the `todayLiteral`
     * labeled alternative in `IdemParser.temporalLiteral`.
     * @param ctx the parse tree
     */
    exitTodayLiteral?: (ctx: TodayLiteralContext) => void;
    /**
     * Enter a parse tree produced by the `yesterdayLiteral`
     * labeled alternative in `IdemParser.temporalLiteral`.
     * @param ctx the parse tree
     */
    enterYesterdayLiteral?: (ctx: YesterdayLiteralContext) => void;
    /**
     * Exit a parse tree produced by the `yesterdayLiteral`
     * labeled alternative in `IdemParser.temporalLiteral`.
     * @param ctx the parse tree
     */
    exitYesterdayLiteral?: (ctx: YesterdayLiteralContext) => void;
    /**
     * Enter a parse tree produced by the `tomorrowLiteral`
     * labeled alternative in `IdemParser.temporalLiteral`.
     * @param ctx the parse tree
     */
    enterTomorrowLiteral?: (ctx: TomorrowLiteralContext) => void;
    /**
     * Exit a parse tree produced by the `tomorrowLiteral`
     * labeled alternative in `IdemParser.temporalLiteral`.
     * @param ctx the parse tree
     */
    exitTomorrowLiteral?: (ctx: TomorrowLiteralContext) => void;
    /**
     * Enter a parse tree produced by `IdemParser.argumentList`.
     * @param ctx the parse tree
     */
    enterArgumentList?: (ctx: ArgumentListContext) => void;
    /**
     * Exit a parse tree produced by `IdemParser.argumentList`.
     * @param ctx the parse tree
     */
    exitArgumentList?: (ctx: ArgumentListContext) => void;
    /**
     * Enter a parse tree produced by `IdemParser.argument`.
     * @param ctx the parse tree
     */
    enterArgument?: (ctx: ArgumentContext) => void;
    /**
     * Exit a parse tree produced by `IdemParser.argument`.
     * @param ctx the parse tree
     */
    exitArgument?: (ctx: ArgumentContext) => void;
    /**
     * Enter a parse tree produced by `IdemParser.iteratorArgument`.
     * @param ctx the parse tree
     */
    enterIteratorArgument?: (ctx: IteratorArgumentContext) => void;
    /**
     * Exit a parse tree produced by `IdemParser.iteratorArgument`.
     * @param ctx the parse tree
     */
    exitIteratorArgument?: (ctx: IteratorArgumentContext) => void;
    visitTerminal(node: TerminalNode): void;
    visitErrorNode(node: ErrorNode): void;
    enterEveryRule(node: ParserRuleContext): void;
    exitEveryRule(node: ParserRuleContext): void;
}
