import type { AstNodeBase, AstNodeLayout, BlockStatementNode, ExpressionUnion } from "@/types";
import type { BattleScriptToAST } from "@/services";
import type { EvaluateCaseContext } from "@/services/grammar/ts/language/BattleScriptParser";
import type { BattleScriptFromAST } from "@/services/fullAst/BattleScriptFromAST";
import type { VisitOptions } from "@/types/VisitOptions";
export interface EvaluateCaseNode extends AstNodeBase {
    kind: "EVALUATE_CASE";
    tests: ExpressionUnion[];
    body: BlockStatementNode;
}
export declare const EvaluateCaseNodeLayout: AstNodeLayout<EvaluateCaseNode>[];
export declare const evaluateCaseToAstNode: (instance: BattleScriptToAST, ctx: EvaluateCaseContext) => EvaluateCaseNode;
export declare const evaluateCaseFromAstNode: (instance: BattleScriptFromAST, node: EvaluateCaseNode, options?: VisitOptions) => string;
//# sourceMappingURL=EvaluateCaseNode.d.ts.map