@pixerate/editor 0.24.0 → 0.26.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (162) hide show
  1. package/README.md +101 -1
  2. package/THIRD_PARTY_NOTICES.md +40 -0
  3. package/dist/agent/index.cjs +175 -11
  4. package/dist/agent/index.cjs.map +1 -1
  5. package/dist/agent/index.d.cts +18 -4
  6. package/dist/agent/index.d.ts +18 -4
  7. package/dist/agent/index.js +168 -4
  8. package/dist/agent/index.js.map +1 -1
  9. package/dist/{arrangeShortcuts-B8O3f8-P.d.cts → arrange-BICutYPk.d.cts} +243 -29
  10. package/dist/{arrangeShortcuts-sLlD2rSX.d.ts → arrange-BICutYPk.d.ts} +243 -29
  11. package/dist/builtins-CdPcLwwF.d.cts +176 -0
  12. package/dist/builtins-Chj6zv_O.d.ts +176 -0
  13. package/dist/canvas/index.cjs +8588 -1857
  14. package/dist/canvas/index.cjs.map +1 -1
  15. package/dist/canvas/index.d.cts +1847 -9
  16. package/dist/canvas/index.d.ts +1847 -9
  17. package/dist/canvas/index.js +8577 -1846
  18. package/dist/canvas/index.js.map +1 -1
  19. package/dist/chunk-3CC7OPUQ.cjs +831 -0
  20. package/dist/chunk-3CC7OPUQ.cjs.map +1 -0
  21. package/dist/chunk-4BVP64JJ.cjs +1406 -0
  22. package/dist/chunk-4BVP64JJ.cjs.map +1 -0
  23. package/dist/chunk-BVP3TSLH.cjs +69 -0
  24. package/dist/chunk-BVP3TSLH.cjs.map +1 -0
  25. package/dist/{chunk-OLZJXL4R.cjs → chunk-CS6NZWWA.cjs} +59 -25
  26. package/dist/chunk-CS6NZWWA.cjs.map +1 -0
  27. package/dist/{chunk-MCSJFWAO.cjs → chunk-EWCOFSCQ.cjs} +685 -100
  28. package/dist/chunk-EWCOFSCQ.cjs.map +1 -0
  29. package/dist/chunk-HDYMLS3X.cjs +409 -0
  30. package/dist/chunk-HDYMLS3X.cjs.map +1 -0
  31. package/dist/chunk-HRMEDT2L.js +1406 -0
  32. package/dist/chunk-HRMEDT2L.js.map +1 -0
  33. package/dist/{chunk-D27YFC46.cjs → chunk-IFHKKVXH.cjs} +382 -63
  34. package/dist/chunk-IFHKKVXH.cjs.map +1 -0
  35. package/dist/{chunk-PGNZKFQS.js → chunk-JOIREKL7.js} +137 -58
  36. package/dist/chunk-JOIREKL7.js.map +1 -0
  37. package/dist/chunk-KRGXUQ2Y.js +1696 -0
  38. package/dist/chunk-KRGXUQ2Y.js.map +1 -0
  39. package/dist/{chunk-3LV6RRPH.js → chunk-MHEPLBFB.js} +2 -2
  40. package/dist/chunk-MR2764X2.js +831 -0
  41. package/dist/chunk-MR2764X2.js.map +1 -0
  42. package/dist/{chunk-XNORY7M6.cjs → chunk-NFVBT3UZ.cjs} +166 -87
  43. package/dist/chunk-NFVBT3UZ.cjs.map +1 -0
  44. package/dist/chunk-NQF32I6Z.cjs +6478 -0
  45. package/dist/chunk-NQF32I6Z.cjs.map +1 -0
  46. package/dist/chunk-O5RYH2PG.js +69 -0
  47. package/dist/chunk-O5RYH2PG.js.map +1 -0
  48. package/dist/{chunk-ITBSKI26.js → chunk-Q2OHWD2A.js} +1064 -360
  49. package/dist/chunk-Q2OHWD2A.js.map +1 -0
  50. package/dist/{chunk-FODNLX5N.js → chunk-QJSOZFCZ.js} +38 -4
  51. package/dist/chunk-QJSOZFCZ.js.map +1 -0
  52. package/dist/{chunk-SML64VJG.cjs → chunk-RRREAOVM.cjs} +4 -4
  53. package/dist/{chunk-SML64VJG.cjs.map → chunk-RRREAOVM.cjs.map} +1 -1
  54. package/dist/{chunk-5S3Z4PPF.js → chunk-SWE3NPOU.js} +347 -28
  55. package/dist/chunk-SWE3NPOU.js.map +1 -0
  56. package/dist/chunk-TXXNBDQX.cjs +1696 -0
  57. package/dist/chunk-TXXNBDQX.cjs.map +1 -0
  58. package/dist/chunk-UBCFIABU.js +409 -0
  59. package/dist/chunk-UBCFIABU.js.map +1 -0
  60. package/dist/chunk-X7HXL2SB.js +6478 -0
  61. package/dist/chunk-X7HXL2SB.js.map +1 -0
  62. package/dist/{chunk-SBCZ6RN5.cjs → chunk-YOMYSFJU.cjs} +1163 -459
  63. package/dist/chunk-YOMYSFJU.cjs.map +1 -0
  64. package/dist/{chunk-3CN2WD3X.js → chunk-ZRNHGAQT.js} +661 -76
  65. package/dist/chunk-ZRNHGAQT.js.map +1 -0
  66. package/dist/commands/index.cjs +425 -4
  67. package/dist/commands/index.cjs.map +1 -1
  68. package/dist/commands/index.d.cts +39 -77
  69. package/dist/commands/index.d.ts +39 -77
  70. package/dist/commands/index.js +424 -3
  71. package/dist/commands/index.js.map +1 -1
  72. package/dist/compare/index.cjs +3 -3
  73. package/dist/compare/index.d.cts +1 -1
  74. package/dist/compare/index.d.ts +1 -1
  75. package/dist/compare/index.js +2 -2
  76. package/dist/controller-CxXGOEmy.d.cts +2038 -0
  77. package/dist/controller-CxXGOEmy.d.ts +2038 -0
  78. package/dist/{documents-BQjzJNe2.d.ts → documents-CHT1U5Vs.d.ts} +10 -0
  79. package/dist/{documents-KRTPhvst.d.cts → documents-Gp7wb0Me.d.cts} +10 -0
  80. package/dist/export/index.cjs +36 -0
  81. package/dist/export/index.cjs.map +1 -0
  82. package/dist/export/index.d.cts +243 -0
  83. package/dist/export/index.d.ts +243 -0
  84. package/dist/export/index.js +36 -0
  85. package/dist/export/index.js.map +1 -0
  86. package/dist/extensions/index.cjs +101 -6
  87. package/dist/extensions/index.cjs.map +1 -1
  88. package/dist/extensions/index.d.cts +18 -5
  89. package/dist/extensions/index.d.ts +18 -5
  90. package/dist/extensions/index.js +101 -6
  91. package/dist/generation/index.cjs +1013 -69
  92. package/dist/generation/index.cjs.map +1 -1
  93. package/dist/generation/index.d.cts +474 -13
  94. package/dist/generation/index.d.ts +474 -13
  95. package/dist/generation/index.js +976 -32
  96. package/dist/generation/index.js.map +1 -1
  97. package/dist/image-editor/index.cjs +3385 -1275
  98. package/dist/image-editor/index.cjs.map +1 -1
  99. package/dist/image-editor/index.d.cts +693 -128
  100. package/dist/image-editor/index.d.ts +693 -128
  101. package/dist/image-editor/index.js +3325 -1215
  102. package/dist/image-editor/index.js.map +1 -1
  103. package/dist/{index-fJrlkJCd.d.ts → index-B273Zllk.d.ts} +500 -7
  104. package/dist/{index-BhJBSm2d.d.cts → index-jcJwmBYt.d.cts} +500 -7
  105. package/dist/index.cjs +1603 -45
  106. package/dist/index.cjs.map +1 -1
  107. package/dist/index.d.cts +154 -27
  108. package/dist/index.d.ts +154 -27
  109. package/dist/index.js +1584 -26
  110. package/dist/index.js.map +1 -1
  111. package/dist/mention-text-CDnCFd3c.d.cts +53 -0
  112. package/dist/mention-text-CDnCFd3c.d.ts +53 -0
  113. package/dist/model-C1zApQM8.d.cts +219 -0
  114. package/dist/model-C1zApQM8.d.ts +219 -0
  115. package/dist/persistence/index.d.cts +3 -120
  116. package/dist/persistence/index.d.ts +3 -120
  117. package/dist/registry-CED5C0lA.d.cts +204 -0
  118. package/dist/registry-CED5C0lA.d.ts +204 -0
  119. package/dist/{registry-GJI4gToU.d.cts → registry-CEgwXED1.d.cts} +12 -1
  120. package/dist/{registry-GJI4gToU.d.ts → registry-CEgwXED1.d.ts} +12 -1
  121. package/dist/{registry-D32LpIc4.d.cts → registry-D0GADKc7.d.cts} +1 -1
  122. package/dist/{registry-evKTP4ls.d.ts → registry-DhVUZioj.d.ts} +1 -1
  123. package/dist/serializers/index.cjs +12 -4
  124. package/dist/serializers/index.cjs.map +1 -1
  125. package/dist/serializers/index.d.cts +41 -13
  126. package/dist/serializers/index.d.ts +41 -13
  127. package/dist/serializers/index.js +12 -4
  128. package/dist/spreadsheet/index.cjs +157 -3
  129. package/dist/spreadsheet/index.cjs.map +1 -1
  130. package/dist/spreadsheet/index.d.cts +534 -11
  131. package/dist/spreadsheet/index.d.ts +534 -11
  132. package/dist/spreadsheet/index.js +157 -3
  133. package/dist/storage-BpFfspHm.d.cts +120 -0
  134. package/dist/storage-BpFfspHm.d.ts +120 -0
  135. package/dist/tokens/index.cjs +115 -0
  136. package/dist/tokens/index.cjs.map +1 -0
  137. package/dist/tokens/index.d.cts +212 -0
  138. package/dist/tokens/index.d.ts +212 -0
  139. package/dist/tokens/index.js +115 -0
  140. package/dist/tokens/index.js.map +1 -0
  141. package/dist/{track-changes-BK5sVf4_.d.cts → track-changes-D_VAPELi.d.cts} +95 -11
  142. package/dist/{track-changes-CDjCrwKe.d.ts → track-changes-Db_fGEvx.d.ts} +95 -11
  143. package/package.json +15 -1
  144. package/dist/chunk-3CN2WD3X.js.map +0 -1
  145. package/dist/chunk-5S3Z4PPF.js.map +0 -1
  146. package/dist/chunk-D27YFC46.cjs.map +0 -1
  147. package/dist/chunk-FODNLX5N.js.map +0 -1
  148. package/dist/chunk-ITBSKI26.js.map +0 -1
  149. package/dist/chunk-MA2F5KHF.cjs +0 -3223
  150. package/dist/chunk-MA2F5KHF.cjs.map +0 -1
  151. package/dist/chunk-MCSJFWAO.cjs.map +0 -1
  152. package/dist/chunk-OLZJXL4R.cjs.map +0 -1
  153. package/dist/chunk-PGNZKFQS.js.map +0 -1
  154. package/dist/chunk-SBCZ6RN5.cjs.map +0 -1
  155. package/dist/chunk-U5KWZU4X.js +0 -3223
  156. package/dist/chunk-U5KWZU4X.js.map +0 -1
  157. package/dist/chunk-XNORY7M6.cjs.map +0 -1
  158. package/dist/controller-BhLLAoi8.d.cts +0 -1000
  159. package/dist/controller-BhLLAoi8.d.ts +0 -1000
  160. package/dist/types-DX4Mh4SL.d.cts +0 -217
  161. package/dist/types-DX4Mh4SL.d.ts +0 -217
  162. /package/dist/{chunk-3LV6RRPH.js.map → chunk-MHEPLBFB.js.map} +0 -0
@@ -3,13 +3,27 @@ import { C as ColorGradient, T as Template } from './tokens-D7yXvUU6.js';
3
3
  import { EditorState, PluginKey, Transaction } from '@tiptap/pm/state';
4
4
  import { DecorationSet, EditorView } from '@tiptap/pm/view';
5
5
  import { Node as Node$1 } from '@tiptap/pm/model';
6
- import { b as MentionOptions, d as TrackChangesOptions } from './track-changes-CDjCrwKe.js';
7
- import { MarkdownOptions } from 'tiptap-markdown';
6
+ import * as _tiptap_extension_table_cell from '@tiptap/extension-table-cell';
7
+ import * as _tiptap_extension_table_header from '@tiptap/extension-table-header';
8
+ import * as _tiptap_extension_table_row from '@tiptap/extension-table-row';
9
+ import * as _tiptap_extension_table from '@tiptap/extension-table';
10
+ import * as _tiptap_extension_underline from '@tiptap/extension-underline';
11
+ import * as _tiptap_extension_text_style from '@tiptap/extension-text-style';
12
+ import * as _tiptap_extension_text_align from '@tiptap/extension-text-align';
13
+ import * as _tiptap_extension_task_list from '@tiptap/extension-task-list';
14
+ import * as _tiptap_extension_link from '@tiptap/extension-link';
15
+ import * as _tiptap_extension_image from '@tiptap/extension-image';
8
16
  import { ImageOptions as ImageOptions$1 } from '@tiptap/extension-image';
9
- import { R as ReviewAuthor, b as CommentStore, C as CommentAnchor } from './comment-store-BEMgVlAA.js';
10
- import { c as ImportAdapter, I as ImportAdapterRegistry, b as FindImportAdapterQuery, i as ImportTarget, h as ImportInput, g as ImportFileOptions, a as ImportOutcome, R as RegisterImportAdapterOptions, F as FileLike } from './registry-GJI4gToU.js';
11
- import { b as CompareSource, C as CompareDocumentsOptions, a as CompareDocumentsResult } from './documents-BQjzJNe2.js';
12
- import { c as CommandSpec } from './registry-evKTP4ls.js';
17
+ import * as _tiptap_extension_highlight from '@tiptap/extension-highlight';
18
+ import * as _tiptap_extension_color from '@tiptap/extension-color';
19
+ import * as _tiptap_starter_kit from '@tiptap/starter-kit';
20
+ import { f as MentionOptions, h as TrackChangesOptions } from './track-changes-Db_fGEvx.js';
21
+ import { MarkdownOptions } from 'tiptap-markdown';
22
+ import { R as ReviewAuthor, b as CommentStore, C as CommentAnchor, S as SerializedComments } from './comment-store-BEMgVlAA.js';
23
+ import { e as StyleRegistry, c as StyleDefinition, P as ParagraphFormat, C as CharacterFormat } from './registry-CED5C0lA.js';
24
+ import { b as ImportAdapter, I as ImportAdapterRegistry, c as FindImportAdapterQuery, i as ImportTarget, h as ImportInput, g as ImportFileOptions, a as ImportOutcome, R as RegisterImportAdapterOptions, F as FileLike } from './registry-CEgwXED1.js';
25
+ import { b as CompareSource, C as CompareDocumentsOptions, a as CompareDocumentsResult } from './documents-CHT1U5Vs.js';
26
+ import { C as CommandSpec } from './registry-DhVUZioj.js';
13
27
 
14
28
  interface GradientTextOptions {
15
29
  templateColorMap: Map<string, ColorGradient>;
@@ -352,12 +366,162 @@ declare const Comments: Mark<CommentsOptions, CommentsStorage>;
352
366
  /** The current author configured on an editor's `Comments` extension. */
353
367
  declare function getCommentAuthor(editor: Editor | null | undefined): ReviewAuthor | null;
354
368
 
369
+ /** A positioned piece of text, e.g. a pdf.js text item. */
370
+ interface PdfTextRun {
371
+ text: string;
372
+ /** Left edge (points). */
373
+ x: number;
374
+ /** Baseline, y up (points). */
375
+ y: number;
376
+ /** Advance width (points). Estimated from the text length when missing. */
377
+ width?: number;
378
+ /** Font size (points). Falls back to `height`, then 10. */
379
+ fontSize?: number;
380
+ height?: number;
381
+ /** Font name; `Bold` / `Italic` / `Oblique` in it set the style when `bold` / `italic` are absent. */
382
+ fontName?: string;
383
+ bold?: boolean;
384
+ italic?: boolean;
385
+ }
386
+ /** A stroked line or thin filled rectangle on a page (table rules). */
387
+ interface PdfRuleLine {
388
+ x1: number;
389
+ y1: number;
390
+ x2: number;
391
+ y2: number;
392
+ }
393
+ interface PdfLayoutPage {
394
+ runs: readonly PdfTextRun[];
395
+ /** Ruling lines, when the extractor can read the page's vector graphics. */
396
+ rules?: readonly PdfRuleLine[];
397
+ }
398
+ interface PdfLayoutOptions {
399
+ /**
400
+ * A baseline gap larger than this multiple of the typical line pitch starts
401
+ * a new paragraph (default `1.4`).
402
+ */
403
+ paragraphGap?: number;
404
+ /** Remove running headers, footers and page numbers repeated across pages (default `true`). */
405
+ removeHeadersAndFooters?: boolean;
406
+ /** Read multi-column pages column by column (default `true`). */
407
+ detectColumns?: boolean;
408
+ /** Detect headings from font size and weight (default `true`). */
409
+ detectHeadings?: boolean;
410
+ /** Detect bulleted and numbered lists (default `true`). */
411
+ detectLists?: boolean;
412
+ /** Detect tables from ruling lines and aligned columns (default `true`). */
413
+ detectTables?: boolean;
414
+ /** Re-join words hyphenated across line ends (default `true`). */
415
+ dehyphenate?: boolean;
416
+ }
417
+ interface PdfTableCell {
418
+ text: string;
419
+ colSpan: number;
420
+ rowSpan: number;
421
+ header: boolean;
422
+ }
423
+ type PdfLayoutBlock = {
424
+ type: "heading";
425
+ level: 1 | 2 | 3 | 4 | 5 | 6;
426
+ text: string;
427
+ page: number;
428
+ confidence: number;
429
+ } | {
430
+ type: "paragraph";
431
+ text: string;
432
+ page: number;
433
+ } | {
434
+ type: "list";
435
+ page: number;
436
+ confidence: number;
437
+ /** Items in order; `depth` 0 is the outermost level and grows by at most one per item. */
438
+ items: {
439
+ text: string;
440
+ depth: number;
441
+ ordered: boolean;
442
+ start?: number;
443
+ }[];
444
+ } | {
445
+ type: "table";
446
+ page: number;
447
+ confidence: number;
448
+ /** `true` when the grid came from ruling lines. */
449
+ ruled: boolean;
450
+ /** Rows of cells; cells covered by a span are left out. */
451
+ rows: PdfTableCell[][];
452
+ columns: number;
453
+ headerRows: number;
454
+ };
455
+ /** One detected structure, for import reports. */
456
+ interface ImportStructureItem {
457
+ type: "heading" | "list" | "table" | "columns";
458
+ /** 1-based page. */
459
+ page: number;
460
+ /** 0–1. */
461
+ confidence: number;
462
+ /** Short human-readable description, e.g. `H2 "Results"` or `3×4 table`. */
463
+ detail: string;
464
+ }
465
+ /**
466
+ * What a structure-aware importer recognised. Adapters attach it to
467
+ * `DocumentImport.structure`; `summarizeImportStructure` aggregates it.
468
+ */
469
+ interface ImportStructureReport {
470
+ /** `"plain"` when structure detection was off (paragraphs only). */
471
+ mode: "structured" | "plain";
472
+ counts: {
473
+ headings: number;
474
+ lists: number;
475
+ tables: number;
476
+ paragraphs: number;
477
+ };
478
+ /** Pages read as several columns. */
479
+ multiColumnPages: number;
480
+ /** Mean confidence of the detected structures (1 when nothing was detected). */
481
+ confidence: number;
482
+ items: ImportStructureItem[];
483
+ }
484
+ interface PdfStructureReport extends ImportStructureReport {
485
+ pages: number;
486
+ removed: {
487
+ headers: number;
488
+ footers: number;
489
+ pageNumbers: number;
490
+ };
491
+ /** Words re-joined across a line-end hyphen. */
492
+ dehyphenated: number;
493
+ }
494
+ interface PdfLayoutResult {
495
+ blocks: PdfLayoutBlock[];
496
+ report: PdfStructureReport;
497
+ }
498
+ /**
499
+ * Analyses positioned text runs (one entry per page) and returns blocks in
500
+ * reading order plus a report of what was detected.
501
+ */
502
+ declare function analyzePdfLayout(pages: readonly PdfLayoutPage[], options?: PdfLayoutOptions): PdfLayoutResult;
503
+ /** Renders layout blocks as editor HTML (`h1`–`h6`, `p`, `ul`/`ol`, `table`). Text is escaped. */
504
+ declare function pdfLayoutBlocksToHtml(blocks: readonly PdfLayoutBlock[]): string;
505
+
355
506
  /** Result of every `document` adapter: sanitized TipTap HTML plus plain text. */
356
507
  interface DocumentImport {
357
508
  /** Sanitized HTML ready for `setContent` / `insertContent`. */
358
509
  html: string;
359
510
  /** Plain-text version, used by plain-text (prompt) editors. */
360
511
  text: string;
512
+ /**
513
+ * What a structure-aware importer recognised (headings, lists, tables,
514
+ * columns) with confidences; set by the PDF adapter.
515
+ */
516
+ structure?: ImportStructureReport;
517
+ /**
518
+ * Comment threads (with replies and resolved state) whose ranges the HTML
519
+ * marks with `data-comment-id`; set by the DOCX adapter. Load them into the
520
+ * editor's comment store, e.g. with `applyImportedReviewData`.
521
+ */
522
+ comments?: SerializedComments;
523
+ /** Paragraph and character styles the file defines; set by the DOCX adapter. */
524
+ styles?: StyleRegistry;
361
525
  }
362
526
  type DocumentImportAdapter = ImportAdapter<DocumentImport>;
363
527
  /**
@@ -396,6 +560,8 @@ declare function getImportAccept(target?: ImportTarget): string;
396
560
  interface FileImportOptions {
397
561
  /** Registry used to match files (default: the shared default registry). */
398
562
  registry?: ImportAdapterRegistry;
563
+ /** Per-adapter options keyed by adapter id, e.g. `{ pdf: { structure: false } }`. */
564
+ adapterOptions?: Record<string, unknown>;
399
565
  /** Insert extracted plain text instead of HTML (plain-text / prompt editors). */
400
566
  asPlainText?: boolean;
401
567
  /** Import files dropped onto the editor (default `true`). */
@@ -1161,6 +1327,187 @@ declare function formatFindStatus(s: Pick<FindReplaceSnapshot, "query" | "matche
1161
1327
  */
1162
1328
  declare const FindReplace: Extension<FindReplaceOptions, FindReplaceStorage>;
1163
1329
 
1330
+ /** Node attribute naming a block's paragraph style (`data-style` in HTML). */
1331
+ declare const STYLE_ID_ATTRIBUTE = "styleId";
1332
+ /** Mark applying a character style (`<span data-char-style>`). */
1333
+ declare const CHARACTER_STYLE_MARK_NAME = "characterStyle";
1334
+ interface ParagraphStylesOptions {
1335
+ /** The style registry. Defaults to a new registry with the built-in styles per editor. */
1336
+ registry: StyleRegistry | null;
1337
+ /** Block types that carry the `styleId` attribute. */
1338
+ types: string[];
1339
+ /**
1340
+ * Inject a `<style>` element with `registry.toCSS({ scope })` while the
1341
+ * editor exists (kept up to date). Default `true`.
1342
+ */
1343
+ injectCSS: boolean;
1344
+ /** Selector the injected CSS is scoped to. Default `.ProseMirror`. */
1345
+ cssScope: string;
1346
+ /** Nonce of the injected `<style>` element (Content Security Policy). */
1347
+ cssNonce?: string;
1348
+ /**
1349
+ * Applying a paragraph style to a partial selection inside one paragraph
1350
+ * applies its linked character style instead (as in Word). Default `true`.
1351
+ */
1352
+ linkedCharacterStyles: boolean;
1353
+ }
1354
+ interface ParagraphStylesStorage {
1355
+ registry: StyleRegistry;
1356
+ }
1357
+ interface CreateStyleFromSelectionOptions {
1358
+ /** Id of the new style. Default: derived from the name. */
1359
+ id?: string;
1360
+ /** Base style. Default: the style at the selection. */
1361
+ basedOn?: string | null;
1362
+ /** Apply the new style to the selected paragraphs. Default `true`. */
1363
+ apply?: boolean;
1364
+ }
1365
+ declare module "@tiptap/core" {
1366
+ interface Commands<ReturnType> {
1367
+ paragraphStyles: {
1368
+ /** Applies a paragraph style to the selected blocks (changing headings/code blocks as the style needs). */
1369
+ setParagraphStyle: (id: string) => ReturnType;
1370
+ /** Resets the selected blocks to the Normal style. */
1371
+ clearParagraphStyle: () => ReturnType;
1372
+ /** Applies a character style to the selection. */
1373
+ setCharacterStyle: (id: string) => ReturnType;
1374
+ unsetCharacterStyle: () => ReturnType;
1375
+ /**
1376
+ * Updates a style (default: the style at the selection) to the direct
1377
+ * formatting at the selection ("Update to match selection").
1378
+ */
1379
+ updateParagraphStyleFromSelection: (id?: string) => ReturnType;
1380
+ /** Creates a paragraph style from the formatting at the selection ("New style from selection"). */
1381
+ createParagraphStyleFromSelection: (name: string, options?: CreateStyleFromSelectionOptions) => ReturnType;
1382
+ };
1383
+ }
1384
+ }
1385
+ declare const paragraphStylesPluginKey: PluginKey<any>;
1386
+ /** The style registry of an editor using `ParagraphStyles`. */
1387
+ declare function getStyleRegistry(editor: Editor | null | undefined): StyleRegistry | null;
1388
+ /**
1389
+ * Whether a paragraph style can be applied in this editor: its block type is
1390
+ * in the schema (and, for headings, its level is configured).
1391
+ */
1392
+ declare function isParagraphStyleAvailable(editor: Editor, registry: StyleRegistry, id: string): boolean;
1393
+ /** The paragraph style of the textblock at `pos` (defaults to the selection start). */
1394
+ declare function getParagraphStyleAt(state: EditorState, registry: StyleRegistry, pos?: number): string | null;
1395
+ /**
1396
+ * The direct formatting at the selection, as style formats: bold, italic,
1397
+ * underline, strike, font family/size, color and highlight from marks, and
1398
+ * the alignment of the block.
1399
+ */
1400
+ declare function captureSelectionFormat(state: EditorState): {
1401
+ paragraph: ParagraphFormat;
1402
+ character: CharacterFormat;
1403
+ };
1404
+ /** Character style applied to a run of text. */
1405
+ declare const CharacterStyle: Mark<any, any>;
1406
+ /**
1407
+ * Paragraph styles (Normal, Title, Heading 1, …) from a `StyleRegistry`:
1408
+ * a `styleId` attribute on paragraphs and headings (`data-style` in HTML),
1409
+ * a `characterStyle` mark, apply/clear/update/create commands, next-style
1410
+ * on Enter and an injected stylesheet. Headings without a `styleId` use
1411
+ * Heading N, plain paragraphs Normal, so existing documents are unchanged.
1412
+ */
1413
+ declare const ParagraphStyles: Extension<ParagraphStylesOptions, ParagraphStylesStorage>;
1414
+ interface ParagraphStylesSnapshot {
1415
+ /** Paragraph styles for the gallery (quick, not hidden, available in this editor). */
1416
+ gallery: readonly StyleDefinition[];
1417
+ /** All paragraph styles available in this editor. */
1418
+ styles: readonly StyleDefinition[];
1419
+ /** Character styles. */
1420
+ characterStyles: readonly StyleDefinition[];
1421
+ /** The style of the block at the selection. */
1422
+ currentStyleId: string | null;
1423
+ /** Registry version (changes when styles change). */
1424
+ version: number;
1425
+ }
1426
+ interface ParagraphStylesStore {
1427
+ getSnapshot(): ParagraphStylesSnapshot;
1428
+ subscribe(listener: () => void): () => void;
1429
+ destroy(): void;
1430
+ }
1431
+ /**
1432
+ * External store over an editor's paragraph styles and the style at the
1433
+ * selection, for `useSyncExternalStore` and Svelte runes. Snapshots change
1434
+ * only when the styles or the current style change. Listeners are attached
1435
+ * to the editor only while subscribed.
1436
+ */
1437
+ declare function createParagraphStylesStore(editor: Editor | null | undefined): ParagraphStylesStore;
1438
+
1439
+ /** Horizontal alignment of a table cell (`align` attribute). */
1440
+ type TableCellAlignment = "left" | "center" | "right" | "justify";
1441
+ /** Returns a valid cell alignment, or `null`. */
1442
+ declare function normalizeTableCellAlignment(value: unknown): TableCellAlignment | null;
1443
+ /** Returns a safe CSS color for a cell background, or `null`. */
1444
+ declare function normalizeTableCellColor(value: unknown): string | null;
1445
+ /**
1446
+ * Whether a table can be written as a GFM pipe table: the first row is all
1447
+ * header cells, the other rows have none, no cell spans rows or columns, and
1448
+ * every cell holds a single paragraph.
1449
+ */
1450
+ declare function isGfmTable(node: Node$1): boolean;
1451
+ interface RichTextTableOptions {
1452
+ /** Drag column borders to resize columns (stored as `colwidth`). Default `true`. */
1453
+ resizable: boolean;
1454
+ /** Width of the resize handle in pixels. Default 5. */
1455
+ handleWidth: number;
1456
+ /** Minimum cell width in pixels. Default 25. */
1457
+ cellMinWidth: number;
1458
+ /** Whether the last column can be resized. Default `true`. */
1459
+ lastColumnResizable: boolean;
1460
+ /** Allow selecting the whole table as a node (click its border, Esc from a cell selection). Default `true`. */
1461
+ allowTableNodeSelection: boolean;
1462
+ /** HTML attributes of the `<table>` element. */
1463
+ HTMLAttributes: Record<string, any>;
1464
+ /** HTML attributes of `<td>` elements. */
1465
+ cellHTMLAttributes: Record<string, any>;
1466
+ /** HTML attributes of `<th>` elements. */
1467
+ headerHTMLAttributes: Record<string, any>;
1468
+ /** HTML attributes of `<tr>` elements. */
1469
+ rowHTMLAttributes: Record<string, any>;
1470
+ }
1471
+ declare const DEFAULT_TABLE_OPTIONS: RichTextTableOptions;
1472
+ /** TipTap's `Table` with the GFM-aware markdown serializer. */
1473
+ declare const Table: any;
1474
+ declare const TableRow: any;
1475
+ /** TipTap's `TableCell` plus `align` and `backgroundColor` attributes. */
1476
+ declare const TableCell: any;
1477
+ /** TipTap's `TableHeader` plus `align` and `backgroundColor` attributes. */
1478
+ declare const TableHeader: any;
1479
+ /**
1480
+ * The table extensions (`table`, `tableRow`, `tableHeader`, `tableCell`)
1481
+ * configured for rich documents: resizable columns, header rows, columns and
1482
+ * cells, `colspan` / `rowspan` from imported HTML, cell alignment and
1483
+ * background, table node selection and GFM markdown. `createRichTextPreset`
1484
+ * adds them unless `table: false`.
1485
+ */
1486
+ declare function createTableExtensions(options?: Partial<RichTextTableOptions>): Extensions;
1487
+
1488
+ /**
1489
+ * The TipTap packages whose commands the preset installs. Exported only so the
1490
+ * published declarations import them: each package augments `@tiptap/core`'s
1491
+ * `Commands` interface, which is what types `editor.chain().toggleBold()`,
1492
+ * `toggleHeading()`, `setTextAlign()` and so on for apps that use the preset
1493
+ * without depending on those packages themselves. (Triple-slash references are
1494
+ * dropped by the declaration bundler, and runtime imports leave no trace in .d.ts.)
1495
+ */
1496
+ type RichTextPresetCommandPackages = [
1497
+ typeof _tiptap_starter_kit,
1498
+ typeof _tiptap_extension_color,
1499
+ typeof _tiptap_extension_highlight,
1500
+ typeof _tiptap_extension_image,
1501
+ typeof _tiptap_extension_link,
1502
+ typeof _tiptap_extension_task_list,
1503
+ typeof _tiptap_extension_text_align,
1504
+ typeof _tiptap_extension_text_style,
1505
+ typeof _tiptap_extension_underline,
1506
+ typeof _tiptap_extension_table,
1507
+ typeof _tiptap_extension_table_row,
1508
+ typeof _tiptap_extension_table_header,
1509
+ typeof _tiptap_extension_table_cell
1510
+ ];
1164
1511
  interface RichTextPresetOptions {
1165
1512
  placeholder?: string | ((props: {
1166
1513
  node: any;
@@ -1199,6 +1546,19 @@ interface RichTextPresetOptions {
1199
1546
  crossReferences?: Partial<CrossReferenceOptions> | boolean;
1200
1547
  /** Word-style Find and Replace (Mod+F / Mod+H, match highlights). Off by default. */
1201
1548
  findReplace?: Partial<FindReplaceOptions> | boolean;
1549
+ /**
1550
+ * Paragraph styles (Normal, Title, Heading 1–6, Quote, …) with a style
1551
+ * registry, `data-style` attributes and next-style on Enter. Off by default.
1552
+ */
1553
+ paragraphStyles?: Partial<ParagraphStylesOptions> | boolean;
1554
+ /**
1555
+ * Tables (`table`, `tableRow`, `tableHeader`, `tableCell`): resizable
1556
+ * columns, header rows/columns/cells, `colspan`/`rowspan` (e.g. from PDF
1557
+ * and DOCX import), cell alignment and background, GFM markdown. **On by
1558
+ * default**; `table: false` leaves tables out of the schema, so pasted or
1559
+ * imported tables are flattened into paragraphs as before.
1560
+ */
1561
+ table?: Partial<RichTextTableOptions> | boolean;
1202
1562
  }
1203
1563
  /**
1204
1564
  * Creates a standard rich-text extensions bundle with full formatting support.
@@ -1262,4 +1622,137 @@ declare function createFindReplaceCommands(editor: Editor, options?: FindReplace
1262
1622
  /** Validates Find text without an editor (e.g. to show an error while typing). */
1263
1623
  declare function validateFindPattern(query: string, options?: FindOptions): FindPatternError | null;
1264
1624
 
1265
- export { FindReplaceStore as $, type AddCommentOptions as A, BUILT_IN_IMPORT_ADAPTERS as B, COMMENT_MARK_NAME as C, type DocumentImport as D, type DocumentSearchOptions as E, type DocumentSearchResult as F, type DocumentStructureCommandArgs as G, type DocumentStructureCommandItem as H, EMPTY_FIND_REPLACE_SNAPSHOT as I, type EditorCompareOptions as J, FIND_OPTION_TOGGLES as K, FIND_PARAGRAPH_MARK as L, FileImport as M, type FileImportOptions as N, type FindAllOptions as O, type FindAllResult as P, type FindMatch as Q, type FindOptionToggle as R, type FindOptions as S, type FindPatternError as T, type FindPatternErrorCode as U, FindReplace as V, type FindReplaceCommandOptions as W, type FindReplaceMode as X, type FindReplaceOptions as Y, type FindReplaceSnapshot as Z, type FindReplaceStorage as _, type DocumentImportAdapter as a, fileImportPluginKey as a$, type FocusHeadingOptions as a0, FontSize as a1, Footnote as a2, type FootnoteInfo as a3, FootnoteReference as a4, Footnotes as a5, type FootnotesOptions as a6, GradientText as a7, type GradientTextOptions as a8, Image as a9, SlashCommands as aA, type SlashCommandsOptions as aB, SmilieReplacer as aC, TableOfContents as aD, type TableOfContentsEntry as aE, type TableOfContentsOptions as aF, TemplateSuggestions as aG, type TemplateSuggestionsOptions as aH, applyDocumentComparison as aI, applyReplacements as aJ, autocorrectPluginKey as aK, buildOutlineTree as aL, capitalizeSentenceRules as aM, commentsPluginKey as aN, compareInEditor as aO, compileFindPattern as aP, computeOutline as aQ, createFindReplaceCommands as aR, createImportAdapterRegistry as aS, createOutlineStore as aT, createRichTextPreset as aU, createSearchBudget as aV, crossReferencePluginKey as aW, defaultAutocorrectRules as aX, defaultImportRegistry as aY, documentStructureCommandItems as aZ, expandReplacement as a_, type ImageOptions as aa, type InsertFootnoteOptions as ab, type InsertTableOfContentsOptions as ac, LoadingNode as ad, MAX_FIND_PATTERN_LENGTH as ae, Markdown as af, type OpenFindReplaceParams as ag, Outline as ah, type OutlineHeading as ai, type OutlineOptions as aj, type OutlineSnapshot as ak, type OutlineStorage as al, type OutlineStore as am, type OutlineTreeItem as an, type PatternMatch as ao, type ReplacePiece as ap, RichClipboard as aq, type RichClipboardOptions as ar, type RichClipboardStorage as as, type RichTextPresetOptions as at, SMILIE_REPLACEMENTS as au, type SearchBudget as av, type SearchBudgetOptions as aw, type SetBookmarkOptions as ax, type SetSearchParams as ay, type SlashCommandMatchData as az, Autocorrect as b, findAllMatches as b0, findAutocorrection as b1, findCommentRanges as b2, findHexColors as b3, findImportAdapter as b4, findReplacePluginKey as b5, foldCodePoint as b6, footnotesMarkdownIt as b7, footnotesPluginKey as b8, formatFindStatus as b9, registerImportAdapter as bA, removeImageNode as bB, richClipboardPluginKey as bC, rtfImportAdapter as bD, searchDocument as bE, smartQuoteRules as bF, smilieAutocorrectRules as bG, symbolRules as bH, syncFootnotes as bI, tableOfContentsMarkdownIt as bJ, tableOfContentsPluginKey as bK, twoInitialCapitalsRules as bL, unregisterImportAdapter as bM, updateImageSrc as bN, validateFindPattern as bO, writeRichClipboard as bP, fractionRules as ba, getActiveHeading as bb, getBookmarks as bc, getCommentAnchors as bd, getCommentAuthor as be, getCommentIdsAt as bf, getCommentStore as bg, getCrossReferenceTargets as bh, getDocumentStructureCommandItems as bi, getFindReplaceState as bj, getFindReplaceStore as bk, getFootnotes as bl, getImportAccept as bm, getOutline as bn, getTableOfContentsEntries as bo, handleImageInsertion as bp, htmlImportAdapter as bq, imagePastePluginKey as br, importFile as bs, insertImageNode as bt, isInsidePromptToken as bu, markdownImportAdapter as bv, navigateToHeading as bw, outlinePluginKey as bx, parseReplacement as by, plainTextImportAdapter as bz, type AutocorrectContext as c, type AutocorrectCorrection as d, type AutocorrectOptions as e, type AutocorrectRule as f, type AutocorrectStorage as g, Bookmark as h, type BookmarkInfo as i, type BookmarkOptions as j, ColorHighlighter as k, type CommentRange as l, Comments as m, type CommentsOptions as n, type CommentsStorage as o, type CompileFindPatternResult as p, type CompiledFindPattern as q, type CreateImportAdapterRegistryOptions as r, CrossReference as s, type CrossReferenceOptions as t, type CrossReferenceTarget as u, type CrossReferenceTargetType as v, DEFAULT_AUTOCORRECT_EXCEPTIONS as w, DocumentCompare as x, type DocumentCompareOptions as y, type DocumentCompareStorage as z };
1625
+ /** Table operations shared by the command registry, the toolbars and agent tools. */
1626
+ type TableAction = "insertTable" | "addRowBefore" | "addRowAfter" | "deleteRow" | "addColumnBefore" | "addColumnAfter" | "deleteColumn" | "deleteTable" | "mergeCells" | "splitCell" | "toggleHeaderRow" | "toggleHeaderColumn" | "toggleHeaderCell" | "goToNextCell" | "goToPreviousCell" | "setCellAlignment" | "setCellBackground";
1627
+ /** Parameters of `insertTable`, `setCellAlignment` and `setCellBackground`. */
1628
+ interface TableActionParams {
1629
+ /** `insertTable`: number of rows (1–100, default 3). */
1630
+ rows?: number;
1631
+ /** `insertTable`: number of columns (1–50, default 3). */
1632
+ cols?: number;
1633
+ /** `insertTable`: make the first row a header row (default `true`). */
1634
+ withHeaderRow?: boolean;
1635
+ /** `setCellAlignment`: `left`, `center`, `right`, `justify`, or `null` to clear. */
1636
+ align?: TableCellAlignment | null;
1637
+ /** `setCellBackground`: a CSS color, or `null` to clear. */
1638
+ color?: string | null;
1639
+ }
1640
+ interface TableActionInfo {
1641
+ action: TableAction;
1642
+ label: string;
1643
+ description: string;
1644
+ keywords: readonly string[];
1645
+ }
1646
+ /** Every table action with its label, in toolbar order. */
1647
+ declare const TABLE_ACTIONS: readonly TableActionInfo[];
1648
+ /** A button of the table toolbars (`TableToolbar` in React and Svelte). */
1649
+ interface TableToolbarItem {
1650
+ /** Unique id (also the button's `data-action`). */
1651
+ id: string;
1652
+ action: TableAction;
1653
+ params?: TableActionParams;
1654
+ /** Short button text. */
1655
+ label: string;
1656
+ /** Accessible name and tooltip. */
1657
+ title: string;
1658
+ /** Items of one group are separated from the next group. */
1659
+ group: string;
1660
+ /** Toggle buttons: whether the button shows as pressed. */
1661
+ active?: (state: TableState) => boolean;
1662
+ }
1663
+ /** The default table toolbar: rows, columns, cells, headers, alignment, delete. */
1664
+ declare const DEFAULT_TABLE_TOOLBAR: readonly TableToolbarItem[];
1665
+ declare const MAX_TABLE_ROWS = 100;
1666
+ declare const MAX_TABLE_COLUMNS = 50;
1667
+ /** Whether the editor's schema has the table nodes (`createRichTextPreset({ table })`). */
1668
+ declare function isTableEnabled(editor: Editor | null | undefined): boolean;
1669
+ /** Whether the selection (cursor, text or cell selection) is inside a table. */
1670
+ declare function isSelectionInTable(state: EditorState): boolean;
1671
+ /**
1672
+ * `shouldShow` for a table bubble menu (TipTap's `BubbleMenuPlugin`): shown
1673
+ * while an editable editor's selection is in a table, even a collapsed cursor.
1674
+ */
1675
+ declare function shouldShowTableBubbleMenu({ editor, state }: {
1676
+ editor: Editor;
1677
+ state: EditorState;
1678
+ }): boolean;
1679
+ /**
1680
+ * Whether a table action can run: `true`, or the reason it cannot (e.g.
1681
+ * "Place the cursor in a table first.").
1682
+ */
1683
+ declare function getTableActionState(editor: Editor | null | undefined, action: TableAction, params?: TableActionParams): true | string;
1684
+ interface RunTableActionOptions {
1685
+ /** Focus the editor (toolbars). Default `false`. */
1686
+ focus?: boolean;
1687
+ }
1688
+ /**
1689
+ * Runs a table action. Returns `false` (and changes nothing) when it cannot
1690
+ * run; check `getTableActionState` for the reason.
1691
+ */
1692
+ declare function runTableAction(editor: Editor | null | undefined, action: TableAction, params?: TableActionParams, options?: RunTableActionOptions): boolean;
1693
+ interface TableActionStatus {
1694
+ enabled: boolean;
1695
+ /** Why the action cannot run (only when `enabled` is false). */
1696
+ reason?: string;
1697
+ }
1698
+ /** The table at the selection and what can be done there. */
1699
+ interface TableState {
1700
+ /** The schema has tables. */
1701
+ enabled: boolean;
1702
+ /** The selection is inside a table. */
1703
+ inTable: boolean;
1704
+ /** Cells are selected (a `CellSelection`). */
1705
+ cellSelection: boolean;
1706
+ /** Size of the table (0 outside a table). */
1707
+ rows: number;
1708
+ columns: number;
1709
+ /** Row and column (0-based) of the selection's first cell, or -1. */
1710
+ row: number;
1711
+ column: number;
1712
+ /** The first row / first column are all header cells. */
1713
+ headerRow: boolean;
1714
+ headerColumn: boolean;
1715
+ /** The cell at the selection is a header cell. */
1716
+ headerCell: boolean;
1717
+ /** Alignment / background of the cell at the selection. */
1718
+ cellAlignment: TableCellAlignment | null;
1719
+ cellBackground: string | null;
1720
+ /** Enablement of every action (with the default params). */
1721
+ actions: Record<TableAction, TableActionStatus>;
1722
+ }
1723
+ declare const EMPTY_TABLE_STATE: TableState;
1724
+ /** Computes the table state at the editor's selection. */
1725
+ declare function getTableState(editor: Editor | null | undefined): TableState;
1726
+ interface TableStore {
1727
+ getSnapshot(): TableState;
1728
+ subscribe(listener: () => void): () => void;
1729
+ destroy(): void;
1730
+ }
1731
+ /**
1732
+ * An external store of `getTableState(editor)` for UI bindings (React's
1733
+ * `useSyncExternalStore`, Svelte runes). The snapshot object only changes
1734
+ * when the state does, and the store listens to the editor only while it
1735
+ * has subscribers.
1736
+ */
1737
+ declare function createTableStore(editor: Editor | null | undefined): TableStore;
1738
+
1739
+ interface TableCommandOptions {
1740
+ /** Id prefix (default `table.`). */
1741
+ prefix?: string;
1742
+ group?: string;
1743
+ scope?: string;
1744
+ /** Focus the editor when a command runs (default `true`, for menus and the palette). */
1745
+ focus?: boolean;
1746
+ }
1747
+ /**
1748
+ * Table commands for the command registry (`@pixerate/editor/commands`):
1749
+ * `table.insertTable` (`{ rows, cols, withHeaderRow }`), row and column
1750
+ * insertion/deletion, `table.deleteTable`, `table.mergeCells` /
1751
+ * `table.splitCell`, header toggles, cell navigation and
1752
+ * `table.setCellAlignment` / `table.setCellBackground`. Disabled commands
1753
+ * explain why ("Place the cursor in a table first."). Requires the table
1754
+ * extensions (`createRichTextPreset`'s default `table` option).
1755
+ */
1756
+ declare function createTableCommands(editor: Editor, options?: TableCommandOptions): CommandSpec[];
1757
+
1758
+ export { type FindOptionToggle as $, type AddCommentOptions as A, BUILT_IN_IMPORT_ADAPTERS as B, CHARACTER_STYLE_MARK_NAME as C, type DocumentImport as D, type CrossReferenceTarget as E, type CrossReferenceTargetType as F, DEFAULT_AUTOCORRECT_EXCEPTIONS as G, DEFAULT_TABLE_OPTIONS as H, DEFAULT_TABLE_TOOLBAR as I, DocumentCompare as J, type DocumentCompareOptions as K, type DocumentCompareStorage as L, type DocumentSearchOptions as M, type DocumentSearchResult as N, type DocumentStructureCommandArgs as O, type PdfStructureReport as P, type DocumentStructureCommandItem as Q, EMPTY_FIND_REPLACE_SNAPSHOT as R, EMPTY_TABLE_STATE as S, type EditorCompareOptions as T, FIND_OPTION_TOGGLES as U, FIND_PARAGRAPH_MARK as V, FileImport as W, type FileImportOptions as X, type FindAllOptions as Y, type FindAllResult as Z, type FindMatch as _, type DocumentImportAdapter as a, SlashCommands as a$, type FindOptions as a0, type FindPatternError as a1, type FindPatternErrorCode as a2, FindReplace as a3, type FindReplaceCommandOptions as a4, type FindReplaceMode as a5, type FindReplaceOptions as a6, type FindReplaceSnapshot as a7, type FindReplaceStorage as a8, FindReplaceStore as a9, type OutlineStore as aA, type OutlineTreeItem as aB, ParagraphStyles as aC, type ParagraphStylesOptions as aD, type ParagraphStylesSnapshot as aE, type ParagraphStylesStorage as aF, type ParagraphStylesStore as aG, type PatternMatch as aH, type PdfLayoutBlock as aI, type PdfLayoutPage as aJ, type PdfLayoutResult as aK, type PdfTableCell as aL, type ReplacePiece as aM, RichClipboard as aN, type RichClipboardOptions as aO, type RichClipboardStorage as aP, type RichTextPresetCommandPackages as aQ, type RichTextPresetOptions as aR, type RichTextTableOptions as aS, type RunTableActionOptions as aT, SMILIE_REPLACEMENTS as aU, STYLE_ID_ATTRIBUTE as aV, type SearchBudget as aW, type SearchBudgetOptions as aX, type SetBookmarkOptions as aY, type SetSearchParams as aZ, type SlashCommandMatchData as a_, type FocusHeadingOptions as aa, FontSize as ab, Footnote as ac, type FootnoteInfo as ad, FootnoteReference as ae, Footnotes as af, type FootnotesOptions as ag, GradientText as ah, type GradientTextOptions as ai, Image as aj, type ImageOptions as ak, type ImportStructureItem as al, type ImportStructureReport as am, type InsertFootnoteOptions as an, type InsertTableOfContentsOptions as ao, LoadingNode as ap, MAX_FIND_PATTERN_LENGTH as aq, MAX_TABLE_COLUMNS as ar, MAX_TABLE_ROWS as as, Markdown as at, type OpenFindReplaceParams as au, Outline as av, type OutlineHeading as aw, type OutlineOptions as ax, type OutlineSnapshot as ay, type OutlineStorage as az, type PdfLayoutOptions as b, getCommentStore as b$, type SlashCommandsOptions as b0, SmilieReplacer as b1, TABLE_ACTIONS as b2, Table as b3, type TableAction as b4, type TableActionInfo as b5, type TableActionParams as b6, type TableActionStatus as b7, TableCell as b8, type TableCellAlignment as b9, createRichTextPreset as bA, createSearchBudget as bB, createTableCommands as bC, createTableExtensions as bD, createTableStore as bE, crossReferencePluginKey as bF, defaultAutocorrectRules as bG, defaultImportRegistry as bH, documentStructureCommandItems as bI, expandReplacement as bJ, fileImportPluginKey as bK, findAllMatches as bL, findAutocorrection as bM, findCommentRanges as bN, findHexColors as bO, findImportAdapter as bP, findReplacePluginKey as bQ, foldCodePoint as bR, footnotesMarkdownIt as bS, footnotesPluginKey as bT, formatFindStatus as bU, fractionRules as bV, getActiveHeading as bW, getBookmarks as bX, getCommentAnchors as bY, getCommentAuthor as bZ, getCommentIdsAt as b_, type TableCommandOptions as ba, TableHeader as bb, TableOfContents as bc, type TableOfContentsEntry as bd, type TableOfContentsOptions as be, TableRow as bf, type TableState as bg, type TableStore as bh, type TableToolbarItem as bi, TemplateSuggestions as bj, type TemplateSuggestionsOptions as bk, analyzePdfLayout as bl, applyDocumentComparison as bm, applyReplacements as bn, autocorrectPluginKey as bo, buildOutlineTree as bp, capitalizeSentenceRules as bq, captureSelectionFormat as br, commentsPluginKey as bs, compareInEditor as bt, compileFindPattern as bu, computeOutline as bv, createFindReplaceCommands as bw, createImportAdapterRegistry as bx, createOutlineStore as by, createParagraphStylesStore as bz, type PdfRuleLine as c, getCrossReferenceTargets as c0, getDocumentStructureCommandItems as c1, getFindReplaceState as c2, getFindReplaceStore as c3, getFootnotes as c4, getImportAccept as c5, getOutline as c6, getParagraphStyleAt as c7, getStyleRegistry as c8, getTableActionState as c9, searchDocument as cA, shouldShowTableBubbleMenu as cB, smartQuoteRules as cC, smilieAutocorrectRules as cD, symbolRules as cE, syncFootnotes as cF, tableOfContentsMarkdownIt as cG, tableOfContentsPluginKey as cH, twoInitialCapitalsRules as cI, unregisterImportAdapter as cJ, updateImageSrc as cK, validateFindPattern as cL, writeRichClipboard as cM, getTableOfContentsEntries as ca, getTableState as cb, handleImageInsertion as cc, htmlImportAdapter as cd, imagePastePluginKey as ce, importFile as cf, insertImageNode as cg, isGfmTable as ch, isInsidePromptToken as ci, isParagraphStyleAvailable as cj, isSelectionInTable as ck, isTableEnabled as cl, markdownImportAdapter as cm, navigateToHeading as cn, normalizeTableCellAlignment as co, normalizeTableCellColor as cp, outlinePluginKey as cq, paragraphStylesPluginKey as cr, parseReplacement as cs, pdfLayoutBlocksToHtml as ct, plainTextImportAdapter as cu, registerImportAdapter as cv, removeImageNode as cw, richClipboardPluginKey as cx, rtfImportAdapter as cy, runTableAction as cz, type PdfTextRun as d, Autocorrect as e, type AutocorrectContext as f, type AutocorrectCorrection as g, type AutocorrectOptions as h, type AutocorrectRule as i, type AutocorrectStorage as j, Bookmark as k, type BookmarkInfo as l, type BookmarkOptions as m, COMMENT_MARK_NAME as n, CharacterStyle as o, ColorHighlighter as p, type CommentRange as q, Comments as r, type CommentsOptions as s, type CommentsStorage as t, type CompileFindPatternResult as u, type CompiledFindPattern as v, type CreateImportAdapterRegistryOptions as w, type CreateStyleFromSelectionOptions as x, CrossReference as y, type CrossReferenceOptions as z };