///
import { DecoratorNode, DOMConversionMap, DOMExportOutput, EditorConfig, LexicalEditor, LexicalNode, NodeKey } from 'lexical';
export declare function generateStableFootnoteId(content: string, pageNumber: string): string;
type SerializedFootnoteNode = {
type: 'footnote';
version: 1;
id: string;
className: string | null;
content: string;
pageNumber: string;
number?: any;
};
export declare class FootnoteNode extends DecoratorNode {
__id: string;
__className: string | null;
__content: string;
__pageNumber: string;
__number?: any;
static getType(): string;
static clone(node: FootnoteNode): FootnoteNode;
constructor(id: string, // ID is now required
className: string | null | undefined, content: string, pageNumber: string, key?: NodeKey, number?: any);
getId(): string;
getClassName(): string | null;
getContent(): string | undefined;
setContent(content: string): void;
createDOM(_config: EditorConfig): HTMLElement;
updateDOM(prevNode: FootnoteNode, dom: HTMLElement): boolean;
decorate(_editor: LexicalEditor, _config: EditorConfig): JSX.Element;
exportJSON(): SerializedFootnoteNode;
static importJSON(serialized: SerializedFootnoteNode): FootnoteNode;
static importDOM(): DOMConversionMap | null;
exportDOM(): DOMExportOutput;
toCodoxNode(): {
type: string;
version: 1;
text: string;
id: string;
className: string | null;
content: string;
pageNumber: string;
codox_metadata: {
type: "footnote";
id: string;
_namespace: string;
};
};
static fromCodoxNode(codoxNode: any): {
type: string;
version: any;
content: any;
id: any;
className: any;
pageNumber: any;
};
}
export declare function $getAllFootnoteNodes(): FootnoteNode[];
export declare function FootnotePlugin(): JSX.Element | null;
export declare function $createFootnoteNode(context: string | undefined, className: string | null | undefined, pageNumber: string): FootnoteNode;
export declare function $isFootnoteNode(node: LexicalNode | null | undefined): node is FootnoteNode;
export {};