import type { ProgramNode, DashboardNode, ChartCallNode, FilterCallNode, VariableDeclNode, DecoratorNode, SQLQueryNode, NamedArgNode, StringLiteralNode, NumberLiteralNode, BooleanLiteralNode, ArrayLiteralNode, IdentifierNode, BinaryExprNode, IntervalExprNode, FunctionCallNode, TemplateStringNode, ExpressionNode, DashboardBodyItem, StatementNode, BlockDeclNode, TermDeclNode, BusinessViewDeclNode } from './nodes.js'; export interface ASTVisitor { visitProgram(node: ProgramNode): T; visitDashboard(node: DashboardNode): T; visitChartCall(node: ChartCallNode): T; visitFilterCall(node: FilterCallNode): T; visitVariableDecl(node: VariableDeclNode): T; visitDecorator(node: DecoratorNode): T; visitSQLQuery(node: SQLQueryNode): T; visitNamedArg(node: NamedArgNode): T; visitStringLiteral(node: StringLiteralNode): T; visitNumberLiteral(node: NumberLiteralNode): T; visitBooleanLiteral(node: BooleanLiteralNode): T; visitArrayLiteral(node: ArrayLiteralNode): T; visitIdentifier(node: IdentifierNode): T; visitBinaryExpr(node: BinaryExprNode): T; visitIntervalExpr(node: IntervalExprNode): T; visitFunctionCall(node: FunctionCallNode): T; visitTemplateString(node: TemplateStringNode): T; visitBlockDecl(node: BlockDeclNode): T; visitTermDecl(node: TermDeclNode): T; visitBusinessViewDecl(node: BusinessViewDeclNode): T; } export declare abstract class BaseVisitor implements ASTVisitor { visitProgram(node: ProgramNode): T; visitStatement(node: StatementNode): T; visitDashboard(node: DashboardNode): T; visitDashboardBodyItem(node: DashboardBodyItem): T; visitFilterCall(node: FilterCallNode): T; visitChartCall(node: ChartCallNode): T; visitVariableDecl(node: VariableDeclNode): T; visitDecorator(node: DecoratorNode): T; visitSQLQuery(_node: SQLQueryNode): T; visitNamedArg(node: NamedArgNode): T; visitExpression(node: ExpressionNode): T; visitStringLiteral(_node: StringLiteralNode): T; visitNumberLiteral(_node: NumberLiteralNode): T; visitBooleanLiteral(_node: BooleanLiteralNode): T; visitArrayLiteral(node: ArrayLiteralNode): T; visitIdentifier(_node: IdentifierNode): T; visitBinaryExpr(node: BinaryExprNode): T; visitIntervalExpr(_node: IntervalExprNode): T; visitFunctionCall(node: FunctionCallNode): T; visitTemplateString(node: TemplateStringNode): T; visitBlockDecl(node: BlockDeclNode): T; visitTermDecl(node: TermDeclNode): T; visitBusinessViewDecl(node: BusinessViewDeclNode): T; } //# sourceMappingURL=visitor.d.ts.map