import type { DOMConversionMap, DOMExportOutput, EditorConfig, LexicalNode, NodeKey, SerializedLexicalNode, Spread } from 'lexical'; import { DecoratorNode } from 'lexical'; import { type JSX } from 'react'; export interface PostInfo { id: string; title: string; link: string; type: 'post' | 'blog' | 'doc' | 'task'; boardId: string; external?: boolean; } export type SerializedPostLinkNode = Spread<{ postInfo: string; type: 'post-link'; version: 1; }, SerializedLexicalNode>; export declare class PostLinkNode extends DecoratorNode { __postInfo: PostInfo; static getType(): string; static clone(node: PostLinkNode): PostLinkNode; static importJSON(serializedNode: SerializedPostLinkNode): PostLinkNode; exportDOM(): DOMExportOutput; static importDOM(): DOMConversionMap | null; constructor(postInfo: PostInfo, key?: NodeKey); exportJSON(): SerializedPostLinkNode; createDOM(config: EditorConfig): HTMLElement; updateDOM(): false; getPostInfo(): PostInfo; decorate(): JSX.Element; } export declare function $createPostLinkNode(postInfo: PostInfo): PostLinkNode; export declare function $isPostLinkNode(node: PostLinkNode | LexicalNode | null | undefined): node is PostLinkNode;