@zeke-02/docx-editor 0.5.2 → 0.5.4

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 (223) hide show
  1. package/LICENSE +204 -0
  2. package/dist/FindReplaceDialog-7SQOVQWH.js +1 -0
  3. package/dist/FindReplaceDialog-RK3A7MSK.mjs +1 -0
  4. package/dist/{FootnotePropertiesDialog-XQ7NIFIU.js → FootnotePropertiesDialog-2Q2SHVMR.js} +1 -1
  5. package/dist/{FootnotePropertiesDialog-TNVJJCY6.mjs → FootnotePropertiesDialog-ZKQXW3YO.mjs} +1 -1
  6. package/dist/{HyperlinkDialog-FR4IZZ7E.mjs → HyperlinkDialog-QV3CVFQU.mjs} +1 -1
  7. package/dist/HyperlinkDialog-XVAF7FVN.js +1 -0
  8. package/dist/{ImagePositionDialog-JSZSIKF5.mjs → ImagePositionDialog-EGRH3HPP.mjs} +1 -1
  9. package/dist/{ImagePositionDialog-2YXRAGZS.js → ImagePositionDialog-HIVHUTBT.js} +1 -1
  10. package/dist/ImagePropertiesDialog-67WLFIIZ.mjs +1 -0
  11. package/dist/ImagePropertiesDialog-HSM3JJ22.js +1 -0
  12. package/dist/KeyboardShortcutsDialog-B0UFuR4w.d.ts +395 -0
  13. package/dist/KeyboardShortcutsDialog-t6JKL4Aj.d.mts +395 -0
  14. package/dist/PageSetupDialog-642IAVG2.js +1 -0
  15. package/dist/PageSetupDialog-ERUQDHAY.mjs +1 -0
  16. package/dist/PluginHost-HS31VIuo.d.mts +16 -0
  17. package/dist/PluginHost-zILZO7zX.d.ts +16 -0
  18. package/dist/{SplitCellDialog-NP3JJYHD.mjs → SplitCellDialog-GFWCFCTD.mjs} +1 -1
  19. package/dist/{SplitCellDialog-JIAC3RYV.js → SplitCellDialog-M7WF7ANE.js} +1 -1
  20. package/dist/{TablePropertiesDialog-TIK4AA5M.mjs → TablePropertiesDialog-TZ7VCL6V.mjs} +1 -1
  21. package/dist/{TablePropertiesDialog-T7D4HSVP.js → TablePropertiesDialog-ZKU2FTUX.js} +1 -1
  22. package/dist/agentApi-B2Y7kexW.d.ts +486 -0
  23. package/dist/agentApi-BzUJ_kao.d.mts +486 -0
  24. package/dist/chunk-2XXILKEQ.js +1 -0
  25. package/dist/chunk-35DG3R42.js +2 -0
  26. package/dist/chunk-5UX5CD4C.js +1 -0
  27. package/dist/chunk-7QQSDIWK.mjs +2 -0
  28. package/dist/chunk-AW5TISUL.js +3 -0
  29. package/dist/chunk-B45ECEGY.js +18 -0
  30. package/dist/chunk-B7CCL7SL.mjs +2 -0
  31. package/dist/chunk-BRMTZRLJ.js +2 -0
  32. package/dist/chunk-D47GTKGU.js +2 -0
  33. package/dist/chunk-F5SERL7X.mjs +2 -0
  34. package/dist/chunk-FWPVBFKQ.mjs +1 -0
  35. package/dist/chunk-GGQK26JO.js +2 -0
  36. package/dist/chunk-GM2S2WMT.mjs +1 -0
  37. package/dist/chunk-HXDMASAR.js +1 -0
  38. package/dist/chunk-ILYKDR3C.js +1 -0
  39. package/dist/chunk-JFRDFK7V.mjs +260 -0
  40. package/dist/chunk-JPF5R2ZM.mjs +1 -0
  41. package/dist/chunk-KOXCF3CL.mjs +1 -0
  42. package/dist/chunk-KRLNX56Y.mjs +2 -0
  43. package/dist/chunk-LWOHVYKW.mjs +1 -0
  44. package/dist/chunk-MDTA25AN.mjs +60 -0
  45. package/dist/chunk-MKNSJOCN.js +70 -0
  46. package/dist/chunk-NIBCC7WQ.js +1 -0
  47. package/dist/chunk-NLFXR2VH.js +2 -0
  48. package/dist/chunk-NOLMVQNN.mjs +40 -0
  49. package/dist/chunk-ONIYA2FU.mjs +2 -0
  50. package/dist/chunk-RCIZ7OM3.mjs +70 -0
  51. package/dist/chunk-SGTUE33R.js +260 -0
  52. package/dist/{chunk-EHFEG3TX.js → chunk-SNZ57XBI.js} +1 -1
  53. package/dist/chunk-SOTWG3KJ.mjs +1 -0
  54. package/dist/chunk-TYPGB4KF.js +1 -0
  55. package/dist/chunk-U7ZW2DOO.mjs +2 -0
  56. package/dist/chunk-WO3FIV4B.js +40 -0
  57. package/dist/{chunk-PKEOQIQO.mjs → chunk-WPI3YRFO.mjs} +1 -1
  58. package/dist/chunk-XGJ2EORY.mjs +1 -0
  59. package/dist/chunk-XQZTWWRF.mjs +18 -0
  60. package/dist/chunk-Y3SEHWZ2.js +1 -0
  61. package/dist/chunk-YBEVHQCT.js +60 -0
  62. package/dist/chunk-ZVAFVHWR.mjs +3 -0
  63. package/dist/chunk-ZXPCJWVY.js +2 -0
  64. package/dist/{agentApi-DLt94vXk.d.mts → content-REFGFfEH.d.mts} +8 -755
  65. package/dist/{agentApi-DLt94vXk.d.ts → content-REFGFfEH.d.ts} +8 -755
  66. package/dist/dialogs.d.mts +25 -0
  67. package/dist/dialogs.d.ts +25 -0
  68. package/dist/dialogs.js +1 -0
  69. package/dist/dialogs.mjs +1 -0
  70. package/dist/document-Cu2vq_wS.d.mts +294 -0
  71. package/dist/document-CxOagoLQ.d.ts +294 -0
  72. package/dist/executor-WBHID2RK.mjs +1 -0
  73. package/dist/executor-Y5VUOAHY.js +1 -0
  74. package/dist/findReplace-Bue0JaXh.d.ts +138 -0
  75. package/dist/findReplace-shXbOjFQ.d.mts +138 -0
  76. package/dist/fork.d.mts +535 -0
  77. package/dist/fork.d.ts +535 -0
  78. package/dist/fork.js +1 -0
  79. package/dist/fork.mjs +1 -0
  80. package/dist/hooks.d.mts +598 -0
  81. package/dist/hooks.d.ts +598 -0
  82. package/dist/hooks.js +1 -0
  83. package/dist/hooks.mjs +1 -0
  84. package/dist/index-B5A-J9GC.d.ts +1119 -0
  85. package/dist/index-bw-PaozF.d.mts +1119 -0
  86. package/dist/index.d.mts +12 -591
  87. package/dist/index.d.ts +12 -591
  88. package/dist/index.js +1 -120
  89. package/dist/index.mjs +1 -120
  90. package/dist/layout-bridge-5GYGYKM5.mjs +1 -0
  91. package/dist/layout-bridge-QQDA7ELH.js +1 -0
  92. package/dist/plugin-api.d.mts +165 -0
  93. package/dist/plugin-api.d.ts +165 -0
  94. package/dist/plugin-api.js +1 -0
  95. package/dist/plugin-api.mjs +1 -0
  96. package/dist/processTemplate-BTBTR7AM.js +1 -0
  97. package/dist/{processTemplate-W2C5PXZB.mjs → processTemplate-MBX2KDLE.mjs} +1 -1
  98. package/dist/styles.css +1 -1
  99. package/dist/styles.d.mts +18 -0
  100. package/dist/styles.d.ts +18 -0
  101. package/dist/styles.js +1 -0
  102. package/dist/styles.mjs +1 -0
  103. package/dist/types-BF48VxkC.d.mts +18 -0
  104. package/dist/types-BF48VxkC.d.ts +18 -0
  105. package/dist/types-BnIs4sE7.d.mts +281 -0
  106. package/dist/types-BnIs4sE7.d.ts +281 -0
  107. package/dist/types-CW6HFAX6.d.ts +39 -0
  108. package/dist/types-DIsDCwTG.d.mts +39 -0
  109. package/dist/ui.d.mts +111 -552
  110. package/dist/ui.d.ts +111 -552
  111. package/dist/ui.js +111 -1
  112. package/dist/ui.mjs +111 -1
  113. package/dist/useFindReplace-DKy-s3gS.d.ts +261 -0
  114. package/dist/useFindReplace-vuoKpDKE.d.mts +261 -0
  115. package/package.json +47 -49
  116. package/dist/ClipboardManager-CVKX0v9q.d.ts +0 -464
  117. package/dist/ClipboardManager-V3aaMnWE.d.mts +0 -464
  118. package/dist/DocumentAgent-BWflKHpH.d.mts +0 -442
  119. package/dist/DocumentAgent-DsdXtetF.d.ts +0 -442
  120. package/dist/FindReplaceDialog-L3YF5HIS.mjs +0 -1
  121. package/dist/FindReplaceDialog-SEBWC5P7.js +0 -1
  122. package/dist/HyperlinkDialog-WEK6JSAC.js +0 -1
  123. package/dist/ImagePropertiesDialog-527MFLQO.mjs +0 -1
  124. package/dist/ImagePropertiesDialog-HG4K3IE7.js +0 -1
  125. package/dist/PageSetupDialog-GALVJMUB.js +0 -1
  126. package/dist/PageSetupDialog-TGQIAMI7.mjs +0 -1
  127. package/dist/TableToolbar-DUgmob2I.d.ts +0 -1273
  128. package/dist/TableToolbar-YL74HNS1.d.mts +0 -1273
  129. package/dist/chunk-23SXXIZS.js +0 -111
  130. package/dist/chunk-3F52AP2Q.js +0 -1
  131. package/dist/chunk-42O5GXM5.mjs +0 -82
  132. package/dist/chunk-54ULJEHM.mjs +0 -1
  133. package/dist/chunk-5XK326FI.mjs +0 -1
  134. package/dist/chunk-6WPRCJ5A.mjs +0 -1
  135. package/dist/chunk-76IYR7C7.mjs +0 -1
  136. package/dist/chunk-AGRIVA4G.js +0 -1
  137. package/dist/chunk-BTCQ2QI3.mjs +0 -3
  138. package/dist/chunk-BUEMG4NW.js +0 -1
  139. package/dist/chunk-BXRC4U3X.mjs +0 -2
  140. package/dist/chunk-CPAYKE6X.mjs +0 -1
  141. package/dist/chunk-DACWLFKI.mjs +0 -1
  142. package/dist/chunk-EPBFWE36.js +0 -2
  143. package/dist/chunk-FXES3YDB.js +0 -82
  144. package/dist/chunk-HI66BSGS.mjs +0 -9
  145. package/dist/chunk-INTPVEO6.mjs +0 -9
  146. package/dist/chunk-IOAGVW6Q.mjs +0 -2
  147. package/dist/chunk-JCEWC5QL.mjs +0 -4
  148. package/dist/chunk-JTIUFACT.js +0 -1
  149. package/dist/chunk-LUF7PWIC.js +0 -10
  150. package/dist/chunk-MGEN6GOE.mjs +0 -2
  151. package/dist/chunk-MOE2ZGUE.js +0 -18
  152. package/dist/chunk-MWLHJWB6.js +0 -9
  153. package/dist/chunk-OFYVDN3U.mjs +0 -2
  154. package/dist/chunk-P4VSHBGZ.js +0 -2
  155. package/dist/chunk-P5FQHIES.mjs +0 -1
  156. package/dist/chunk-PBC7XAYZ.js +0 -3
  157. package/dist/chunk-PEMB6SZT.js +0 -2
  158. package/dist/chunk-PQMSZTBB.js +0 -9
  159. package/dist/chunk-Q7UDQXAF.js +0 -1
  160. package/dist/chunk-QGTAIC5E.js +0 -1
  161. package/dist/chunk-QVPR2W5S.js +0 -1
  162. package/dist/chunk-R3QMYPL5.mjs +0 -59
  163. package/dist/chunk-RBUTXXQJ.mjs +0 -18
  164. package/dist/chunk-RRWYZ2TS.mjs +0 -111
  165. package/dist/chunk-S3STEPVO.js +0 -182
  166. package/dist/chunk-SFUM35DH.js +0 -2
  167. package/dist/chunk-SNLC6EK2.js +0 -1
  168. package/dist/chunk-TMTLIGLZ.js +0 -59
  169. package/dist/chunk-TSE2PWFX.mjs +0 -10
  170. package/dist/chunk-UKESXQS5.mjs +0 -182
  171. package/dist/chunk-UWYD42WV.js +0 -4
  172. package/dist/chunk-UXVACQCY.mjs +0 -1
  173. package/dist/chunk-W4EIKDM6.mjs +0 -2
  174. package/dist/chunk-W53SI3XW.mjs +0 -1
  175. package/dist/chunk-WNS2RBQD.js +0 -2
  176. package/dist/chunk-Z3KMSHUP.js +0 -1
  177. package/dist/core-plugins-reexport.d.mts +0 -31
  178. package/dist/core-plugins-reexport.d.ts +0 -31
  179. package/dist/core-plugins-reexport.js +0 -1
  180. package/dist/core-plugins-reexport.mjs +0 -1
  181. package/dist/core-reexport.d.mts +0 -340
  182. package/dist/core-reexport.d.ts +0 -340
  183. package/dist/core-reexport.js +0 -1
  184. package/dist/core-reexport.mjs +0 -1
  185. package/dist/documentSerializer-DtS_-oGA.d.mts +0 -664
  186. package/dist/documentSerializer-Wj1p2ASa.d.ts +0 -664
  187. package/dist/executor-C3VXF7QA.mjs +0 -1
  188. package/dist/executor-GDBV3AGV.js +0 -1
  189. package/dist/headless-reexport.d.mts +0 -197
  190. package/dist/headless-reexport.d.ts +0 -197
  191. package/dist/headless-reexport.js +0 -1
  192. package/dist/headless-reexport.mjs +0 -1
  193. package/dist/insertOperations-BTH1Asas.d.mts +0 -176
  194. package/dist/insertOperations-CbUnXAXH.d.ts +0 -176
  195. package/dist/layout-bridge-EA4DJ227.js +0 -1
  196. package/dist/layout-bridge-XDPSO6GO.mjs +0 -1
  197. package/dist/mcp-reexport.d.mts +0 -156
  198. package/dist/mcp-reexport.d.ts +0 -156
  199. package/dist/mcp-reexport.js +0 -16
  200. package/dist/mcp-reexport.mjs +0 -16
  201. package/dist/processTemplate-MJ2PCSO5.js +0 -1
  202. package/dist/react-B0W16SV6.d.ts +0 -1330
  203. package/dist/react-D0Pn1nww.d.mts +0 -1330
  204. package/dist/react.d.mts +0 -10
  205. package/dist/react.d.ts +0 -10
  206. package/dist/react.js +0 -1
  207. package/dist/react.mjs +0 -1
  208. package/dist/registry-CH9V-IX0.d.ts +0 -165
  209. package/dist/registry-CWBKYlNW.d.mts +0 -165
  210. package/dist/types-UDsUq8D3.d.mts +0 -310
  211. package/dist/types-jbivc9Lj.d.ts +0 -310
  212. package/dist/variableDetector-CdQ7ZTzA.d.mts +0 -204
  213. package/dist/variableDetector-DsRV3A9z.d.ts +0 -204
  214. package/i18n/de.json +0 -792
  215. package/i18n/en.json +0 -792
  216. package/i18n/he.json +0 -792
  217. package/i18n/pl.json +0 -792
  218. package/i18n/pt-BR.json +0 -792
  219. package/i18n/tr.json +0 -792
  220. package/i18n/zh-CN.json +0 -792
  221. /package/dist/{chunk-YC5KZSYD.js → chunk-ESZ6JRTW.js} +0 -0
  222. /package/dist/{chunk-LVGJKS7Y.mjs → chunk-TZMMD6RR.mjs} +0 -0
  223. /package/dist/{react.css → fork.css} +0 -0
@@ -0,0 +1,138 @@
1
+ import { R as Run } from './content-REFGFfEH.js';
2
+
3
+ /**
4
+ * Clipboard utilities for copy/paste with formatting
5
+ *
6
+ * Handles:
7
+ * - Copy: puts formatted HTML and plain text on clipboard
8
+ * - Paste: reads HTML clipboard, converts to runs with formatting
9
+ * - Handles paste from Word (cleans up Word HTML)
10
+ * - Ctrl+C, Ctrl+V, Ctrl+X keyboard shortcuts
11
+ */
12
+
13
+ /**
14
+ * Parsed clipboard content
15
+ */
16
+ interface ParsedClipboardContent {
17
+ /** Runs parsed from clipboard */
18
+ runs: Run[];
19
+ /** Whether content came from Word */
20
+ fromWord: boolean;
21
+ /** Whether content came from our editor */
22
+ fromEditor: boolean;
23
+ /** Original plain text */
24
+ plainText: string;
25
+ }
26
+
27
+ /**
28
+ * Find & Replace Utility Functions
29
+ *
30
+ * Pure utility functions for text search, pattern matching, and
31
+ * document search. Lifted from packages/react/src/components/dialogs/
32
+ * findReplaceUtils.ts so the React adapter and the Vue adapter share
33
+ * one implementation.
34
+ */
35
+ /**
36
+ * A single match result in the document
37
+ */
38
+ interface FindMatch {
39
+ /** Index of the paragraph containing the match */
40
+ paragraphIndex: number;
41
+ /** Index of the run/content within the paragraph */
42
+ contentIndex: number;
43
+ /** Character offset within the content */
44
+ startOffset: number;
45
+ /** Character offset for end of match */
46
+ endOffset: number;
47
+ /** The matched text */
48
+ text: string;
49
+ }
50
+ /**
51
+ * Find options for controlling search behavior
52
+ */
53
+ interface FindOptions {
54
+ /** Whether to match case */
55
+ matchCase: boolean;
56
+ /** Whether to match whole words only */
57
+ matchWholeWord: boolean;
58
+ /** Whether to use regular expressions (future) */
59
+ useRegex?: boolean;
60
+ }
61
+ /**
62
+ * Find result with all matches
63
+ */
64
+ interface FindResult {
65
+ /** All matches found */
66
+ matches: FindMatch[];
67
+ /** Total match count */
68
+ totalCount: number;
69
+ /** Current match index (0-based) */
70
+ currentIndex: number;
71
+ }
72
+ /**
73
+ * Highlight options for document rendering
74
+ */
75
+ interface HighlightOptions {
76
+ /** Background color for current match */
77
+ currentMatchColor: string;
78
+ /** Background color for other matches */
79
+ otherMatchColor: string;
80
+ }
81
+ /**
82
+ * Create default find options
83
+ */
84
+ declare function createDefaultFindOptions(): FindOptions;
85
+ /**
86
+ * Escape string for use in regex pattern
87
+ */
88
+ declare function escapeRegexString(str: string): string;
89
+ /**
90
+ * Create a regex pattern from search text and options
91
+ */
92
+ declare function createSearchPattern(searchText: string, options: FindOptions): RegExp | null;
93
+ /**
94
+ * Find all matches of search text in content
95
+ */
96
+ declare function findAllMatches(content: string, searchText: string, options: FindOptions): Array<{
97
+ start: number;
98
+ end: number;
99
+ }>;
100
+ /**
101
+ * Replace text in content
102
+ */
103
+ declare function replaceAllInContent(content: string, searchText: string, replaceText: string, options: FindOptions): string;
104
+ /**
105
+ * Replace first match in content
106
+ */
107
+ declare function replaceFirstInContent(content: string, searchText: string, replaceText: string, options: FindOptions, startIndex?: number): {
108
+ content: string;
109
+ replaced: boolean;
110
+ matchStart: number;
111
+ matchEnd: number;
112
+ };
113
+ /**
114
+ * Get match count for status display
115
+ */
116
+ declare function getMatchCountText(result: FindResult | null): string;
117
+ /**
118
+ * Check if search text is empty or whitespace-only
119
+ */
120
+ declare function isEmptySearch(searchText: string): boolean;
121
+ /**
122
+ * Get default highlight options
123
+ */
124
+ declare function getDefaultHighlightOptions(): HighlightOptions;
125
+ /**
126
+ * Find all matches in a document
127
+ */
128
+ declare function findInDocument(document: any, searchText: string, options: FindOptions): FindMatch[];
129
+ /**
130
+ * Find matches in a single paragraph
131
+ */
132
+ declare function findInParagraph(paragraph: any, searchText: string, options: FindOptions, paragraphIndex: number): FindMatch[];
133
+ /**
134
+ * Scroll to a match in the document
135
+ */
136
+ declare function scrollToMatch(containerElement: HTMLElement | null, match: FindMatch): void;
137
+
138
+ export { type FindMatch as F, type HighlightOptions as H, type ParsedClipboardContent as P, type FindOptions as a, type FindResult as b, createDefaultFindOptions as c, createSearchPattern as d, escapeRegexString as e, findAllMatches as f, findInDocument as g, findInParagraph as h, getDefaultHighlightOptions as i, getMatchCountText as j, isEmptySearch as k, replaceFirstInContent as l, replaceAllInContent as r, scrollToMatch as s };
@@ -0,0 +1,138 @@
1
+ import { R as Run } from './content-REFGFfEH.mjs';
2
+
3
+ /**
4
+ * Clipboard utilities for copy/paste with formatting
5
+ *
6
+ * Handles:
7
+ * - Copy: puts formatted HTML and plain text on clipboard
8
+ * - Paste: reads HTML clipboard, converts to runs with formatting
9
+ * - Handles paste from Word (cleans up Word HTML)
10
+ * - Ctrl+C, Ctrl+V, Ctrl+X keyboard shortcuts
11
+ */
12
+
13
+ /**
14
+ * Parsed clipboard content
15
+ */
16
+ interface ParsedClipboardContent {
17
+ /** Runs parsed from clipboard */
18
+ runs: Run[];
19
+ /** Whether content came from Word */
20
+ fromWord: boolean;
21
+ /** Whether content came from our editor */
22
+ fromEditor: boolean;
23
+ /** Original plain text */
24
+ plainText: string;
25
+ }
26
+
27
+ /**
28
+ * Find & Replace Utility Functions
29
+ *
30
+ * Pure utility functions for text search, pattern matching, and
31
+ * document search. Lifted from packages/react/src/components/dialogs/
32
+ * findReplaceUtils.ts so the React adapter and the Vue adapter share
33
+ * one implementation.
34
+ */
35
+ /**
36
+ * A single match result in the document
37
+ */
38
+ interface FindMatch {
39
+ /** Index of the paragraph containing the match */
40
+ paragraphIndex: number;
41
+ /** Index of the run/content within the paragraph */
42
+ contentIndex: number;
43
+ /** Character offset within the content */
44
+ startOffset: number;
45
+ /** Character offset for end of match */
46
+ endOffset: number;
47
+ /** The matched text */
48
+ text: string;
49
+ }
50
+ /**
51
+ * Find options for controlling search behavior
52
+ */
53
+ interface FindOptions {
54
+ /** Whether to match case */
55
+ matchCase: boolean;
56
+ /** Whether to match whole words only */
57
+ matchWholeWord: boolean;
58
+ /** Whether to use regular expressions (future) */
59
+ useRegex?: boolean;
60
+ }
61
+ /**
62
+ * Find result with all matches
63
+ */
64
+ interface FindResult {
65
+ /** All matches found */
66
+ matches: FindMatch[];
67
+ /** Total match count */
68
+ totalCount: number;
69
+ /** Current match index (0-based) */
70
+ currentIndex: number;
71
+ }
72
+ /**
73
+ * Highlight options for document rendering
74
+ */
75
+ interface HighlightOptions {
76
+ /** Background color for current match */
77
+ currentMatchColor: string;
78
+ /** Background color for other matches */
79
+ otherMatchColor: string;
80
+ }
81
+ /**
82
+ * Create default find options
83
+ */
84
+ declare function createDefaultFindOptions(): FindOptions;
85
+ /**
86
+ * Escape string for use in regex pattern
87
+ */
88
+ declare function escapeRegexString(str: string): string;
89
+ /**
90
+ * Create a regex pattern from search text and options
91
+ */
92
+ declare function createSearchPattern(searchText: string, options: FindOptions): RegExp | null;
93
+ /**
94
+ * Find all matches of search text in content
95
+ */
96
+ declare function findAllMatches(content: string, searchText: string, options: FindOptions): Array<{
97
+ start: number;
98
+ end: number;
99
+ }>;
100
+ /**
101
+ * Replace text in content
102
+ */
103
+ declare function replaceAllInContent(content: string, searchText: string, replaceText: string, options: FindOptions): string;
104
+ /**
105
+ * Replace first match in content
106
+ */
107
+ declare function replaceFirstInContent(content: string, searchText: string, replaceText: string, options: FindOptions, startIndex?: number): {
108
+ content: string;
109
+ replaced: boolean;
110
+ matchStart: number;
111
+ matchEnd: number;
112
+ };
113
+ /**
114
+ * Get match count for status display
115
+ */
116
+ declare function getMatchCountText(result: FindResult | null): string;
117
+ /**
118
+ * Check if search text is empty or whitespace-only
119
+ */
120
+ declare function isEmptySearch(searchText: string): boolean;
121
+ /**
122
+ * Get default highlight options
123
+ */
124
+ declare function getDefaultHighlightOptions(): HighlightOptions;
125
+ /**
126
+ * Find all matches in a document
127
+ */
128
+ declare function findInDocument(document: any, searchText: string, options: FindOptions): FindMatch[];
129
+ /**
130
+ * Find matches in a single paragraph
131
+ */
132
+ declare function findInParagraph(paragraph: any, searchText: string, options: FindOptions, paragraphIndex: number): FindMatch[];
133
+ /**
134
+ * Scroll to a match in the document
135
+ */
136
+ declare function scrollToMatch(containerElement: HTMLElement | null, match: FindMatch): void;
137
+
138
+ export { type FindMatch as F, type HighlightOptions as H, type ParsedClipboardContent as P, type FindOptions as a, type FindResult as b, createDefaultFindOptions as c, createSearchPattern as d, escapeRegexString as e, findAllMatches as f, findInDocument as g, findInParagraph as h, getDefaultHighlightOptions as i, getMatchCountText as j, isEmptySearch as k, replaceFirstInContent as l, replaceAllInContent as r, scrollToMatch as s };