import { ElementNode, NodeKey, SerializedElementNode, DOMConversionMap, EditorConfig } from 'lexical';
export type SerializedBlockNode = SerializedElementNode & {
    type: 'block';
    version: 1;
};
export type SerializedProseNode = SerializedElementNode & {
    type: 'prose';
    version: 1;
};
export declare class BlockNode extends ElementNode {
    static getType(): string;
    constructor(key?: NodeKey);
    static clone(node: BlockNode): BlockNode;
    createDOM(config: EditorConfig): HTMLElement;
    updateDOM(prevNode: BlockNode, dom: HTMLElement, config: EditorConfig): boolean;
    static importJSON(serializedNode: SerializedBlockNode): BlockNode;
    exportJSON(): SerializedBlockNode;
    static importDOM(): DOMConversionMap | null;
}
export declare class ProseNode extends ElementNode {
    static getType(): string;
    constructor(key?: NodeKey);
    static clone(node: ProseNode): ProseNode;
    createDOM(config: EditorConfig): HTMLElement;
    updateDOM(prevNode: ProseNode, dom: HTMLElement, config: EditorConfig): boolean;
    static importJSON(serializedNode: SerializedProseNode): ProseNode;
    exportJSON(): SerializedProseNode;
    static importDOM(): DOMConversionMap | null;
}
export declare function $createBlockNode(): BlockNode;
export declare function $createProseNode(): ProseNode;
//# sourceMappingURL=utils.d.ts.map