import type { AstNodeBase, AstNodeLayout, TypeUnion } from "@/types";
import type { BattleScriptToAST } from "@/services";
import type { FunctionNameIdentifierContext, IdentifierContext } from "@/services/grammar/ts/language/BattleScriptParser";
import type { BattleScriptFromAST } from "@/services/fullAst/BattleScriptFromAST";
import type { VisitOptions } from "@/types/VisitOptions";
export interface IdentifierNode extends AstNodeBase {
    kind: "IDENTIFIER";
    type?: TypeUnion;
    value: string;
}
export declare const IdentifierNodeLayout: AstNodeLayout<IdentifierNode>[];
export declare const identifierToAstNode: (instance: BattleScriptToAST, ctx: IdentifierContext) => IdentifierNode;
export declare const functionNameIdentifierToAstNode: (instance: BattleScriptToAST, ctx: FunctionNameIdentifierContext) => IdentifierNode;
export declare const identifierFromAstNode: (instance: BattleScriptFromAST, node: IdentifierNode, options?: VisitOptions) => string;
//# sourceMappingURL=IdentifierNode.d.ts.map