import type { AstNodeBase, AstNodeLayout } from "@/types";
import type { BattleScriptToAST } from "@/services";
import type { AssignmentExpressionContext } from "@/services/grammar/ts/language/BattleScriptParser";
import type { BattleScriptFromAST } from "@/services/fullAst/BattleScriptFromAST";
import type { VisitOptions } from "@/types/VisitOptions";
export interface OptimisedAssignmentExpressionNode extends AstNodeBase {
    kind: "OPTIMISED_ASSIGNMENT_EXPRESSION";
    left: string;
    operator: "=" | "+=" | "-=";
    right: string;
}
export declare const OptimisedAssignmentExpressionNodeLayout: AstNodeLayout<OptimisedAssignmentExpressionNode>[];
export declare const optimisedAssignmentExpressionToAstNode: (instance: BattleScriptToAST, ctx: AssignmentExpressionContext) => OptimisedAssignmentExpressionNode;
export declare const optimisedAssignmentExpressionFromAstNode: (instance: BattleScriptFromAST, node: OptimisedAssignmentExpressionNode, options?: VisitOptions) => string;
//# sourceMappingURL=OptimisedAssignmentExpressionNode.d.ts.map