import type { AstNodeBase, AstNodeLayout, ExpressionUnion, IdentifierNode, LiteralStringNode } from "@/types";
import type { BattleScriptToAST } from "@/services";
import type { ObjectPropertyContext } from "@/services/grammar/ts/language/BattleScriptParser";
import type { BattleScriptFromAST } from "@/services/fullAst/BattleScriptFromAST";
import type { VisitOptions } from "@/types/VisitOptions";
export interface ObjectPropertyNode extends AstNodeBase {
    kind: "OBJECT_PROPERTY";
    key: IdentifierNode | LiteralStringNode;
    value: ExpressionUnion;
}
export declare const ObjectPropertyNodeLayout: AstNodeLayout<ObjectPropertyNode>[];
export declare const objectPropertyToAstNode: (instance: BattleScriptToAST, ctx: ObjectPropertyContext) => ObjectPropertyNode;
export declare const objectPropertyFromAstNode: (instance: BattleScriptFromAST, node: ObjectPropertyNode, options?: VisitOptions) => string;
//# sourceMappingURL=ObjectPropertyNode.d.ts.map