import { ParseTreeListener } from "antlr4ts/tree/ParseTreeListener";
import { ProgramContext } from "./FlinkSQLParser";
import { StatementsContext } from "./FlinkSQLParser";
import { StatementContext } from "./FlinkSQLParser";
import { StatementEndContext } from "./FlinkSQLParser";
import { BeginContext } from "./FlinkSQLParser";
import { EndContext } from "./FlinkSQLParser";
import { AutoOptimizeContext } from "./FlinkSQLParser";
import { AutoOptimizeTableContext } from "./FlinkSQLParser";
import { AutoOptimizeDatabaseContext } from "./FlinkSQLParser";
import { QueryContext } from "./FlinkSQLParser";
import { MapQueryContext } from "./FlinkSQLParser";
import { QueryOrderByContext } from "./FlinkSQLParser";
import { QueryLimitContext } from "./FlinkSQLParser";
import { QueryOffsetContext } from "./FlinkSQLParser";
import { QueryFetchContext } from "./FlinkSQLParser";
import { WithItemContext } from "./FlinkSQLParser";
import { OrderItemContext } from "./FlinkSQLParser";
import { SelectContext } from "./FlinkSQLParser";
import { ProjectItemsContext } from "./FlinkSQLParser";
import { FromTableContext } from "./FlinkSQLParser";
import { WhereContext } from "./FlinkSQLParser";
import { GroupByContext } from "./FlinkSQLParser";
import { GroupItemsContext } from "./FlinkSQLParser";
import { HavingContext } from "./FlinkSQLParser";
import { WindowSelectContext } from "./FlinkSQLParser";
import { SelectWithoutFromContext } from "./FlinkSQLParser";
import { ProjectItemContext } from "./FlinkSQLParser";
import { SetQuantifierContext } from "./FlinkSQLParser";
import { TableExpressionContext } from "./FlinkSQLParser";
import { TableExprContext } from "./FlinkSQLParser";
import { MapTableContext } from "./FlinkSQLParser";
import { JoinConditionContext } from "./FlinkSQLParser";
import { CommaTableContext } from "./FlinkSQLParser";
import { TableReferenceContext } from "./FlinkSQLParser";
import { TableDimContext } from "./FlinkSQLParser";
import { TablePrimaryContext } from "./FlinkSQLParser";
import { TableSourceContext } from "./FlinkSQLParser";
import { TableLateralContext } from "./FlinkSQLParser";
import { TableQueryContext } from "./FlinkSQLParser";
import { ColumnDeclContext } from "./FlinkSQLParser";
import { HintsContext } from "./FlinkSQLParser";
import { HintContext } from "./FlinkSQLParser";
import { HintOptionsContext } from "./FlinkSQLParser";
import { HintKVOptionContext } from "./FlinkSQLParser";
import { OptionValueContext } from "./FlinkSQLParser";
import { OptionNameContext } from "./FlinkSQLParser";
import { PivotContext } from "./FlinkSQLParser";
import { PivotAggsContext } from "./FlinkSQLParser";
import { ForPivotListContext } from "./FlinkSQLParser";
import { PivotAggContext } from "./FlinkSQLParser";
import { PivotListContext } from "./FlinkSQLParser";
import { ColumnOrListContext } from "./FlinkSQLParser";
import { ExprOrListContext } from "./FlinkSQLParser";
import { InPivotExprsContext } from "./FlinkSQLParser";
import { PivotExprsContext } from "./FlinkSQLParser";
import { PivotExprContext } from "./FlinkSQLParser";
import { UnpivotContext } from "./FlinkSQLParser";
import { UnpivotMeasureListContext } from "./FlinkSQLParser";
import { UnpivotAxisListContext } from "./FlinkSQLParser";
import { UnpivotValueContext } from "./FlinkSQLParser";
import { ValuesContext } from "./FlinkSQLParser";
import { ValuesRowsContext } from "./FlinkSQLParser";
import { ValuesRowsParenthesisContext } from "./FlinkSQLParser";
import { ValueRowContext } from "./FlinkSQLParser";
import { GroupItemContext } from "./FlinkSQLParser";
import { GroupingSetsContext } from "./FlinkSQLParser";
import { ParenthesisGroupItemsContext } from "./FlinkSQLParser";
import { WindowContext } from "./FlinkSQLParser";
import { WindowSpecContext } from "./FlinkSQLParser";
import { RangeOrRowsContext } from "./FlinkSQLParser";
import { SetStatementContext } from "./FlinkSQLParser";
import { ResetStatementContext } from "./FlinkSQLParser";
import { AlterContext } from "./FlinkSQLParser";
import { AlterTableContext } from "./FlinkSQLParser";
import { AlterDatabaseContext } from "./FlinkSQLParser";
import { AlterFunctionContext } from "./FlinkSQLParser";
import { RenameToContext } from "./FlinkSQLParser";
import { SetValuesContext } from "./FlinkSQLParser";
import { ExplainContext } from "./FlinkSQLParser";
import { ExplainDetailsContext } from "./FlinkSQLParser";
import { ExplainDetailContext } from "./FlinkSQLParser";
import { DescribeContext } from "./FlinkSQLParser";
import { DescribeCatalogContext } from "./FlinkSQLParser";
import { DescribeDatabaseContext } from "./FlinkSQLParser";
import { DescribeTableContext } from "./FlinkSQLParser";
import { InsertContext } from "./FlinkSQLParser";
import { PartitionContext } from "./FlinkSQLParser";
import { UseContext } from "./FlinkSQLParser";
import { ShowContext } from "./FlinkSQLParser";
import { DdlStatementContext } from "./FlinkSQLParser";
import { CreateContext } from "./FlinkSQLParser";
import { CreateTableContext } from "./FlinkSQLParser";
import { DefineValuesContext } from "./FlinkSQLParser";
import { PartitionedByContext } from "./FlinkSQLParser";
import { WithValuesContext } from "./FlinkSQLParser";
import { LikeTableContext } from "./FlinkSQLParser";
import { AsTableContext } from "./FlinkSQLParser";
import { TableElementContext } from "./FlinkSQLParser";
import { PhysicalColumnDefinitionContext } from "./FlinkSQLParser";
import { ColumnConstraintContext } from "./FlinkSQLParser";
import { TableConstraintContext } from "./FlinkSQLParser";
import { MetadataColumnDefinitionContext } from "./FlinkSQLParser";
import { ComputedColumnDefinitionContext } from "./FlinkSQLParser";
import { WatermarkDefinitionContext } from "./FlinkSQLParser";
import { LikeConfigContext } from "./FlinkSQLParser";
import { LikeOptionsContext } from "./FlinkSQLParser";
import { LikeOptionContext } from "./FlinkSQLParser";
import { CreateCatalogContext } from "./FlinkSQLParser";
import { CreateDatabaseContext } from "./FlinkSQLParser";
import { AsDatabaseContext } from "./FlinkSQLParser";
import { IncludingTableContext } from "./FlinkSQLParser";
import { ExcludingTableContext } from "./FlinkSQLParser";
import { CreateViewContext } from "./FlinkSQLParser";
import { CreateFunctionContext } from "./FlinkSQLParser";
import { DropContext } from "./FlinkSQLParser";
import { DropTableContext } from "./FlinkSQLParser";
import { DropDatabaseContext } from "./FlinkSQLParser";
import { DropViewContext } from "./FlinkSQLParser";
import { DropFunctionContext } from "./FlinkSQLParser";
import { AddJarContext } from "./FlinkSQLParser";
import { ModuleStatementContext } from "./FlinkSQLParser";
import { LoadModuleContext } from "./FlinkSQLParser";
import { WithOptionalValuesContext } from "./FlinkSQLParser";
import { UnloadModuleContext } from "./FlinkSQLParser";
import { UseModulesContext } from "./FlinkSQLParser";
import { ShowModulesContext } from "./FlinkSQLParser";
import { TypeContext } from "./FlinkSQLParser";
import { TypeNameContext } from "./FlinkSQLParser";
import { SqlTypeNameContext } from "./FlinkSQLParser";
import { CollectionsTypeNameContext } from "./FlinkSQLParser";
import { CharContext } from "./FlinkSQLParser";
import { DecimalContext } from "./FlinkSQLParser";
import { RowTypeContext } from "./FlinkSQLParser";
import { SystemFunctionContext } from "./FlinkSQLParser";
import { JsonFunctionContext } from "./FlinkSQLParser";
import { JsonExistsFunctionContext } from "./FlinkSQLParser";
import { JsonValueFunctionContext } from "./FlinkSQLParser";
import { JsonQueryFunctionContext } from "./FlinkSQLParser";
import { JsonValueContext } from "./FlinkSQLParser";
import { PathContext } from "./FlinkSQLParser";
import { JsonObjectFunctionContext } from "./FlinkSQLParser";
import { JsonObjectAggFunctionContext } from "./FlinkSQLParser";
import { JsonArrayFunctionContext } from "./FlinkSQLParser";
import { JsonArrayAggFunctionContext } from "./FlinkSQLParser";
import { JsonKeyValContext } from "./FlinkSQLParser";
import { JsonValContext } from "./FlinkSQLParser";
import { NullBehaviorContext } from "./FlinkSQLParser";
import { TemporalFunctionContext } from "./FlinkSQLParser";
import { TemporalOverlapsContext } from "./FlinkSQLParser";
import { TemporalDateContext } from "./FlinkSQLParser";
import { TemporalTimeContext } from "./FlinkSQLParser";
import { TemporalTimestampContext } from "./FlinkSQLParser";
import { YearMonthIntervalContext } from "./FlinkSQLParser";
import { DayTimeIntervalContext } from "./FlinkSQLParser";
import { YearUnitContext } from "./FlinkSQLParser";
import { MonthUnitContext } from "./FlinkSQLParser";
import { DayUnitContext } from "./FlinkSQLParser";
import { HourUnitContext } from "./FlinkSQLParser";
import { MinuteUnitContext } from "./FlinkSQLParser";
import { SecondUnitContext } from "./FlinkSQLParser";
import { TimeIntervalUnitContext } from "./FlinkSQLParser";
import { TimePointUnitContext } from "./FlinkSQLParser";
import { AggregateWithinContext } from "./FlinkSQLParser";
import { AggregateFilterContext } from "./FlinkSQLParser";
import { AggregateNullsContext } from "./FlinkSQLParser";
import { OverWindowContext } from "./FlinkSQLParser";
import { ExpressionsContext } from "./FlinkSQLParser";
import { TableDataContext } from "./FlinkSQLParser";
import { ParenthesisExpressionsContext } from "./FlinkSQLParser";
import { ParenthesisQueryContext } from "./FlinkSQLParser";
import { ParenthesisSelectContext } from "./FlinkSQLParser";
import { ValueOptionalAssignmentsContext } from "./FlinkSQLParser";
import { ValueAssignmentsContext } from "./FlinkSQLParser";
import { ValueAssignmentContext } from "./FlinkSQLParser";
import { ColumnsContext } from "./FlinkSQLParser";
import { CommentContext } from "./FlinkSQLParser";
import { OrderByContext } from "./FlinkSQLParser";
import { OrderItemsContext } from "./FlinkSQLParser";
import { PartitionByContext } from "./FlinkSQLParser";
import { MatchRecognizeContext } from "./FlinkSQLParser";
import { MeasuresContext } from "./FlinkSQLParser";
import { MeasureColumnsContext } from "./FlinkSQLParser";
import { PerMatchContext } from "./FlinkSQLParser";
import { AfterMatchContext } from "./FlinkSQLParser";
import { PatternMatchContext } from "./FlinkSQLParser";
import { WithinMatchContext } from "./FlinkSQLParser";
import { SubsetMatchContext } from "./FlinkSQLParser";
import { SubsetItemsContext } from "./FlinkSQLParser";
import { SubsetItemContext } from "./FlinkSQLParser";
import { DefineMatchContext } from "./FlinkSQLParser";
import { DefineItemsContext } from "./FlinkSQLParser";
import { DefineItemContext } from "./FlinkSQLParser";
import { MeasureColumnContext } from "./FlinkSQLParser";
import { PatternContext } from "./FlinkSQLParser";
import { PatternTermContext } from "./FlinkSQLParser";
import { PatternFactorContext } from "./FlinkSQLParser";
import { PatternPrimaryContext } from "./FlinkSQLParser";
import { PatternQuantifierContext } from "./FlinkSQLParser";
import { AliasContext } from "./FlinkSQLParser";
import { AliasesContext } from "./FlinkSQLParser";
import { KeywordContext } from "./FlinkSQLParser";
import { AnyNameContext } from "./FlinkSQLParser";
import { ArrowWindowFunctionContext } from "./FlinkSQLParser";
import { CharsetIntroducerContext } from "./FlinkSQLParser";
import { CharsetLiteralContext } from "./FlinkSQLParser";
import { LiteralValueContext } from "./FlinkSQLParser";
import { UnaryOperatorContext } from "./FlinkSQLParser";
import { WhenExprContext } from "./FlinkSQLParser";
import { ThenExprContext } from "./FlinkSQLParser";
import { ElseExprContext } from "./FlinkSQLParser";
import { CaseEndContext } from "./FlinkSQLParser";
import { ArrayConstructContext } from "./FlinkSQLParser";
import { CompareContext } from "./FlinkSQLParser";
import { LogicalBindContext } from "./FlinkSQLParser";
import { FunctionParamContext } from "./FlinkSQLParser";
import { ExprContext } from "./FlinkSQLParser";
import { NameContext } from "./FlinkSQLParser";
import { ColumnNameContext } from "./FlinkSQLParser";
import { TableNameContext } from "./FlinkSQLParser";
import { DatabaseNameContext } from "./FlinkSQLParser";
import { CatalogNameContext } from "./FlinkSQLParser";
import { ViewNameContext } from "./FlinkSQLParser";
import { FunctionNameContext } from "./FlinkSQLParser";
import { ColumnContext } from "./FlinkSQLParser";
import { ViewContext } from "./FlinkSQLParser";
import { TableContext } from "./FlinkSQLParser";
import { DatabaseContext } from "./FlinkSQLParser";
import { CatalogContext } from "./FlinkSQLParser";
import { ReservedKeywordsContext } from "./FlinkSQLParser";
import { NonReservedKeywordsContext } from "./FlinkSQLParser";
import { CommonKeywordsContext } from "./FlinkSQLParser";
/**
 * This interface defines a complete listener for a parse tree produced by
 * `FlinkSQLParser`.
 */
export interface FlinkSQLParserListener extends ParseTreeListener {
    /**
     * Enter a parse tree produced by `FlinkSQLParser.program`.
     * @param ctx the parse tree
     */
    enterProgram?: (ctx: ProgramContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.program`.
     * @param ctx the parse tree
     */
    exitProgram?: (ctx: ProgramContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.statements`.
     * @param ctx the parse tree
     */
    enterStatements?: (ctx: StatementsContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.statements`.
     * @param ctx the parse tree
     */
    exitStatements?: (ctx: StatementsContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.statement`.
     * @param ctx the parse tree
     */
    enterStatement?: (ctx: StatementContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.statement`.
     * @param ctx the parse tree
     */
    exitStatement?: (ctx: StatementContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.statementEnd`.
     * @param ctx the parse tree
     */
    enterStatementEnd?: (ctx: StatementEndContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.statementEnd`.
     * @param ctx the parse tree
     */
    exitStatementEnd?: (ctx: StatementEndContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.begin`.
     * @param ctx the parse tree
     */
    enterBegin?: (ctx: BeginContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.begin`.
     * @param ctx the parse tree
     */
    exitBegin?: (ctx: BeginContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.end`.
     * @param ctx the parse tree
     */
    enterEnd?: (ctx: EndContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.end`.
     * @param ctx the parse tree
     */
    exitEnd?: (ctx: EndContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.autoOptimize`.
     * @param ctx the parse tree
     */
    enterAutoOptimize?: (ctx: AutoOptimizeContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.autoOptimize`.
     * @param ctx the parse tree
     */
    exitAutoOptimize?: (ctx: AutoOptimizeContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.autoOptimizeTable`.
     * @param ctx the parse tree
     */
    enterAutoOptimizeTable?: (ctx: AutoOptimizeTableContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.autoOptimizeTable`.
     * @param ctx the parse tree
     */
    exitAutoOptimizeTable?: (ctx: AutoOptimizeTableContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.autoOptimizeDatabase`.
     * @param ctx the parse tree
     */
    enterAutoOptimizeDatabase?: (ctx: AutoOptimizeDatabaseContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.autoOptimizeDatabase`.
     * @param ctx the parse tree
     */
    exitAutoOptimizeDatabase?: (ctx: AutoOptimizeDatabaseContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.query`.
     * @param ctx the parse tree
     */
    enterQuery?: (ctx: QueryContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.query`.
     * @param ctx the parse tree
     */
    exitQuery?: (ctx: QueryContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.mapQuery`.
     * @param ctx the parse tree
     */
    enterMapQuery?: (ctx: MapQueryContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.mapQuery`.
     * @param ctx the parse tree
     */
    exitMapQuery?: (ctx: MapQueryContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.queryOrderBy`.
     * @param ctx the parse tree
     */
    enterQueryOrderBy?: (ctx: QueryOrderByContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.queryOrderBy`.
     * @param ctx the parse tree
     */
    exitQueryOrderBy?: (ctx: QueryOrderByContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.queryLimit`.
     * @param ctx the parse tree
     */
    enterQueryLimit?: (ctx: QueryLimitContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.queryLimit`.
     * @param ctx the parse tree
     */
    exitQueryLimit?: (ctx: QueryLimitContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.queryOffset`.
     * @param ctx the parse tree
     */
    enterQueryOffset?: (ctx: QueryOffsetContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.queryOffset`.
     * @param ctx the parse tree
     */
    exitQueryOffset?: (ctx: QueryOffsetContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.queryFetch`.
     * @param ctx the parse tree
     */
    enterQueryFetch?: (ctx: QueryFetchContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.queryFetch`.
     * @param ctx the parse tree
     */
    exitQueryFetch?: (ctx: QueryFetchContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.withItem`.
     * @param ctx the parse tree
     */
    enterWithItem?: (ctx: WithItemContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.withItem`.
     * @param ctx the parse tree
     */
    exitWithItem?: (ctx: WithItemContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.orderItem`.
     * @param ctx the parse tree
     */
    enterOrderItem?: (ctx: OrderItemContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.orderItem`.
     * @param ctx the parse tree
     */
    exitOrderItem?: (ctx: OrderItemContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.select`.
     * @param ctx the parse tree
     */
    enterSelect?: (ctx: SelectContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.select`.
     * @param ctx the parse tree
     */
    exitSelect?: (ctx: SelectContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.projectItems`.
     * @param ctx the parse tree
     */
    enterProjectItems?: (ctx: ProjectItemsContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.projectItems`.
     * @param ctx the parse tree
     */
    exitProjectItems?: (ctx: ProjectItemsContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.fromTable`.
     * @param ctx the parse tree
     */
    enterFromTable?: (ctx: FromTableContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.fromTable`.
     * @param ctx the parse tree
     */
    exitFromTable?: (ctx: FromTableContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.where`.
     * @param ctx the parse tree
     */
    enterWhere?: (ctx: WhereContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.where`.
     * @param ctx the parse tree
     */
    exitWhere?: (ctx: WhereContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.groupBy`.
     * @param ctx the parse tree
     */
    enterGroupBy?: (ctx: GroupByContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.groupBy`.
     * @param ctx the parse tree
     */
    exitGroupBy?: (ctx: GroupByContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.groupItems`.
     * @param ctx the parse tree
     */
    enterGroupItems?: (ctx: GroupItemsContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.groupItems`.
     * @param ctx the parse tree
     */
    exitGroupItems?: (ctx: GroupItemsContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.having`.
     * @param ctx the parse tree
     */
    enterHaving?: (ctx: HavingContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.having`.
     * @param ctx the parse tree
     */
    exitHaving?: (ctx: HavingContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.windowSelect`.
     * @param ctx the parse tree
     */
    enterWindowSelect?: (ctx: WindowSelectContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.windowSelect`.
     * @param ctx the parse tree
     */
    exitWindowSelect?: (ctx: WindowSelectContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.selectWithoutFrom`.
     * @param ctx the parse tree
     */
    enterSelectWithoutFrom?: (ctx: SelectWithoutFromContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.selectWithoutFrom`.
     * @param ctx the parse tree
     */
    exitSelectWithoutFrom?: (ctx: SelectWithoutFromContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.projectItem`.
     * @param ctx the parse tree
     */
    enterProjectItem?: (ctx: ProjectItemContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.projectItem`.
     * @param ctx the parse tree
     */
    exitProjectItem?: (ctx: ProjectItemContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.setQuantifier`.
     * @param ctx the parse tree
     */
    enterSetQuantifier?: (ctx: SetQuantifierContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.setQuantifier`.
     * @param ctx the parse tree
     */
    exitSetQuantifier?: (ctx: SetQuantifierContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.tableExpression`.
     * @param ctx the parse tree
     */
    enterTableExpression?: (ctx: TableExpressionContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.tableExpression`.
     * @param ctx the parse tree
     */
    exitTableExpression?: (ctx: TableExpressionContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.tableExpr`.
     * @param ctx the parse tree
     */
    enterTableExpr?: (ctx: TableExprContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.tableExpr`.
     * @param ctx the parse tree
     */
    exitTableExpr?: (ctx: TableExprContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.mapTable`.
     * @param ctx the parse tree
     */
    enterMapTable?: (ctx: MapTableContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.mapTable`.
     * @param ctx the parse tree
     */
    exitMapTable?: (ctx: MapTableContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.joinCondition`.
     * @param ctx the parse tree
     */
    enterJoinCondition?: (ctx: JoinConditionContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.joinCondition`.
     * @param ctx the parse tree
     */
    exitJoinCondition?: (ctx: JoinConditionContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.commaTable`.
     * @param ctx the parse tree
     */
    enterCommaTable?: (ctx: CommaTableContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.commaTable`.
     * @param ctx the parse tree
     */
    exitCommaTable?: (ctx: CommaTableContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.tableReference`.
     * @param ctx the parse tree
     */
    enterTableReference?: (ctx: TableReferenceContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.tableReference`.
     * @param ctx the parse tree
     */
    exitTableReference?: (ctx: TableReferenceContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.tableDim`.
     * @param ctx the parse tree
     */
    enterTableDim?: (ctx: TableDimContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.tableDim`.
     * @param ctx the parse tree
     */
    exitTableDim?: (ctx: TableDimContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.tablePrimary`.
     * @param ctx the parse tree
     */
    enterTablePrimary?: (ctx: TablePrimaryContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.tablePrimary`.
     * @param ctx the parse tree
     */
    exitTablePrimary?: (ctx: TablePrimaryContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.tableSource`.
     * @param ctx the parse tree
     */
    enterTableSource?: (ctx: TableSourceContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.tableSource`.
     * @param ctx the parse tree
     */
    exitTableSource?: (ctx: TableSourceContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.tableLateral`.
     * @param ctx the parse tree
     */
    enterTableLateral?: (ctx: TableLateralContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.tableLateral`.
     * @param ctx the parse tree
     */
    exitTableLateral?: (ctx: TableLateralContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.tableQuery`.
     * @param ctx the parse tree
     */
    enterTableQuery?: (ctx: TableQueryContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.tableQuery`.
     * @param ctx the parse tree
     */
    exitTableQuery?: (ctx: TableQueryContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.columnDecl`.
     * @param ctx the parse tree
     */
    enterColumnDecl?: (ctx: ColumnDeclContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.columnDecl`.
     * @param ctx the parse tree
     */
    exitColumnDecl?: (ctx: ColumnDeclContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.hints`.
     * @param ctx the parse tree
     */
    enterHints?: (ctx: HintsContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.hints`.
     * @param ctx the parse tree
     */
    exitHints?: (ctx: HintsContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.hint`.
     * @param ctx the parse tree
     */
    enterHint?: (ctx: HintContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.hint`.
     * @param ctx the parse tree
     */
    exitHint?: (ctx: HintContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.hintOptions`.
     * @param ctx the parse tree
     */
    enterHintOptions?: (ctx: HintOptionsContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.hintOptions`.
     * @param ctx the parse tree
     */
    exitHintOptions?: (ctx: HintOptionsContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.hintKVOption`.
     * @param ctx the parse tree
     */
    enterHintKVOption?: (ctx: HintKVOptionContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.hintKVOption`.
     * @param ctx the parse tree
     */
    exitHintKVOption?: (ctx: HintKVOptionContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.optionValue`.
     * @param ctx the parse tree
     */
    enterOptionValue?: (ctx: OptionValueContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.optionValue`.
     * @param ctx the parse tree
     */
    exitOptionValue?: (ctx: OptionValueContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.optionName`.
     * @param ctx the parse tree
     */
    enterOptionName?: (ctx: OptionNameContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.optionName`.
     * @param ctx the parse tree
     */
    exitOptionName?: (ctx: OptionNameContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.pivot`.
     * @param ctx the parse tree
     */
    enterPivot?: (ctx: PivotContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.pivot`.
     * @param ctx the parse tree
     */
    exitPivot?: (ctx: PivotContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.pivotAggs`.
     * @param ctx the parse tree
     */
    enterPivotAggs?: (ctx: PivotAggsContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.pivotAggs`.
     * @param ctx the parse tree
     */
    exitPivotAggs?: (ctx: PivotAggsContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.forPivotList`.
     * @param ctx the parse tree
     */
    enterForPivotList?: (ctx: ForPivotListContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.forPivotList`.
     * @param ctx the parse tree
     */
    exitForPivotList?: (ctx: ForPivotListContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.pivotAgg`.
     * @param ctx the parse tree
     */
    enterPivotAgg?: (ctx: PivotAggContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.pivotAgg`.
     * @param ctx the parse tree
     */
    exitPivotAgg?: (ctx: PivotAggContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.pivotList`.
     * @param ctx the parse tree
     */
    enterPivotList?: (ctx: PivotListContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.pivotList`.
     * @param ctx the parse tree
     */
    exitPivotList?: (ctx: PivotListContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.columnOrList`.
     * @param ctx the parse tree
     */
    enterColumnOrList?: (ctx: ColumnOrListContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.columnOrList`.
     * @param ctx the parse tree
     */
    exitColumnOrList?: (ctx: ColumnOrListContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.exprOrList`.
     * @param ctx the parse tree
     */
    enterExprOrList?: (ctx: ExprOrListContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.exprOrList`.
     * @param ctx the parse tree
     */
    exitExprOrList?: (ctx: ExprOrListContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.inPivotExprs`.
     * @param ctx the parse tree
     */
    enterInPivotExprs?: (ctx: InPivotExprsContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.inPivotExprs`.
     * @param ctx the parse tree
     */
    exitInPivotExprs?: (ctx: InPivotExprsContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.pivotExprs`.
     * @param ctx the parse tree
     */
    enterPivotExprs?: (ctx: PivotExprsContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.pivotExprs`.
     * @param ctx the parse tree
     */
    exitPivotExprs?: (ctx: PivotExprsContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.pivotExpr`.
     * @param ctx the parse tree
     */
    enterPivotExpr?: (ctx: PivotExprContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.pivotExpr`.
     * @param ctx the parse tree
     */
    exitPivotExpr?: (ctx: PivotExprContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.unpivot`.
     * @param ctx the parse tree
     */
    enterUnpivot?: (ctx: UnpivotContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.unpivot`.
     * @param ctx the parse tree
     */
    exitUnpivot?: (ctx: UnpivotContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.unpivotMeasureList`.
     * @param ctx the parse tree
     */
    enterUnpivotMeasureList?: (ctx: UnpivotMeasureListContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.unpivotMeasureList`.
     * @param ctx the parse tree
     */
    exitUnpivotMeasureList?: (ctx: UnpivotMeasureListContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.unpivotAxisList`.
     * @param ctx the parse tree
     */
    enterUnpivotAxisList?: (ctx: UnpivotAxisListContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.unpivotAxisList`.
     * @param ctx the parse tree
     */
    exitUnpivotAxisList?: (ctx: UnpivotAxisListContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.unpivotValue`.
     * @param ctx the parse tree
     */
    enterUnpivotValue?: (ctx: UnpivotValueContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.unpivotValue`.
     * @param ctx the parse tree
     */
    exitUnpivotValue?: (ctx: UnpivotValueContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.values`.
     * @param ctx the parse tree
     */
    enterValues?: (ctx: ValuesContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.values`.
     * @param ctx the parse tree
     */
    exitValues?: (ctx: ValuesContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.valuesRows`.
     * @param ctx the parse tree
     */
    enterValuesRows?: (ctx: ValuesRowsContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.valuesRows`.
     * @param ctx the parse tree
     */
    exitValuesRows?: (ctx: ValuesRowsContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.valuesRowsParenthesis`.
     * @param ctx the parse tree
     */
    enterValuesRowsParenthesis?: (ctx: ValuesRowsParenthesisContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.valuesRowsParenthesis`.
     * @param ctx the parse tree
     */
    exitValuesRowsParenthesis?: (ctx: ValuesRowsParenthesisContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.valueRow`.
     * @param ctx the parse tree
     */
    enterValueRow?: (ctx: ValueRowContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.valueRow`.
     * @param ctx the parse tree
     */
    exitValueRow?: (ctx: ValueRowContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.groupItem`.
     * @param ctx the parse tree
     */
    enterGroupItem?: (ctx: GroupItemContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.groupItem`.
     * @param ctx the parse tree
     */
    exitGroupItem?: (ctx: GroupItemContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.groupingSets`.
     * @param ctx the parse tree
     */
    enterGroupingSets?: (ctx: GroupingSetsContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.groupingSets`.
     * @param ctx the parse tree
     */
    exitGroupingSets?: (ctx: GroupingSetsContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.parenthesisGroupItems`.
     * @param ctx the parse tree
     */
    enterParenthesisGroupItems?: (ctx: ParenthesisGroupItemsContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.parenthesisGroupItems`.
     * @param ctx the parse tree
     */
    exitParenthesisGroupItems?: (ctx: ParenthesisGroupItemsContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.window`.
     * @param ctx the parse tree
     */
    enterWindow?: (ctx: WindowContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.window`.
     * @param ctx the parse tree
     */
    exitWindow?: (ctx: WindowContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.windowSpec`.
     * @param ctx the parse tree
     */
    enterWindowSpec?: (ctx: WindowSpecContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.windowSpec`.
     * @param ctx the parse tree
     */
    exitWindowSpec?: (ctx: WindowSpecContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.rangeOrRows`.
     * @param ctx the parse tree
     */
    enterRangeOrRows?: (ctx: RangeOrRowsContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.rangeOrRows`.
     * @param ctx the parse tree
     */
    exitRangeOrRows?: (ctx: RangeOrRowsContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.setStatement`.
     * @param ctx the parse tree
     */
    enterSetStatement?: (ctx: SetStatementContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.setStatement`.
     * @param ctx the parse tree
     */
    exitSetStatement?: (ctx: SetStatementContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.resetStatement`.
     * @param ctx the parse tree
     */
    enterResetStatement?: (ctx: ResetStatementContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.resetStatement`.
     * @param ctx the parse tree
     */
    exitResetStatement?: (ctx: ResetStatementContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.alter`.
     * @param ctx the parse tree
     */
    enterAlter?: (ctx: AlterContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.alter`.
     * @param ctx the parse tree
     */
    exitAlter?: (ctx: AlterContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.alterTable`.
     * @param ctx the parse tree
     */
    enterAlterTable?: (ctx: AlterTableContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.alterTable`.
     * @param ctx the parse tree
     */
    exitAlterTable?: (ctx: AlterTableContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.alterDatabase`.
     * @param ctx the parse tree
     */
    enterAlterDatabase?: (ctx: AlterDatabaseContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.alterDatabase`.
     * @param ctx the parse tree
     */
    exitAlterDatabase?: (ctx: AlterDatabaseContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.alterFunction`.
     * @param ctx the parse tree
     */
    enterAlterFunction?: (ctx: AlterFunctionContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.alterFunction`.
     * @param ctx the parse tree
     */
    exitAlterFunction?: (ctx: AlterFunctionContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.renameTo`.
     * @param ctx the parse tree
     */
    enterRenameTo?: (ctx: RenameToContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.renameTo`.
     * @param ctx the parse tree
     */
    exitRenameTo?: (ctx: RenameToContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.setValues`.
     * @param ctx the parse tree
     */
    enterSetValues?: (ctx: SetValuesContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.setValues`.
     * @param ctx the parse tree
     */
    exitSetValues?: (ctx: SetValuesContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.explain`.
     * @param ctx the parse tree
     */
    enterExplain?: (ctx: ExplainContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.explain`.
     * @param ctx the parse tree
     */
    exitExplain?: (ctx: ExplainContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.explainDetails`.
     * @param ctx the parse tree
     */
    enterExplainDetails?: (ctx: ExplainDetailsContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.explainDetails`.
     * @param ctx the parse tree
     */
    exitExplainDetails?: (ctx: ExplainDetailsContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.explainDetail`.
     * @param ctx the parse tree
     */
    enterExplainDetail?: (ctx: ExplainDetailContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.explainDetail`.
     * @param ctx the parse tree
     */
    exitExplainDetail?: (ctx: ExplainDetailContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.describe`.
     * @param ctx the parse tree
     */
    enterDescribe?: (ctx: DescribeContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.describe`.
     * @param ctx the parse tree
     */
    exitDescribe?: (ctx: DescribeContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.describeCatalog`.
     * @param ctx the parse tree
     */
    enterDescribeCatalog?: (ctx: DescribeCatalogContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.describeCatalog`.
     * @param ctx the parse tree
     */
    exitDescribeCatalog?: (ctx: DescribeCatalogContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.describeDatabase`.
     * @param ctx the parse tree
     */
    enterDescribeDatabase?: (ctx: DescribeDatabaseContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.describeDatabase`.
     * @param ctx the parse tree
     */
    exitDescribeDatabase?: (ctx: DescribeDatabaseContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.describeTable`.
     * @param ctx the parse tree
     */
    enterDescribeTable?: (ctx: DescribeTableContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.describeTable`.
     * @param ctx the parse tree
     */
    exitDescribeTable?: (ctx: DescribeTableContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.insert`.
     * @param ctx the parse tree
     */
    enterInsert?: (ctx: InsertContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.insert`.
     * @param ctx the parse tree
     */
    exitInsert?: (ctx: InsertContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.partition`.
     * @param ctx the parse tree
     */
    enterPartition?: (ctx: PartitionContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.partition`.
     * @param ctx the parse tree
     */
    exitPartition?: (ctx: PartitionContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.use`.
     * @param ctx the parse tree
     */
    enterUse?: (ctx: UseContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.use`.
     * @param ctx the parse tree
     */
    exitUse?: (ctx: UseContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.show`.
     * @param ctx the parse tree
     */
    enterShow?: (ctx: ShowContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.show`.
     * @param ctx the parse tree
     */
    exitShow?: (ctx: ShowContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.ddlStatement`.
     * @param ctx the parse tree
     */
    enterDdlStatement?: (ctx: DdlStatementContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.ddlStatement`.
     * @param ctx the parse tree
     */
    exitDdlStatement?: (ctx: DdlStatementContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.create`.
     * @param ctx the parse tree
     */
    enterCreate?: (ctx: CreateContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.create`.
     * @param ctx the parse tree
     */
    exitCreate?: (ctx: CreateContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.createTable`.
     * @param ctx the parse tree
     */
    enterCreateTable?: (ctx: CreateTableContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.createTable`.
     * @param ctx the parse tree
     */
    exitCreateTable?: (ctx: CreateTableContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.defineValues`.
     * @param ctx the parse tree
     */
    enterDefineValues?: (ctx: DefineValuesContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.defineValues`.
     * @param ctx the parse tree
     */
    exitDefineValues?: (ctx: DefineValuesContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.partitionedBy`.
     * @param ctx the parse tree
     */
    enterPartitionedBy?: (ctx: PartitionedByContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.partitionedBy`.
     * @param ctx the parse tree
     */
    exitPartitionedBy?: (ctx: PartitionedByContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.withValues`.
     * @param ctx the parse tree
     */
    enterWithValues?: (ctx: WithValuesContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.withValues`.
     * @param ctx the parse tree
     */
    exitWithValues?: (ctx: WithValuesContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.likeTable`.
     * @param ctx the parse tree
     */
    enterLikeTable?: (ctx: LikeTableContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.likeTable`.
     * @param ctx the parse tree
     */
    exitLikeTable?: (ctx: LikeTableContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.asTable`.
     * @param ctx the parse tree
     */
    enterAsTable?: (ctx: AsTableContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.asTable`.
     * @param ctx the parse tree
     */
    exitAsTable?: (ctx: AsTableContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.tableElement`.
     * @param ctx the parse tree
     */
    enterTableElement?: (ctx: TableElementContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.tableElement`.
     * @param ctx the parse tree
     */
    exitTableElement?: (ctx: TableElementContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.physicalColumnDefinition`.
     * @param ctx the parse tree
     */
    enterPhysicalColumnDefinition?: (ctx: PhysicalColumnDefinitionContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.physicalColumnDefinition`.
     * @param ctx the parse tree
     */
    exitPhysicalColumnDefinition?: (ctx: PhysicalColumnDefinitionContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.columnConstraint`.
     * @param ctx the parse tree
     */
    enterColumnConstraint?: (ctx: ColumnConstraintContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.columnConstraint`.
     * @param ctx the parse tree
     */
    exitColumnConstraint?: (ctx: ColumnConstraintContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.tableConstraint`.
     * @param ctx the parse tree
     */
    enterTableConstraint?: (ctx: TableConstraintContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.tableConstraint`.
     * @param ctx the parse tree
     */
    exitTableConstraint?: (ctx: TableConstraintContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.metadataColumnDefinition`.
     * @param ctx the parse tree
     */
    enterMetadataColumnDefinition?: (ctx: MetadataColumnDefinitionContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.metadataColumnDefinition`.
     * @param ctx the parse tree
     */
    exitMetadataColumnDefinition?: (ctx: MetadataColumnDefinitionContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.computedColumnDefinition`.
     * @param ctx the parse tree
     */
    enterComputedColumnDefinition?: (ctx: ComputedColumnDefinitionContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.computedColumnDefinition`.
     * @param ctx the parse tree
     */
    exitComputedColumnDefinition?: (ctx: ComputedColumnDefinitionContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.watermarkDefinition`.
     * @param ctx the parse tree
     */
    enterWatermarkDefinition?: (ctx: WatermarkDefinitionContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.watermarkDefinition`.
     * @param ctx the parse tree
     */
    exitWatermarkDefinition?: (ctx: WatermarkDefinitionContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.likeConfig`.
     * @param ctx the parse tree
     */
    enterLikeConfig?: (ctx: LikeConfigContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.likeConfig`.
     * @param ctx the parse tree
     */
    exitLikeConfig?: (ctx: LikeConfigContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.likeOptions`.
     * @param ctx the parse tree
     */
    enterLikeOptions?: (ctx: LikeOptionsContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.likeOptions`.
     * @param ctx the parse tree
     */
    exitLikeOptions?: (ctx: LikeOptionsContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.likeOption`.
     * @param ctx the parse tree
     */
    enterLikeOption?: (ctx: LikeOptionContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.likeOption`.
     * @param ctx the parse tree
     */
    exitLikeOption?: (ctx: LikeOptionContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.createCatalog`.
     * @param ctx the parse tree
     */
    enterCreateCatalog?: (ctx: CreateCatalogContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.createCatalog`.
     * @param ctx the parse tree
     */
    exitCreateCatalog?: (ctx: CreateCatalogContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.createDatabase`.
     * @param ctx the parse tree
     */
    enterCreateDatabase?: (ctx: CreateDatabaseContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.createDatabase`.
     * @param ctx the parse tree
     */
    exitCreateDatabase?: (ctx: CreateDatabaseContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.asDatabase`.
     * @param ctx the parse tree
     */
    enterAsDatabase?: (ctx: AsDatabaseContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.asDatabase`.
     * @param ctx the parse tree
     */
    exitAsDatabase?: (ctx: AsDatabaseContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.includingTable`.
     * @param ctx the parse tree
     */
    enterIncludingTable?: (ctx: IncludingTableContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.includingTable`.
     * @param ctx the parse tree
     */
    exitIncludingTable?: (ctx: IncludingTableContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.excludingTable`.
     * @param ctx the parse tree
     */
    enterExcludingTable?: (ctx: ExcludingTableContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.excludingTable`.
     * @param ctx the parse tree
     */
    exitExcludingTable?: (ctx: ExcludingTableContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.createView`.
     * @param ctx the parse tree
     */
    enterCreateView?: (ctx: CreateViewContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.createView`.
     * @param ctx the parse tree
     */
    exitCreateView?: (ctx: CreateViewContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.createFunction`.
     * @param ctx the parse tree
     */
    enterCreateFunction?: (ctx: CreateFunctionContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.createFunction`.
     * @param ctx the parse tree
     */
    exitCreateFunction?: (ctx: CreateFunctionContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.drop`.
     * @param ctx the parse tree
     */
    enterDrop?: (ctx: DropContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.drop`.
     * @param ctx the parse tree
     */
    exitDrop?: (ctx: DropContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.dropTable`.
     * @param ctx the parse tree
     */
    enterDropTable?: (ctx: DropTableContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.dropTable`.
     * @param ctx the parse tree
     */
    exitDropTable?: (ctx: DropTableContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.dropDatabase`.
     * @param ctx the parse tree
     */
    enterDropDatabase?: (ctx: DropDatabaseContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.dropDatabase`.
     * @param ctx the parse tree
     */
    exitDropDatabase?: (ctx: DropDatabaseContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.dropView`.
     * @param ctx the parse tree
     */
    enterDropView?: (ctx: DropViewContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.dropView`.
     * @param ctx the parse tree
     */
    exitDropView?: (ctx: DropViewContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.dropFunction`.
     * @param ctx the parse tree
     */
    enterDropFunction?: (ctx: DropFunctionContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.dropFunction`.
     * @param ctx the parse tree
     */
    exitDropFunction?: (ctx: DropFunctionContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.addJar`.
     * @param ctx the parse tree
     */
    enterAddJar?: (ctx: AddJarContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.addJar`.
     * @param ctx the parse tree
     */
    exitAddJar?: (ctx: AddJarContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.moduleStatement`.
     * @param ctx the parse tree
     */
    enterModuleStatement?: (ctx: ModuleStatementContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.moduleStatement`.
     * @param ctx the parse tree
     */
    exitModuleStatement?: (ctx: ModuleStatementContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.loadModule`.
     * @param ctx the parse tree
     */
    enterLoadModule?: (ctx: LoadModuleContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.loadModule`.
     * @param ctx the parse tree
     */
    exitLoadModule?: (ctx: LoadModuleContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.withOptionalValues`.
     * @param ctx the parse tree
     */
    enterWithOptionalValues?: (ctx: WithOptionalValuesContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.withOptionalValues`.
     * @param ctx the parse tree
     */
    exitWithOptionalValues?: (ctx: WithOptionalValuesContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.unloadModule`.
     * @param ctx the parse tree
     */
    enterUnloadModule?: (ctx: UnloadModuleContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.unloadModule`.
     * @param ctx the parse tree
     */
    exitUnloadModule?: (ctx: UnloadModuleContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.useModules`.
     * @param ctx the parse tree
     */
    enterUseModules?: (ctx: UseModulesContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.useModules`.
     * @param ctx the parse tree
     */
    exitUseModules?: (ctx: UseModulesContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.showModules`.
     * @param ctx the parse tree
     */
    enterShowModules?: (ctx: ShowModulesContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.showModules`.
     * @param ctx the parse tree
     */
    exitShowModules?: (ctx: ShowModulesContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.type`.
     * @param ctx the parse tree
     */
    enterType?: (ctx: TypeContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.type`.
     * @param ctx the parse tree
     */
    exitType?: (ctx: TypeContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.typeName`.
     * @param ctx the parse tree
     */
    enterTypeName?: (ctx: TypeNameContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.typeName`.
     * @param ctx the parse tree
     */
    exitTypeName?: (ctx: TypeNameContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.sqlTypeName`.
     * @param ctx the parse tree
     */
    enterSqlTypeName?: (ctx: SqlTypeNameContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.sqlTypeName`.
     * @param ctx the parse tree
     */
    exitSqlTypeName?: (ctx: SqlTypeNameContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.collectionsTypeName`.
     * @param ctx the parse tree
     */
    enterCollectionsTypeName?: (ctx: CollectionsTypeNameContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.collectionsTypeName`.
     * @param ctx the parse tree
     */
    exitCollectionsTypeName?: (ctx: CollectionsTypeNameContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.char`.
     * @param ctx the parse tree
     */
    enterChar?: (ctx: CharContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.char`.
     * @param ctx the parse tree
     */
    exitChar?: (ctx: CharContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.decimal`.
     * @param ctx the parse tree
     */
    enterDecimal?: (ctx: DecimalContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.decimal`.
     * @param ctx the parse tree
     */
    exitDecimal?: (ctx: DecimalContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.rowType`.
     * @param ctx the parse tree
     */
    enterRowType?: (ctx: RowTypeContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.rowType`.
     * @param ctx the parse tree
     */
    exitRowType?: (ctx: RowTypeContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.systemFunction`.
     * @param ctx the parse tree
     */
    enterSystemFunction?: (ctx: SystemFunctionContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.systemFunction`.
     * @param ctx the parse tree
     */
    exitSystemFunction?: (ctx: SystemFunctionContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.jsonFunction`.
     * @param ctx the parse tree
     */
    enterJsonFunction?: (ctx: JsonFunctionContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.jsonFunction`.
     * @param ctx the parse tree
     */
    exitJsonFunction?: (ctx: JsonFunctionContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.jsonExistsFunction`.
     * @param ctx the parse tree
     */
    enterJsonExistsFunction?: (ctx: JsonExistsFunctionContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.jsonExistsFunction`.
     * @param ctx the parse tree
     */
    exitJsonExistsFunction?: (ctx: JsonExistsFunctionContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.jsonValueFunction`.
     * @param ctx the parse tree
     */
    enterJsonValueFunction?: (ctx: JsonValueFunctionContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.jsonValueFunction`.
     * @param ctx the parse tree
     */
    exitJsonValueFunction?: (ctx: JsonValueFunctionContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.jsonQueryFunction`.
     * @param ctx the parse tree
     */
    enterJsonQueryFunction?: (ctx: JsonQueryFunctionContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.jsonQueryFunction`.
     * @param ctx the parse tree
     */
    exitJsonQueryFunction?: (ctx: JsonQueryFunctionContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.jsonValue`.
     * @param ctx the parse tree
     */
    enterJsonValue?: (ctx: JsonValueContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.jsonValue`.
     * @param ctx the parse tree
     */
    exitJsonValue?: (ctx: JsonValueContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.path`.
     * @param ctx the parse tree
     */
    enterPath?: (ctx: PathContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.path`.
     * @param ctx the parse tree
     */
    exitPath?: (ctx: PathContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.jsonObjectFunction`.
     * @param ctx the parse tree
     */
    enterJsonObjectFunction?: (ctx: JsonObjectFunctionContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.jsonObjectFunction`.
     * @param ctx the parse tree
     */
    exitJsonObjectFunction?: (ctx: JsonObjectFunctionContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.jsonObjectAggFunction`.
     * @param ctx the parse tree
     */
    enterJsonObjectAggFunction?: (ctx: JsonObjectAggFunctionContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.jsonObjectAggFunction`.
     * @param ctx the parse tree
     */
    exitJsonObjectAggFunction?: (ctx: JsonObjectAggFunctionContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.jsonArrayFunction`.
     * @param ctx the parse tree
     */
    enterJsonArrayFunction?: (ctx: JsonArrayFunctionContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.jsonArrayFunction`.
     * @param ctx the parse tree
     */
    exitJsonArrayFunction?: (ctx: JsonArrayFunctionContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.jsonArrayAggFunction`.
     * @param ctx the parse tree
     */
    enterJsonArrayAggFunction?: (ctx: JsonArrayAggFunctionContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.jsonArrayAggFunction`.
     * @param ctx the parse tree
     */
    exitJsonArrayAggFunction?: (ctx: JsonArrayAggFunctionContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.jsonKeyVal`.
     * @param ctx the parse tree
     */
    enterJsonKeyVal?: (ctx: JsonKeyValContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.jsonKeyVal`.
     * @param ctx the parse tree
     */
    exitJsonKeyVal?: (ctx: JsonKeyValContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.jsonVal`.
     * @param ctx the parse tree
     */
    enterJsonVal?: (ctx: JsonValContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.jsonVal`.
     * @param ctx the parse tree
     */
    exitJsonVal?: (ctx: JsonValContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.nullBehavior`.
     * @param ctx the parse tree
     */
    enterNullBehavior?: (ctx: NullBehaviorContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.nullBehavior`.
     * @param ctx the parse tree
     */
    exitNullBehavior?: (ctx: NullBehaviorContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.temporalFunction`.
     * @param ctx the parse tree
     */
    enterTemporalFunction?: (ctx: TemporalFunctionContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.temporalFunction`.
     * @param ctx the parse tree
     */
    exitTemporalFunction?: (ctx: TemporalFunctionContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.temporalOverlaps`.
     * @param ctx the parse tree
     */
    enterTemporalOverlaps?: (ctx: TemporalOverlapsContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.temporalOverlaps`.
     * @param ctx the parse tree
     */
    exitTemporalOverlaps?: (ctx: TemporalOverlapsContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.temporalDate`.
     * @param ctx the parse tree
     */
    enterTemporalDate?: (ctx: TemporalDateContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.temporalDate`.
     * @param ctx the parse tree
     */
    exitTemporalDate?: (ctx: TemporalDateContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.temporalTime`.
     * @param ctx the parse tree
     */
    enterTemporalTime?: (ctx: TemporalTimeContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.temporalTime`.
     * @param ctx the parse tree
     */
    exitTemporalTime?: (ctx: TemporalTimeContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.temporalTimestamp`.
     * @param ctx the parse tree
     */
    enterTemporalTimestamp?: (ctx: TemporalTimestampContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.temporalTimestamp`.
     * @param ctx the parse tree
     */
    exitTemporalTimestamp?: (ctx: TemporalTimestampContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.yearMonthInterval`.
     * @param ctx the parse tree
     */
    enterYearMonthInterval?: (ctx: YearMonthIntervalContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.yearMonthInterval`.
     * @param ctx the parse tree
     */
    exitYearMonthInterval?: (ctx: YearMonthIntervalContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.dayTimeInterval`.
     * @param ctx the parse tree
     */
    enterDayTimeInterval?: (ctx: DayTimeIntervalContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.dayTimeInterval`.
     * @param ctx the parse tree
     */
    exitDayTimeInterval?: (ctx: DayTimeIntervalContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.yearUnit`.
     * @param ctx the parse tree
     */
    enterYearUnit?: (ctx: YearUnitContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.yearUnit`.
     * @param ctx the parse tree
     */
    exitYearUnit?: (ctx: YearUnitContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.monthUnit`.
     * @param ctx the parse tree
     */
    enterMonthUnit?: (ctx: MonthUnitContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.monthUnit`.
     * @param ctx the parse tree
     */
    exitMonthUnit?: (ctx: MonthUnitContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.dayUnit`.
     * @param ctx the parse tree
     */
    enterDayUnit?: (ctx: DayUnitContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.dayUnit`.
     * @param ctx the parse tree
     */
    exitDayUnit?: (ctx: DayUnitContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.hourUnit`.
     * @param ctx the parse tree
     */
    enterHourUnit?: (ctx: HourUnitContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.hourUnit`.
     * @param ctx the parse tree
     */
    exitHourUnit?: (ctx: HourUnitContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.minuteUnit`.
     * @param ctx the parse tree
     */
    enterMinuteUnit?: (ctx: MinuteUnitContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.minuteUnit`.
     * @param ctx the parse tree
     */
    exitMinuteUnit?: (ctx: MinuteUnitContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.secondUnit`.
     * @param ctx the parse tree
     */
    enterSecondUnit?: (ctx: SecondUnitContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.secondUnit`.
     * @param ctx the parse tree
     */
    exitSecondUnit?: (ctx: SecondUnitContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.timeIntervalUnit`.
     * @param ctx the parse tree
     */
    enterTimeIntervalUnit?: (ctx: TimeIntervalUnitContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.timeIntervalUnit`.
     * @param ctx the parse tree
     */
    exitTimeIntervalUnit?: (ctx: TimeIntervalUnitContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.timePointUnit`.
     * @param ctx the parse tree
     */
    enterTimePointUnit?: (ctx: TimePointUnitContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.timePointUnit`.
     * @param ctx the parse tree
     */
    exitTimePointUnit?: (ctx: TimePointUnitContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.aggregateWithin`.
     * @param ctx the parse tree
     */
    enterAggregateWithin?: (ctx: AggregateWithinContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.aggregateWithin`.
     * @param ctx the parse tree
     */
    exitAggregateWithin?: (ctx: AggregateWithinContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.aggregateFilter`.
     * @param ctx the parse tree
     */
    enterAggregateFilter?: (ctx: AggregateFilterContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.aggregateFilter`.
     * @param ctx the parse tree
     */
    exitAggregateFilter?: (ctx: AggregateFilterContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.aggregateNulls`.
     * @param ctx the parse tree
     */
    enterAggregateNulls?: (ctx: AggregateNullsContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.aggregateNulls`.
     * @param ctx the parse tree
     */
    exitAggregateNulls?: (ctx: AggregateNullsContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.overWindow`.
     * @param ctx the parse tree
     */
    enterOverWindow?: (ctx: OverWindowContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.overWindow`.
     * @param ctx the parse tree
     */
    exitOverWindow?: (ctx: OverWindowContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.expressions`.
     * @param ctx the parse tree
     */
    enterExpressions?: (ctx: ExpressionsContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.expressions`.
     * @param ctx the parse tree
     */
    exitExpressions?: (ctx: ExpressionsContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.tableData`.
     * @param ctx the parse tree
     */
    enterTableData?: (ctx: TableDataContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.tableData`.
     * @param ctx the parse tree
     */
    exitTableData?: (ctx: TableDataContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.parenthesisExpressions`.
     * @param ctx the parse tree
     */
    enterParenthesisExpressions?: (ctx: ParenthesisExpressionsContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.parenthesisExpressions`.
     * @param ctx the parse tree
     */
    exitParenthesisExpressions?: (ctx: ParenthesisExpressionsContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.parenthesisQuery`.
     * @param ctx the parse tree
     */
    enterParenthesisQuery?: (ctx: ParenthesisQueryContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.parenthesisQuery`.
     * @param ctx the parse tree
     */
    exitParenthesisQuery?: (ctx: ParenthesisQueryContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.parenthesisSelect`.
     * @param ctx the parse tree
     */
    enterParenthesisSelect?: (ctx: ParenthesisSelectContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.parenthesisSelect`.
     * @param ctx the parse tree
     */
    exitParenthesisSelect?: (ctx: ParenthesisSelectContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.valueOptionalAssignments`.
     * @param ctx the parse tree
     */
    enterValueOptionalAssignments?: (ctx: ValueOptionalAssignmentsContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.valueOptionalAssignments`.
     * @param ctx the parse tree
     */
    exitValueOptionalAssignments?: (ctx: ValueOptionalAssignmentsContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.valueAssignments`.
     * @param ctx the parse tree
     */
    enterValueAssignments?: (ctx: ValueAssignmentsContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.valueAssignments`.
     * @param ctx the parse tree
     */
    exitValueAssignments?: (ctx: ValueAssignmentsContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.valueAssignment`.
     * @param ctx the parse tree
     */
    enterValueAssignment?: (ctx: ValueAssignmentContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.valueAssignment`.
     * @param ctx the parse tree
     */
    exitValueAssignment?: (ctx: ValueAssignmentContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.columns`.
     * @param ctx the parse tree
     */
    enterColumns?: (ctx: ColumnsContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.columns`.
     * @param ctx the parse tree
     */
    exitColumns?: (ctx: ColumnsContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.comment`.
     * @param ctx the parse tree
     */
    enterComment?: (ctx: CommentContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.comment`.
     * @param ctx the parse tree
     */
    exitComment?: (ctx: CommentContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.orderBy`.
     * @param ctx the parse tree
     */
    enterOrderBy?: (ctx: OrderByContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.orderBy`.
     * @param ctx the parse tree
     */
    exitOrderBy?: (ctx: OrderByContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.orderItems`.
     * @param ctx the parse tree
     */
    enterOrderItems?: (ctx: OrderItemsContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.orderItems`.
     * @param ctx the parse tree
     */
    exitOrderItems?: (ctx: OrderItemsContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.partitionBy`.
     * @param ctx the parse tree
     */
    enterPartitionBy?: (ctx: PartitionByContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.partitionBy`.
     * @param ctx the parse tree
     */
    exitPartitionBy?: (ctx: PartitionByContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.matchRecognize`.
     * @param ctx the parse tree
     */
    enterMatchRecognize?: (ctx: MatchRecognizeContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.matchRecognize`.
     * @param ctx the parse tree
     */
    exitMatchRecognize?: (ctx: MatchRecognizeContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.measures`.
     * @param ctx the parse tree
     */
    enterMeasures?: (ctx: MeasuresContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.measures`.
     * @param ctx the parse tree
     */
    exitMeasures?: (ctx: MeasuresContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.measureColumns`.
     * @param ctx the parse tree
     */
    enterMeasureColumns?: (ctx: MeasureColumnsContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.measureColumns`.
     * @param ctx the parse tree
     */
    exitMeasureColumns?: (ctx: MeasureColumnsContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.perMatch`.
     * @param ctx the parse tree
     */
    enterPerMatch?: (ctx: PerMatchContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.perMatch`.
     * @param ctx the parse tree
     */
    exitPerMatch?: (ctx: PerMatchContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.afterMatch`.
     * @param ctx the parse tree
     */
    enterAfterMatch?: (ctx: AfterMatchContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.afterMatch`.
     * @param ctx the parse tree
     */
    exitAfterMatch?: (ctx: AfterMatchContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.patternMatch`.
     * @param ctx the parse tree
     */
    enterPatternMatch?: (ctx: PatternMatchContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.patternMatch`.
     * @param ctx the parse tree
     */
    exitPatternMatch?: (ctx: PatternMatchContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.withinMatch`.
     * @param ctx the parse tree
     */
    enterWithinMatch?: (ctx: WithinMatchContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.withinMatch`.
     * @param ctx the parse tree
     */
    exitWithinMatch?: (ctx: WithinMatchContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.subsetMatch`.
     * @param ctx the parse tree
     */
    enterSubsetMatch?: (ctx: SubsetMatchContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.subsetMatch`.
     * @param ctx the parse tree
     */
    exitSubsetMatch?: (ctx: SubsetMatchContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.subsetItems`.
     * @param ctx the parse tree
     */
    enterSubsetItems?: (ctx: SubsetItemsContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.subsetItems`.
     * @param ctx the parse tree
     */
    exitSubsetItems?: (ctx: SubsetItemsContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.subsetItem`.
     * @param ctx the parse tree
     */
    enterSubsetItem?: (ctx: SubsetItemContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.subsetItem`.
     * @param ctx the parse tree
     */
    exitSubsetItem?: (ctx: SubsetItemContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.defineMatch`.
     * @param ctx the parse tree
     */
    enterDefineMatch?: (ctx: DefineMatchContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.defineMatch`.
     * @param ctx the parse tree
     */
    exitDefineMatch?: (ctx: DefineMatchContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.defineItems`.
     * @param ctx the parse tree
     */
    enterDefineItems?: (ctx: DefineItemsContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.defineItems`.
     * @param ctx the parse tree
     */
    exitDefineItems?: (ctx: DefineItemsContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.defineItem`.
     * @param ctx the parse tree
     */
    enterDefineItem?: (ctx: DefineItemContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.defineItem`.
     * @param ctx the parse tree
     */
    exitDefineItem?: (ctx: DefineItemContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.measureColumn`.
     * @param ctx the parse tree
     */
    enterMeasureColumn?: (ctx: MeasureColumnContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.measureColumn`.
     * @param ctx the parse tree
     */
    exitMeasureColumn?: (ctx: MeasureColumnContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.pattern`.
     * @param ctx the parse tree
     */
    enterPattern?: (ctx: PatternContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.pattern`.
     * @param ctx the parse tree
     */
    exitPattern?: (ctx: PatternContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.patternTerm`.
     * @param ctx the parse tree
     */
    enterPatternTerm?: (ctx: PatternTermContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.patternTerm`.
     * @param ctx the parse tree
     */
    exitPatternTerm?: (ctx: PatternTermContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.patternFactor`.
     * @param ctx the parse tree
     */
    enterPatternFactor?: (ctx: PatternFactorContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.patternFactor`.
     * @param ctx the parse tree
     */
    exitPatternFactor?: (ctx: PatternFactorContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.patternPrimary`.
     * @param ctx the parse tree
     */
    enterPatternPrimary?: (ctx: PatternPrimaryContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.patternPrimary`.
     * @param ctx the parse tree
     */
    exitPatternPrimary?: (ctx: PatternPrimaryContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.patternQuantifier`.
     * @param ctx the parse tree
     */
    enterPatternQuantifier?: (ctx: PatternQuantifierContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.patternQuantifier`.
     * @param ctx the parse tree
     */
    exitPatternQuantifier?: (ctx: PatternQuantifierContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.alias`.
     * @param ctx the parse tree
     */
    enterAlias?: (ctx: AliasContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.alias`.
     * @param ctx the parse tree
     */
    exitAlias?: (ctx: AliasContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.aliases`.
     * @param ctx the parse tree
     */
    enterAliases?: (ctx: AliasesContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.aliases`.
     * @param ctx the parse tree
     */
    exitAliases?: (ctx: AliasesContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.keyword`.
     * @param ctx the parse tree
     */
    enterKeyword?: (ctx: KeywordContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.keyword`.
     * @param ctx the parse tree
     */
    exitKeyword?: (ctx: KeywordContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.anyName`.
     * @param ctx the parse tree
     */
    enterAnyName?: (ctx: AnyNameContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.anyName`.
     * @param ctx the parse tree
     */
    exitAnyName?: (ctx: AnyNameContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.arrowWindowFunction`.
     * @param ctx the parse tree
     */
    enterArrowWindowFunction?: (ctx: ArrowWindowFunctionContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.arrowWindowFunction`.
     * @param ctx the parse tree
     */
    exitArrowWindowFunction?: (ctx: ArrowWindowFunctionContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.charsetIntroducer`.
     * @param ctx the parse tree
     */
    enterCharsetIntroducer?: (ctx: CharsetIntroducerContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.charsetIntroducer`.
     * @param ctx the parse tree
     */
    exitCharsetIntroducer?: (ctx: CharsetIntroducerContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.charsetLiteral`.
     * @param ctx the parse tree
     */
    enterCharsetLiteral?: (ctx: CharsetLiteralContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.charsetLiteral`.
     * @param ctx the parse tree
     */
    exitCharsetLiteral?: (ctx: CharsetLiteralContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.literalValue`.
     * @param ctx the parse tree
     */
    enterLiteralValue?: (ctx: LiteralValueContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.literalValue`.
     * @param ctx the parse tree
     */
    exitLiteralValue?: (ctx: LiteralValueContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.unaryOperator`.
     * @param ctx the parse tree
     */
    enterUnaryOperator?: (ctx: UnaryOperatorContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.unaryOperator`.
     * @param ctx the parse tree
     */
    exitUnaryOperator?: (ctx: UnaryOperatorContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.whenExpr`.
     * @param ctx the parse tree
     */
    enterWhenExpr?: (ctx: WhenExprContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.whenExpr`.
     * @param ctx the parse tree
     */
    exitWhenExpr?: (ctx: WhenExprContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.thenExpr`.
     * @param ctx the parse tree
     */
    enterThenExpr?: (ctx: ThenExprContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.thenExpr`.
     * @param ctx the parse tree
     */
    exitThenExpr?: (ctx: ThenExprContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.elseExpr`.
     * @param ctx the parse tree
     */
    enterElseExpr?: (ctx: ElseExprContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.elseExpr`.
     * @param ctx the parse tree
     */
    exitElseExpr?: (ctx: ElseExprContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.caseEnd`.
     * @param ctx the parse tree
     */
    enterCaseEnd?: (ctx: CaseEndContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.caseEnd`.
     * @param ctx the parse tree
     */
    exitCaseEnd?: (ctx: CaseEndContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.arrayConstruct`.
     * @param ctx the parse tree
     */
    enterArrayConstruct?: (ctx: ArrayConstructContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.arrayConstruct`.
     * @param ctx the parse tree
     */
    exitArrayConstruct?: (ctx: ArrayConstructContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.compare`.
     * @param ctx the parse tree
     */
    enterCompare?: (ctx: CompareContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.compare`.
     * @param ctx the parse tree
     */
    exitCompare?: (ctx: CompareContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.logicalBind`.
     * @param ctx the parse tree
     */
    enterLogicalBind?: (ctx: LogicalBindContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.logicalBind`.
     * @param ctx the parse tree
     */
    exitLogicalBind?: (ctx: LogicalBindContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.functionParam`.
     * @param ctx the parse tree
     */
    enterFunctionParam?: (ctx: FunctionParamContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.functionParam`.
     * @param ctx the parse tree
     */
    exitFunctionParam?: (ctx: FunctionParamContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.expr`.
     * @param ctx the parse tree
     */
    enterExpr?: (ctx: ExprContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.expr`.
     * @param ctx the parse tree
     */
    exitExpr?: (ctx: ExprContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.name`.
     * @param ctx the parse tree
     */
    enterName?: (ctx: NameContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.name`.
     * @param ctx the parse tree
     */
    exitName?: (ctx: NameContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.columnName`.
     * @param ctx the parse tree
     */
    enterColumnName?: (ctx: ColumnNameContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.columnName`.
     * @param ctx the parse tree
     */
    exitColumnName?: (ctx: ColumnNameContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.tableName`.
     * @param ctx the parse tree
     */
    enterTableName?: (ctx: TableNameContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.tableName`.
     * @param ctx the parse tree
     */
    exitTableName?: (ctx: TableNameContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.databaseName`.
     * @param ctx the parse tree
     */
    enterDatabaseName?: (ctx: DatabaseNameContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.databaseName`.
     * @param ctx the parse tree
     */
    exitDatabaseName?: (ctx: DatabaseNameContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.catalogName`.
     * @param ctx the parse tree
     */
    enterCatalogName?: (ctx: CatalogNameContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.catalogName`.
     * @param ctx the parse tree
     */
    exitCatalogName?: (ctx: CatalogNameContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.viewName`.
     * @param ctx the parse tree
     */
    enterViewName?: (ctx: ViewNameContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.viewName`.
     * @param ctx the parse tree
     */
    exitViewName?: (ctx: ViewNameContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.functionName`.
     * @param ctx the parse tree
     */
    enterFunctionName?: (ctx: FunctionNameContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.functionName`.
     * @param ctx the parse tree
     */
    exitFunctionName?: (ctx: FunctionNameContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.column`.
     * @param ctx the parse tree
     */
    enterColumn?: (ctx: ColumnContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.column`.
     * @param ctx the parse tree
     */
    exitColumn?: (ctx: ColumnContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.view`.
     * @param ctx the parse tree
     */
    enterView?: (ctx: ViewContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.view`.
     * @param ctx the parse tree
     */
    exitView?: (ctx: ViewContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.table`.
     * @param ctx the parse tree
     */
    enterTable?: (ctx: TableContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.table`.
     * @param ctx the parse tree
     */
    exitTable?: (ctx: TableContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.database`.
     * @param ctx the parse tree
     */
    enterDatabase?: (ctx: DatabaseContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.database`.
     * @param ctx the parse tree
     */
    exitDatabase?: (ctx: DatabaseContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.catalog`.
     * @param ctx the parse tree
     */
    enterCatalog?: (ctx: CatalogContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.catalog`.
     * @param ctx the parse tree
     */
    exitCatalog?: (ctx: CatalogContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.reservedKeywords`.
     * @param ctx the parse tree
     */
    enterReservedKeywords?: (ctx: ReservedKeywordsContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.reservedKeywords`.
     * @param ctx the parse tree
     */
    exitReservedKeywords?: (ctx: ReservedKeywordsContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.nonReservedKeywords`.
     * @param ctx the parse tree
     */
    enterNonReservedKeywords?: (ctx: NonReservedKeywordsContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.nonReservedKeywords`.
     * @param ctx the parse tree
     */
    exitNonReservedKeywords?: (ctx: NonReservedKeywordsContext) => void;
    /**
     * Enter a parse tree produced by `FlinkSQLParser.commonKeywords`.
     * @param ctx the parse tree
     */
    enterCommonKeywords?: (ctx: CommonKeywordsContext) => void;
    /**
     * Exit a parse tree produced by `FlinkSQLParser.commonKeywords`.
     * @param ctx the parse tree
     */
    exitCommonKeywords?: (ctx: CommonKeywordsContext) => void;
}
