import type { AstNodeBase, AstNodeLayout, BinaryOperator } from "@/types";
import type { BattleScriptToAST } from "@/services";
import type { BinaryExpressionContext } from "@/services/grammar/ts/language/BattleScriptParser";
import type { BattleScriptFromAST } from "@/services/fullAst/BattleScriptFromAST";
import type { VisitOptions } from "@/types/VisitOptions";
export interface OptimisedBinaryExpressionNode extends AstNodeBase {
    kind: "OPTIMISED_BINARY_EXPRESSION";
    left: string;
    operator: BinaryOperator;
    right: string;
}
export declare const OptimisedBinaryExpressionNodeLayout: AstNodeLayout<OptimisedBinaryExpressionNode>[];
export declare const optimisedBinaryExpressionToAstNode: (instance: BattleScriptToAST, ctx: BinaryExpressionContext) => OptimisedBinaryExpressionNode;
export declare const optimisedBinaryExpressionFromAstNode: (instance: BattleScriptFromAST, node: OptimisedBinaryExpressionNode, options?: VisitOptions) => string;
//# sourceMappingURL=OptimisedBinaryExpressionNode.d.ts.map