import type { AstNode, AstNodeBase, AstNodeLayout, ImportDeclarationNode } from "@/types";
import type { BattleScriptToAST } from "@/services";
import type { RootContext } from "@/services/grammar/ts/language/BattleScriptParser";
import type { BattleScriptFromAST } from "@/services/fullAst/BattleScriptFromAST";
import type { VisitOptions } from "@/types/VisitOptions";
export declare function resetModuleCache(): void;
export interface RootNode extends AstNodeBase {
    kind: "ROOT";
    imports?: ImportDeclarationNode[];
    body: AstNode[];
}
export declare const RootNodeLayout: AstNodeLayout<RootNode>[];
export declare const rootToAstNode: (instance: BattleScriptToAST, ctx: RootContext) => RootNode;
export declare const rootFromAstNode: (instance: BattleScriptFromAST, node: RootNode, options?: VisitOptions) => string;
//# sourceMappingURL=RootNode.d.ts.map