import { EditorConfig, LexicalEditor, LexicalNode, NodeKey, SerializedLexicalNode, Spread, DecoratorNode } from 'lexical'; import { ReactElement } from 'react'; import { EmbedType } from '../url-matchers'; export type SerializedEmbedNode = Spread<{ url: string; source: EmbedType | null; }, SerializedLexicalNode>; export declare class EmbedNode extends DecoratorNode { __url: string; __source: EmbedType | null; static getType(): string; static clone(node: EmbedNode): EmbedNode; constructor(url: string, source: EmbedType | null, key?: NodeKey); createDOM(_config: EditorConfig): HTMLElement; updateDOM(): boolean; isInline(): boolean; static importJSON(_serializedNode: SerializedLexicalNode & Record): EmbedNode; exportJSON(): SerializedEmbedNode; getUrl(): string; setUrl(url: string): void; getSource(): EmbedType | null; setSource(source: EmbedType | null): void; decorate(_editor: LexicalEditor, _config: EditorConfig): ReactElement; } export declare function $createEmbedNode(url: string, source: EmbedType | null): EmbedNode; export declare function $isEmbedNode(node: LexicalNode | null | undefined): node is EmbedNode; //# sourceMappingURL=EmbedNode.d.ts.map