import type { AstNodeBase, AstNodeLayout, DataTypeNode, IdentifierNode } from "@/types";
import type { BattleScriptToAST } from "@/services";
import type { InterfacePropertyContext } from "@/services/grammar/ts/language/BattleScriptParser";
import type { BattleScriptFromAST } from "@/services/fullAst/BattleScriptFromAST";
import type { VisitOptions } from "@/types/VisitOptions";
export interface InterfacePropertyDeclarationNode extends AstNodeBase {
    kind: "INTERFACE_PROPERTY";
    type: DataTypeNode;
    key: IdentifierNode;
}
export declare const InterfacePropertyDeclarationNodeLayout: AstNodeLayout<InterfacePropertyDeclarationNode>[];
export declare const interfacePropertyToAstNode: (instance: BattleScriptToAST, ctx: InterfacePropertyContext) => InterfacePropertyDeclarationNode;
export declare const interfacePropertyDeclarationFromAstNode: (instance: BattleScriptFromAST, node: InterfacePropertyDeclarationNode, options?: VisitOptions) => string;
//# sourceMappingURL=InterfacePropertyDeclarationNode.d.ts.map