import type { AstNode, AstNodeBase, AstNodeLayout, IdentifierNode } from "@/types";
import type { BattleScriptToAST } from "@/services";
import type { EnumDeclarationContext } from "@/services/grammar/ts/language/BattleScriptParser";
import type { BattleScriptFromAST } from "@/services/fullAst/BattleScriptFromAST";
import type { VisitOptions } from "@/types/VisitOptions";
export interface EnumDeclarationNode extends AstNodeBase {
    kind: "ENUM_DECLARATION";
    id: IdentifierNode;
    body: AstNode[];
    isExported?: boolean;
}
export declare const EnumDeclarationNodeLayout: AstNodeLayout<EnumDeclarationNode>[];
export declare const enumDeclarationToAstNode: (instance: BattleScriptToAST, ctx: EnumDeclarationContext) => EnumDeclarationNode;
export declare const enumDeclarationFromAstNode: (instance: BattleScriptFromAST, node: EnumDeclarationNode, _options?: VisitOptions) => string;
//# sourceMappingURL=EnumDeclarationNode.d.ts.map