claritykit-svelte
Version:
A comprehensive Svelte component library focused on accessibility, ADHD-optimized design, developer experience, and full SSR compatibility
28 lines • 1.07 kB
TypeScript
import type { ComponentType } from 'svelte';
import type { Node as ProseMirrorNode } from '@tiptap/pm/model';
import type { Decoration } from '@tiptap/pm/view';
import type { Editor } from '@tiptap/core';
export interface SvelteNodeViewProps {
node: ProseMirrorNode;
editor: Editor;
getPos: () => number | undefined;
decorations: Decoration[];
selected: boolean;
updateAttributes: (attributes: Record<string, any>) => void;
}
export interface SvelteNodeViewOptions {
component: ComponentType;
as?: string;
className?: string;
tag?: string;
}
/**
* Create a TipTap 3 compatible node view that renders a Svelte component
*/
export declare function createSvelteNodeView(options: SvelteNodeViewOptions): ({ node, editor, getPos, decorations, selected }: any) => {
dom: HTMLElement;
update: (updatedNode: ProseMirrorNode, updatedDecorations: Decoration[], updatedSelected: boolean) => boolean;
destroy: () => void;
ignoreMutation: (mutation: MutationRecord) => boolean;
};
//# sourceMappingURL=svelte-node-view.d.ts.map