import { Extensions, JSONContent } from '@tiptap/core'; import { InputProps } from '@strapi/strapi/admin'; import { SanitizeSchema } from '../../../shared/src/sanitize'; export type { FieldValue } from '@strapi/strapi/admin'; export type TiptapInputProps = InputProps & { labelAction?: React.ReactNode; }; export type RemovedContent = { nodeTypes: string[]; markTypes: string[]; }; export declare function tiptapContent(text: string): JSONContent; /** * Parses a stored field value and strips node/mark types the schema doesn't know. Without this, * Tiptap swallows the parse error and mounts an empty document, which the next save would persist. */ export declare function prepareEditorContent(value: string | JSONContent | null | undefined, schema: SanitizeSchema, defaultValue?: string): { content: JSONContent; unknownNodeTypes: string[]; unknownMarkTypes: string[]; }; export declare function useTiptapEditor(name: string, defaultValue?: string, extensions?: Extensions): { editor: import('@tiptap/core').Editor; field: import('@strapi/admin/strapi-admin').FieldValue; removedContent: RemovedContent | null; contentError: boolean; };