@stesura/core/types
Shared TypeScript types: node and doc attrs, stores, comments, proofreading and user preferences. Everything here is type-only except followNumberingWith. Runtime lists for some of the unions live in @stesura/core/constants: UnderlineType and UNDERLINE_TYPES for Underlines, BORDER_STYLES for BorderStyle, CAPS_VALUES for Caps and CASE_CHANGES for CaseChange.
Types
AccessibilityFinding
ActiveHandle
| Name | Type | Default |
|---|---|---|
pos | number | |
type | ResizeType | |
col | number | |
tablePos | number | |
isOuterEdge | boolean | |
isLeftOuterEdge | boolean | |
adjacentCol | number | |
side | "left" | "right" | |
tableAlign | TableAlign |
AppendTransactionProps
| Name | Type | Default |
|---|---|---|
transactions | readonly Transaction[] | |
oldState | EditorState | |
newState | EditorState |
BlockBorders
BlockStyleAttrs
| Name | Type | Default |
|---|---|---|
styleId | string | null |
BlockStylingAttrs
| Name | Type | Default |
|---|---|---|
bgColor | string | null | undefined | |
borders | Borders | null | undefined | |
_borders | Borders | null | undefined |
BorderOptions
| Name | Type | Default |
|---|---|---|
color | string | |
size | number | |
space | number | |
style | BorderStyle |
Borders
CellAttrs
CellBorders
CodeBlockAttrs
CommentAuthor
| Name | Type | Default |
|---|---|---|
id | string | |
name | string | |
avatar | string |
CommentCloseAttrs
CommentOpenAttrs
CommentReaction
| Name | Type | Default |
|---|---|---|
emoji | string | |
createdAt | Date | |
users | { id: string; }[] |
CommentsDocx
ConfigPluginConfig
ConfigPluginState
CounterNodeAttrs
CounterStackItem
| Name | Type | Default |
|---|---|---|
level | number | |
index | number | |
parentType | string |
CreateNodeFromContentOptions
| Name | Type | Default |
|---|---|---|
slice | boolean | |
parseOptions | ParseOptions | |
errorOnInvalidContent | boolean |
CreateProofreadCache
Parameters:| Name | Type | Default |
|---|---|---|
field | string |
CreateProofreadDictionary
Parameters:CrossReferenceAttrs
| Name | Type | Default |
|---|---|---|
targetId | string | null | |
text | string | |
refTo | CrossRefType | |
missingReference | boolean | |
separator | string | null |
CurrentUser
| Name | Type | Default |
|---|---|---|
id | string | |
name | string | |
avatar | string | |
color | string |
DisplayUnits
| Name | Type | Default |
|---|---|---|
baseUnit | "cm" | "inches" | |
indentationUnit | DisplayUnit | |
spacingUnit | DisplayUnit |
DocAttrs
Dragging
| Name | Type | Default |
|---|---|---|
startX | number | |
startY | number | |
startWidth | number | |
startHeight | number | |
type | ResizeType | |
adjacentStartWidth | number | |
startTime | number |
EditorStoreDefaults
| Name | Type | Default |
|---|---|---|
showPagination | boolean | |
mode | EditorMode |
EditorStores
EffectiveNumbering
EndnoteAttrs
| Name | Type | Default |
|---|---|---|
endnoteRef | string | null | |
index | number | |
isFirstOccurrence | boolean |
EndnoteBodyAttrs
| Name | Type | Default |
|---|---|---|
endnoteRef | string | null | |
index | number |
EndnoteItem
| Name | Type | Default |
|---|---|---|
index | number | |
occurrences | number | |
sectionId | string | null | |
isFirstOccurrence | boolean | |
endnoteRef | string |
EndnoteOptions
| Name | Type | Default |
|---|---|---|
showAt | "endOfDocument" | "endOfSection" | |
format | LevelFormatName | |
continuous | boolean | |
startAt | number |
FileAttrs
FootnoteAttrs
| Name | Type | Default |
|---|---|---|
footnoteRef | string | null | |
index | number | |
isFirstOccurrence | boolean |
FootnoteBodyAttrs
| Name | Type | Default |
|---|---|---|
footnoteRef | string | null | |
index | number |
FootnoteItem
| Name | Type | Default |
|---|---|---|
index | number | |
occurrences | number | |
sectionId | string | null | |
isFirstOccurrence | boolean | |
footnoteRef | string |
FormatPainterPluginState
| Name | Type | Default |
|---|---|---|
enabled | boolean | |
once | boolean | |
marks | Mark[] | |
attrs | Attrs | |
nodeType | string |
FullEditorStores
GetTextStylesResult
GlobalAttribute
GlobalAttributeDefinition
HighlightAttrs
| Name | Type | Default |
|---|---|---|
color | string |
HighlightPluginState
| Name | Type | Default |
|---|---|---|
persistedColor | string | null |
IBorderOptions
| Name | Type | Default |
|---|---|---|
style | OoxmlBorderStyle | |
color | string | |
size | number | |
space | number |
IBordersOptions
| Name | Type | Default |
|---|---|---|
top | IBorderOptions | |
bottom | IBorderOptions | |
left | IBorderOptions | |
right | IBorderOptions | |
between | IBorderOptions |
ILevelsOptions
ImageAltState
| Name | Type | Default |
|---|---|---|
alt | string | null | |
decorative | boolean |
ImageAnchoredAttrs
ImageAttrs
ImageCrop
| Name | Type | Default |
|---|---|---|
top | number | |
right | number | |
bottom | number | |
left | number |
ImageGeometryAttrs
| Name | Type | Default |
|---|---|---|
crop | ImageCrop | null | |
transform | ImageTransform | null |
ImagePluginAction
| Name | Type | Default |
|---|---|---|
type | "add" | "remove" | |
id | unknown |
ImagePluginState
ImageTransform
| Name | Type | Default |
|---|---|---|
rotation | number | |
flipH | boolean | |
flipV | boolean |
ImageUploadPolicy
IndentAttrs
| Name | Type | Default |
|---|---|---|
start | number | null | |
end | number | null | |
special | IndentationSpecials | null | |
by | number | null |
InsertImagePlaceholder
| Name | Type | Default |
|---|---|---|
type | "add" | |
pos | number | |
id | unknown |
InvisibleCharactersState
JSONContent
| Name | Type | Default |
|---|---|---|
type | string | |
attrs | Record<string, any> | |
content | JSONContent[] | |
marks | { [key: string]: any; type: string; attrs?: Record<string, any>; }[] | |
text | string |
LanguageExtractor
Parameters:| Name | Type | Default |
|---|---|---|
node | Node |
LanguagePluginState
| Name | Type | Default |
|---|---|---|
documentLangTag | stringBCP 47 tag put on the editor’s content root, from | |
decorations | DecorationSet
|
LevelFormat
LineNumbersAttrs
LinkAttrs
| Name | Type | Default |
|---|---|---|
url | string |
ListConfig
| Name | Type | Default |
|---|---|---|
reference | string | |
levels | ILevelsOptions[] |
ListFormatOption
Margins
| Name | Type | Default |
|---|---|---|
top | number | |
right | number | |
bottom | number | |
left | number |
MarkRange
| Name | Type | Default |
|---|---|---|
mark | Mark | |
from | number | |
to | number |
NodeCommentEntry
| Name | Type | Default |
|---|---|---|
threadId | string |
NodeFormatting
| Name | Type | Default |
|---|---|---|
indent | IndentAttrs | |
spacing | SpacingAttrs | |
lineHeight | string | numberUnitless multiplier (1.5 lines) or an exact “Xpt” height. | |
textAlign | string |
NodeWithPos
| Name | Type | Default |
|---|---|---|
node | Node | |
pos | number |
NoteItemBase
| Name | Type | Default |
|---|---|---|
index | number | |
occurrences | number | |
sectionId | string | null | |
isFirstOccurrence | boolean |
NotesState
| Name | Type | Default |
|---|---|---|
footnotes | FootnoteItem[] | |
endnotes | EndnoteItem[] |
NumberingAttrs
NumberingOffSentinel
| Name | Type | Default |
|---|---|---|
listRef | null |
NumberingPluginState
| Name | Type | Default |
|---|---|---|
numberingConfigs | Map<string, ListConfig> | |
selectedConfigId | string | null | |
selectedinstanceId | string | null | |
applyNumbering | boolean | |
currentLevel | number |
PageFormats
| Name | Type | Default |
|---|---|---|
width | number | |
height | number | |
label | string | |
value | string | |
default | boolean |
PageMargins
| Name | Type | Default |
|---|---|---|
top | number | |
right | number | |
bottom | number | |
left | number | |
label | string | |
value | string | |
default | boolean |
PageNumberAttrs
| Name | Type | Default |
|---|---|---|
pageType | PageNumberType |
PageNumberingAttrs
| Name | Type | Default |
|---|---|---|
start | number | null | |
format | PageNumberFormat |
PaginationAttrs
PaginationPluginState
ParagraphStyle
Parser
Parameters:| Name | Type | Default |
|---|---|---|
options | ParserOptions |
ParserOptions
| Name | Type | Default |
|---|---|---|
content | stringText content of the code block. | |
pos | numberStart position of the code block. | |
language | string | |
size | numberThe node’s | |
node | Node |
PdfPreviewAssets
PdfPreviewConfig
| Name | Type | Default |
|---|---|---|
ready | boolean | |
allowedFileHosts | string[]The config plugin’s |
PdfPreviewLimits
| Name | Type | Default |
|---|---|---|
maxPages | numberPages rendered before the preview stops and says how many are left. | |
maxBytes | number
|
PdfPreviewProps
PendingLinkPluginState
| Name | Type | Default |
|---|---|---|
isPending | boolean | |
pendingSelection | Selection | null | |
existingUrl | string |
Problem
| Name | Type | Default |
|---|---|---|
from | number | |
to | number | |
msg | string | |
shortmsg | string | |
type | string | |
replacements | { value: string; }[]Suggested corrections in LanguageTool’s object shape (PR-2). Capped at five. |
ProofingLanguageAttrs
| Name | Type | Default |
|---|---|---|
proofingLanguage | string | null |
ProofreadCacheAdapter
ProofreadCacheItem
ProofreadDictionaryAdapter
Range
| Name | Type | Default |
|---|---|---|
from | number | |
to | number |
RemoveImagePlaceholder
| Name | Type | Default |
|---|---|---|
type | "remove" | |
id | unknown |
ResolvedIndentAttrs
| Name | Type | Default |
|---|---|---|
start | number | |
end | number | |
special | NonNullable<IndentationSpecials | null | undefined> | |
by | number |
ResolvedStyleDefinition
ResolvedUser
| Name | Type | Default |
|---|---|---|
name | string | |
avatar | string |
ResolveMentionSuggestionsCallback
Parameters:| Name | Type | Default |
|---|---|---|
params | { text: string; } |
ResolveUsersCallback
Parameters:| Name | Type | Default |
|---|---|---|
params | { userIds: string[]; } |
RowAttrs
SectionAttrs
SectionOptions
SelectedBorders
| Name | Type | Default |
|---|---|---|
top | boolean | |
bottom | boolean | |
left | boolean | |
right | boolean | |
between | boolean | |
outside | boolean | |
all | boolean | |
insideVertical | boolean | |
insideHorizontal | boolean |
SerializedComment
| Name | Type | Default |
|---|---|---|
id | string | |
threadId | string | |
body | JSONContentProseMirror JSON (a doc of paragraphs). Undefined once soft-deleted. | |
author | CommentAuthor | |
createdAt | string | |
deletedAt | string | |
reactions | SerializedReaction[] |
SerializedReaction
| Name | Type | Default |
|---|---|---|
emoji | string | |
users | { id: string; }[] | |
createdAt | string |
SerializedThread
| Name | Type | Default |
|---|---|---|
id | string | |
resolved | boolean | |
metadata | Record<string, unknown> | |
createdAt | string | |
deletedAt | string | |
comments | SerializedComment[] |
Size
| Name | Type | Default |
|---|---|---|
width | number | |
height | number |
SortOptions
| Name | Type | Default |
|---|---|---|
colIndex | number | |
descending | boolean | |
orderBy | "number" | "text" | "date" |
SpacingAttrs
StyleDefinition
StyleNumbering
| Name | Type | Default |
|---|---|---|
listRef | string | |
level | number | |
followBy | "tab" | "space" | "nothing" | |
tabStop | number |
StylePaginationProps
| Name | Type | Default |
|---|---|---|
keepWithNext | boolean | |
widowOrphan | boolean | |
pageBreakBefore | boolean | |
keepLines | boolean |
StyleSheetState
| Name | Type | Default |
|---|---|---|
resolvedStyles | StyleSheet | |
overrides | StyleSheet
|
TableAttrs
| Name | Type | Default |
|---|---|---|
align | TableAlign | |
sortable | SortOptions | |
borders | TableBorders | null | |
hasHeaderRow | boolean | |
id | string |
TableBorders
TableDragState
| Name | Type | Default |
|---|---|---|
dragging | { node: Node; } | null |
TableResizingOptions
| Name | Type | Default |
|---|---|---|
handleWidth | number | |
handleHeight | number | |
cellMinWidth | number | |
cellMinHeight | number | |
defaultCellMinWidth | number |
TabStop
| Name | Type | Default |
|---|---|---|
pos | number | |
align | TabStopAlign | |
leader | TabStopLeader |
TextStyle
TextStyleAttrs
TextStyleAttrsWithoutOff
Thread
| Name | Type | Default |
|---|---|---|
id | string | |
resolved | boolean | |
createdAt | Date | |
deletedAt | Date | |
metadata | Record<string, unknown> | |
comments | ThreadComment[] |
ThreadComment
Toast
| Name | Type | Default |
|---|---|---|
type | ToastType | |
description | string | |
key | ToastKey | |
params | Record<string, string | number> |
ToastCallback
Parameters:| Name | Type | Default |
|---|---|---|
toast | Toast |
ToastMessage
ToastParams
| Name | Type | Default |
|---|---|---|
sortColumnOutOfRange | { column: number; columns: number; } |
TOCattrs
TOCbreakEntry
| Name | Type | Default |
|---|---|---|
afterLine | number | |
paddingTop | number |
TOCitem
TOCstate
| Name | Type | Default |
|---|---|---|
content | TOCitem[] |
ToggleCounterTrProps
| Name | Type | Default |
|---|---|---|
buttonType | "number" | "bullet" | |
levelFormat | LevelFormat |
TrackChangesAttrs
trackChangesModificationAttrs
| Name | Type | Default |
|---|---|---|
id | string | |
date | string | null | |
userId | string | null | |
userName | string | null | |
attrs | Attrs |
TrackChangesState
TransactionFn
Parameters:| Name | Type | Default |
|---|---|---|
props | TransactionFnProps |
TransactionFnProps
| Name | Type | Default |
|---|---|---|
tr | Transaction | |
state | EditorState | |
view | EditorView | |
dispatch | (tr: Transaction) => void |
Underline
| Name | Type | Default |
|---|---|---|
type | Underlines | |
style | string | |
thickness | string | undefined | |
offset | string | undefined |
UnderlineAttrs
| Name | Type | Default |
|---|---|---|
variant | UnderlinesNot | |
color | string | null |
UploadBlockAttrs
| Name | Type | Default |
|---|---|---|
uploadType | string | null |
UserPreferences
Other exports
| Export | Type | Description |
|---|---|---|
AccessibilityRule | "imageMissingAlt" /** Link text that says nothing out of context ("click here", a bare URL). */ | "linkTextNotDescriptive" /** The same link text pointing at more than one destination. */ | "duplicateLinkText" /** A paragraph formatted like a heading but not styled as one. */ | "headingLikeParagraph" /** An outline level reached without passing through its parent (1 → 3). */ | "skippedHeadingLevel" /** A table whose first row is not marked as a header row. */ | "tableMissingHeaderRow" | The accessibility checker’s rules (v1). Per ATAG they surface judgement calls to the author, as Word/Docs/Acrobat do; none auto-fixes anything. |
AlignmentDirection | "top" | "middle" | "bottom" | |
AlignmentTypeValue | "start" | "center" | "end" | "both" | "mediumKashida" | "distribute" | "numTab" | "highKashida" | "lowKashida" | "thaiDistribute" | "left" | "right" | |
AtomValue | AtomValue<T> | The value type of a nanostores atom. |
AttrsWithDefaults | { [K in keyof T]: { default: T[K]; validate?: string | ((value: any) => void) } } | ProseMirror attr specs for every key of T. |
BlockHandleState | { node: Node; pos: number } | null | The block under the drag handle, if any. |
BorderPosition | "top" | "bottom" | "left" | "right" | "between" | |
BorderStyle | "single" | "dashed" | "dotted" | "double" | "groove" | "ridge" | "inset" | "outset" | "none" | |
Caps | "all" | "small" | "none" | Word’s two casing FORMATS, plus an explicit off. One slot, so all caps and small caps are mutually exclusive by construction. "none" is an explicit off that beats an inherited all-caps; null inherits. |
CaseChange | "sentence" | "uppercase" | "lowercase" | "capitalize" | Case changes offered as EDITS: they rewrite the stored characters and store nothing. Clearing the casing FORMAT is Caps via setCaps instead. |
CellAlignment | ${AlignmentDirection}-${TableAlign} | |
CommentDisplayMode | "anchored" | "floating" | "minimized" | "none" | |
Content | HTMLContent | JSONContent | JSONContent[] | null | Content given as an HTML string or ProseMirror JSON. |
CrossRefType | "default" | "fullContext" | "aboveBelow" | |
CSSProperties | Properties<string | number> & { [key: `--${string}`]: string | number | undefined } | A style object: csstype Properties plus CSS custom properties (--name). |
DisplayUnit | "cm" | "inches" | "pt" | "px" | |
EditorMode | "edit" | "review" | "view" | Editor mutability mode. "edit" — full editing. "review" — all edits become tracked suggestions. Requires the track-changes plugin: configuring it without one throws. The toggle that would turn tracking off is refused for as long as the mode is set. "view" — read-only: local doc-changing transactions are dropped at dispatch, remote collab changes still apply. |
EditorStoreExtensions | interface EditorStoreExtensions {} | Module-augment this interface to type the extension stores passed to createEditorStores. |
FileKind | "pdf" | "other" | |
FileRotation | 0 | 90 | 180 | 270 | The rotations a file node can store. |
FindResult | ContentNodeWithPos | undefined | Result of a prosemirror-utils node lookup. |
FollowBy | "tab" | "space" | "nothing" | |
followNumberingWith | readonly ["tab", "space", "nothing"] | What can follow a list number. FollowBy is its element type. |
GlobalAttributeMap | Record<T, GlobalAttribute> | The resolved global attributes of a schema, keyed by attribute name. |
HeaderFooterVariant | "default" | "even" | "first" | |
HTMLContent | string | |
ImageAlign | "start" | "end" | "center" | "fullWidth" | |
ImageAnchoredSide | "left" | "right" | Which side a square/tight anchored image floats to. |
ImageAnchoredWrap | "inline" | "square" | "tight" | "front" | "behind" | Layout mode of the inline image_anchored node: “inline”: part of a single text line (flows like a tall glyph). “square” | “tight”: floated to a side; adjacent lines wrap around it. The pagination engine merges the image + adjacent narrow lines into one indivisible band (see getTextLinesFromElement). “front” | “behind”: absolutely positioned from the anchor point, out of flow (in front of / behind the text). Contributes nothing to line measurement. |
ImageWrap | "top-bottom" | "square" | Wrap attr of the BLOCK image node. “square” is a legacy value from the first wrap attempt (float on the block node) — kept for parsing old docs. New wrap behaviours live on the inline image_anchored node (see ImageAnchoredWrap). |
ImageWrapMode | "top-bottom" | ImageAnchoredWrap | The full wrap-mode surface exposed by the setImageWrap command / toolbar. “top-bottom” selects the BLOCK image node (text above and below); every other mode selects the inline image_anchored node with that wrap. |
IndentationSpecials | "none" | "first-line" | "hanging" | |
Json | string | number | boolean | null | Json[] | { [key: string]: Json | undefined } | Any JSON value. |
JSONContentAttrs | Record<string, any> | The attrs of a JSONContent node. |
LevelFormatName | "decimal" | "upperRoman" | "lowerRoman" | "upperLetter" | "lowerLetter" | "ordinal" | "cardinalText" | "ordinalText" | "hex" | "chicago" | "ideographDigital" | "japaneseCounting" | "aiueo" | "iroha" | "decimalFullWidth" | "decimalHalfWidth" | "japaneseLegal" | "japaneseDigitalTenThousand" | "decimalEnclosedCircle" | "decimalFullWidth2" | "aiueoFullWidth" | "irohaFullWidth" | "decimalZero" | "bullet" | "ganada" | "chosung" | "decimalEnclosedFullstop" | "decimalEnclosedParen" | "decimalEnclosedCircleChinese" | "ideographEnclosedCircle" | "ideographTraditional" | "ideographZodiac" | "ideographZodiacTraditional" | "taiwaneseCounting" | "ideographLegalTraditional" | "taiwaneseCountingThousand" | "taiwaneseDigital" | "chineseCounting" | "chineseLegalSimplified" | "chineseCountingThousand" | "koreanDigital" | "koreanCounting" | "koreanLegal" | "koreanDigital2" | "vietnameseCounting" | "russianLower" | "russianUpper" | "none" | "numberInDash" | "hebrew1" | "hebrew2" | "arabicAlpha" | "arabicAbjad" | "hindiVowels" | "hindiConsonants" | "hindiNumbers" | "hindiCounting" | "thaiLetters" | "thaiNumbers" | "thaiCounting" | "bahtText" | "dollarText" | "custom" | |
LevelFormatValue | ILevelsOptions["format"] | A list level’s number format ("decimal", "lowerRoman", …). |
LevelSuffixValue | "nothing" | "space" | "tab" | |
LineHeightRule | "atLeast" | How an exact (“Xpt”) line height applies — see the lineHeightRule attr. |
MaybeReadOnly | Readonly<T> | T | |
Mutable | { -readonly [P in keyof T]: T[P] } | |
NodeCommentsAttr | NodeCommentEntry[] | null | Value of the nodeComments global attribute. |
Nullable | { [P in keyof T]: T[P] | null } | |
NumberCasing | "capitalize" | "uppercase" | "lowercase" | "firstLetter" | Casing for the word-based number formats (cardinalText, ordinalText): capitalize — every word capitalised: “Forty-Two” (the converters’ native output); uppercase — “FORTY-TWO”; lowercase — “forty-two”; firstLetter — only the leading letter capitalised: “Forty-two” |
NumberGender | "masculine" | "feminine" | The grammatical genders the numbering UI offers. |
NumberingAttrValue | NumberingAttrs | NumberingOffSentinel | null | The numbering node attr: direct numbering (listRef: INHERIT_LIST_REF takes the list from the style), the off sentinel { listRef: null }, or null to inherit. |
OoxmlBorderStyle | "single" | "dashDotStroked" | "dashed" | "dashSmallGap" | "dotDash" | "dotDotDash" | "dotted" | "double" | "doubleWave" | "inset" | "nil" | "none" | "outset" | "thick" | "thickThinLargeGap" | "thickThinMediumGap" | "thickThinSmallGap" | "thinThickLargeGap" | "thinThickMediumGap" | "thinThickSmallGap" | "thinThickThinLargeGap" | "thinThickThinMediumGap" | "thinThickThinSmallGap" | "threeDEmboss" | "threeDEngrave" | "triple" | "wave" | |
PageNumberFormat | "decimal" | "lowerRoman" | "upperRoman" | "lowerLetter" | "upperLetter" | Word’s page-number formats (w:pgNumType/@w:fmt) the editor prints. |
PageNumberType | "currentPage" | "totalPages" | |
ResizeType | "column" | "row" | |
StringLiteralsOnly | StringLiteralsOnly<T> = T extends string ? (string extends T ? never : T) : never | |
StyleSheet | Record<string, StyleDefinition> | A document’s style definitions, keyed by style id. |
TableAlign | "start" | "center" | "end" | |
TabStopAlign | "start" | "center" | "end" | "decimal" | Where text lands against a tab stop: decimal lines up on the first ”.”. |
TabStopLeader | "none" | "dot" | "hyphen" | "underscore" | What fills the gap a tab leaves. |
TextAlignType | "justify" | "start" | "end" | "center" | |
TextDirection | "ltr" | "rtl" | |
TextStyleOff | "strong" | "em" | "underline" | "strikethrough" | "superscript" | "subscript" | The marks a textStyle mark can negate — Word’s “bold style, unbolded run”. Turning a property ON is the standalone marks’ job; only OFF needs a slot, since a mark cannot be absent-with-emphasis. TEXT_STYLE_OFF in helpers/text-style.ts is the ordered runtime array, checked against this. |
ToastKey | "cannotInsertAcrossNodes" | "cannotRemoveFirstSection" | "missingSortColumn" | "sortColumnOutOfRange" | "cannotSortMergedRows" | "emptyRowRemoved" | "nestedTablesNotAllowed" | "dispatchFailed" | "footnoteRemoved" | "endnoteRemoved" | Every message core and the feature packs can raise. Core emits keys, not text, so a host can translate or reword messages without matching English. |
ToastType | "success" | "info" | "error" | "warning" | "default" | |
TOCItemType | "numberedItem" | "heading" | |
TOCrun | { text: string; marks?: TOCrunMark[] } | { math: string } | One renderable fragment of a TOC entry: formatted text, or LaTeX for an equation. |
TOCrunMark | "em" | "superscript" | "subscript" | |
Underlines | "single" | "double" | "thick" | "dotted" | "dottedHeavy" | "dash" | "dashedHeavy" | "wave" | "wavyHeavy" |