import type { Mark, Schema } from '@tiptap/pm/model'; import type { Transaction } from '@tiptap/pm/state'; import { type WorkDocumentEmphasisMark } from './work-document-emphasis'; import { type WorkDocumentTextCase } from './work-document-text-case'; import { type WorkDocumentUnderlineFormatting } from './work-document-underline'; import { type WorkDocumentStrikeFormatting } from './work-document-strike'; import { type WorkDocumentScriptFontSlot, type WorkDocumentScriptFonts } from './work-document-script-fonts'; import { type WorkDocumentHighlight } from './work-document-highlight'; import { type WorkDocumentProofingLanguages } from './work-document-proofing'; import { type WorkDocumentOpenTypeFeatures } from './work-document-opentype'; export declare const DOCUMENT_CHARACTER_FORMAT_MARKS: readonly ["bold", "italic", "underline", "strike", "subscript", "superscript", "textStyle", "highlight"]; export type DocumentCharacterFormatMarkName = (typeof DOCUMENT_CHARACTER_FORMAT_MARKS)[number]; export interface DocumentCharacterFormatMark { type: DocumentCharacterFormatMarkName; attrs?: Record; } export declare function isDocumentCharacterFormatMark(value: string): boolean; export declare function serializeDocumentCharacterFormatting(marks: readonly Mark[]): string; export declare function parseDocumentCharacterFormatting(value: unknown): DocumentCharacterFormatMark[] | null; export declare function restoreDocumentCharacterFormatting(transaction: Transaction, schema: Schema, from: number, to: number, serialized: unknown): boolean; export declare function importedDocumentCharacterFormatting(formatting: { bold?: boolean; italic?: boolean; underline?: WorkDocumentUnderlineFormatting; strike?: WorkDocumentStrikeFormatting; subscript?: boolean; superscript?: boolean; fontFamily?: string; scriptFonts?: WorkDocumentScriptFonts; scriptFontSlot?: WorkDocumentScriptFontSlot; characterScalePercent?: number; characterPositionHalfPoints?: number; characterSpacingTwips?: number; kerningThresholdHalfPoints?: number; emphasisMark?: WorkDocumentEmphasisMark; hiddenText?: boolean; legacyTextOutline?: boolean; legacyTextShadow?: boolean; legacyTextEmboss?: boolean; legacyTextImprint?: boolean; runBorder?: string; runShading?: string; proofingLanguages?: WorkDocumentProofingLanguages; noProof?: boolean; wordLineHeightFactor?: number; wordSnapToGrid?: boolean; fontSize?: number; color?: string; backgroundColor?: string; themeColor?: string; themeFill?: string; highlight?: WorkDocumentHighlight; textCase?: WorkDocumentTextCase; openTypeFeatures?: WorkDocumentOpenTypeFeatures; }): string;