import { DecoratorNode, EditorConfig, LexicalEditor, LexicalNode, NodeKey, SerializedLexicalNode, Spread } from 'lexical';
import { ReactElement } from 'react';
export type SerializedReferenceLinkNode = Spread<{
    href: string;
    label?: string;
}, SerializedLexicalNode>;
export declare class ReferenceLinkNode extends DecoratorNode<ReactElement> {
    __href: string;
    __label?: string;
    static getType(): string;
    static clone(node: ReferenceLinkNode): ReferenceLinkNode;
    constructor(href: string, label?: string, key?: NodeKey);
    createDOM(_config: EditorConfig, _editor: LexicalEditor): HTMLElement;
    updateDOM(_prevNode: ReferenceLinkNode, _dom: HTMLElement, _config: EditorConfig): boolean;
    getTextContent(): string;
    exportJSON(): SerializedReferenceLinkNode;
    static importJSON(serializedNode: SerializedReferenceLinkNode): ReferenceLinkNode;
    decorate(_editor: LexicalEditor, _config: EditorConfig): ReactElement;
}
export declare function $createReferenceLinkNode(href: string, label?: string): ReferenceLinkNode;
export declare function $isReferenceLinkNode(node: LexicalNode | null | undefined): node is ReferenceLinkNode;
