@dwelle/excalidraw 0.5.0-b8a955d → 0.5.0-ba41ca2

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 (563) hide show
  1. package/CHANGELOG.md +201 -0
  2. package/README.md +111 -14
  3. package/dist/dev/{chunk-KB3DXHSJ.js → chunk-63SUNQT5.js} +11160 -6728
  4. package/dist/dev/chunk-63SUNQT5.js.map +7 -0
  5. package/dist/dev/chunk-72CYJXY3.js +69 -0
  6. package/dist/dev/chunk-72CYJXY3.js.map +7 -0
  7. package/dist/dev/{chunk-VHBP2L6P.js → chunk-GLSDDV5C.js} +2 -2
  8. package/dist/dev/{chunk-XIXZ3HJO.js → chunk-ZKWD6VD3.js} +58 -10
  9. package/dist/dev/chunk-ZKWD6VD3.js.map +7 -0
  10. package/dist/dev/components/TTDDialog/CodeMirrorEditor-YNPNZUA4.js +259 -0
  11. package/dist/dev/components/TTDDialog/CodeMirrorEditor-YNPNZUA4.js.map +7 -0
  12. package/dist/dev/data/{image-YTAF2QAV.js → image-LSHTDYDI.js} +3 -3
  13. package/dist/dev/index.css +955 -752
  14. package/dist/dev/index.css.map +3 -3
  15. package/dist/dev/index.js +13606 -7440
  16. package/dist/dev/index.js.map +4 -4
  17. package/dist/dev/locales/{ar-SA-JK5MQ7TT.js → ar-SA-EW44IW4V.js} +127 -28
  18. package/dist/dev/locales/ar-SA-EW44IW4V.js.map +7 -0
  19. package/dist/dev/locales/{az-AZ-2PAD62G4.js → az-AZ-AI7WAYA2.js} +103 -4
  20. package/dist/dev/locales/az-AZ-AI7WAYA2.js.map +7 -0
  21. package/dist/dev/locales/{bg-BG-HUKVYCRK.js → bg-BG-43ZNGDXF.js} +104 -5
  22. package/dist/dev/locales/bg-BG-43ZNGDXF.js.map +7 -0
  23. package/dist/dev/locales/{bn-BD-V2CQI46P.js → bn-BD-PU4CN7NP.js} +103 -4
  24. package/dist/dev/locales/bn-BD-PU4CN7NP.js.map +7 -0
  25. package/dist/dev/locales/{bn-IN-MBEO4C3J.js → bn-IN-54CF43JL.js} +103 -4
  26. package/dist/dev/locales/bn-IN-54CF43JL.js.map +7 -0
  27. package/dist/dev/locales/{ca-ES-KWEKW4C3.js → ca-ES-RHJO3QDO.js} +105 -6
  28. package/dist/dev/locales/ca-ES-RHJO3QDO.js.map +7 -0
  29. package/dist/dev/locales/{cs-CZ-W5AHZB5H.js → cs-CZ-ZRSAO3BA.js} +104 -5
  30. package/dist/dev/locales/cs-CZ-ZRSAO3BA.js.map +7 -0
  31. package/dist/dev/locales/{da-DK-ITTM6YM4.js → da-DK-OAB6DEJX.js} +103 -4
  32. package/dist/dev/locales/da-DK-OAB6DEJX.js.map +7 -0
  33. package/dist/dev/locales/{de-CH-OAWPDQFJ.js → de-CH-QF7JLXTF.js} +181 -82
  34. package/dist/dev/locales/de-CH-QF7JLXTF.js.map +7 -0
  35. package/dist/dev/locales/{de-DE-ZRDYEPMS.js → de-DE-5ZO4KOPT.js} +175 -76
  36. package/dist/dev/locales/de-DE-5ZO4KOPT.js.map +7 -0
  37. package/dist/dev/locales/{el-GR-QXASZLPE.js → el-GR-F74ZSUEO.js} +105 -6
  38. package/dist/dev/locales/el-GR-F74ZSUEO.js.map +7 -0
  39. package/dist/dev/locales/{en-RTISGYJB.js → en-JNOPSYVP.js} +6 -2
  40. package/dist/dev/locales/{es-ES-VLQBB7FJ.js → es-ES-3B3IENPS.js} +162 -63
  41. package/dist/dev/locales/es-ES-3B3IENPS.js.map +7 -0
  42. package/dist/dev/locales/{eu-ES-TF2DGTZU.js → eu-ES-NH447TVU.js} +221 -122
  43. package/dist/dev/locales/eu-ES-NH447TVU.js.map +7 -0
  44. package/dist/dev/locales/{fa-IR-ITKFQ7QV.js → fa-IR-GHKV6Q2J.js} +110 -11
  45. package/dist/dev/locales/fa-IR-GHKV6Q2J.js.map +7 -0
  46. package/dist/dev/locales/{fi-FI-UWZRVXFI.js → fi-FI-ZXSYWCC4.js} +104 -5
  47. package/dist/dev/locales/fi-FI-ZXSYWCC4.js.map +7 -0
  48. package/dist/dev/locales/{fr-FR-A72LKGCO.js → fr-FR-RJSOSEYS.js} +105 -6
  49. package/dist/dev/locales/fr-FR-RJSOSEYS.js.map +7 -0
  50. package/dist/dev/locales/{gl-ES-2QCVIBFP.js → gl-ES-NAUVMVFY.js} +104 -5
  51. package/dist/dev/locales/gl-ES-NAUVMVFY.js.map +7 -0
  52. package/dist/dev/locales/{he-IL-WJNUHU26.js → he-IL-JBKWWR75.js} +162 -63
  53. package/dist/dev/locales/he-IL-JBKWWR75.js.map +7 -0
  54. package/dist/dev/locales/{hi-IN-XGMO235V.js → hi-IN-SD773MVZ.js} +113 -14
  55. package/dist/dev/locales/hi-IN-SD773MVZ.js.map +7 -0
  56. package/dist/dev/locales/{hu-HU-37FDQFIS.js → hu-HU-OTA7GOAV.js} +193 -94
  57. package/dist/dev/locales/hu-HU-OTA7GOAV.js.map +7 -0
  58. package/dist/dev/locales/{id-ID-EJIDCO4E.js → id-ID-2JAZWVTQ.js} +155 -56
  59. package/dist/dev/locales/id-ID-2JAZWVTQ.js.map +7 -0
  60. package/dist/dev/locales/{it-IT-X34PIOJ2.js → it-IT-GHWUAT77.js} +105 -6
  61. package/dist/dev/locales/it-IT-GHWUAT77.js.map +7 -0
  62. package/dist/dev/locales/{ja-JP-37FC23PR.js → ja-JP-YMGRGBPS.js} +207 -108
  63. package/dist/dev/locales/ja-JP-YMGRGBPS.js.map +7 -0
  64. package/dist/dev/locales/{kaa-7ZYDFVKA.js → kaa-RRE7XUCW.js} +103 -4
  65. package/dist/dev/locales/kaa-RRE7XUCW.js.map +7 -0
  66. package/dist/dev/locales/{kab-KAB-MILWXBA6.js → kab-KAB-ZCYVOJU4.js} +104 -5
  67. package/dist/dev/locales/kab-KAB-ZCYVOJU4.js.map +7 -0
  68. package/dist/dev/locales/{kk-KZ-7BWTPIAV.js → kk-KZ-TO6XEFJC.js} +103 -4
  69. package/dist/dev/locales/kk-KZ-TO6XEFJC.js.map +7 -0
  70. package/dist/dev/locales/{km-KH-BV4P2KSZ.js → km-KH-3HTDL5HB.js} +104 -5
  71. package/dist/dev/locales/km-KH-3HTDL5HB.js.map +7 -0
  72. package/dist/dev/locales/{ko-KR-TSXE5P7B.js → ko-KR-O4L4O7L6.js} +184 -85
  73. package/dist/dev/locales/ko-KR-O4L4O7L6.js.map +7 -0
  74. package/dist/dev/locales/{ku-TR-ASSXNN3U.js → ku-TR-AFJWDY67.js} +104 -5
  75. package/dist/dev/locales/ku-TR-AFJWDY67.js.map +7 -0
  76. package/dist/dev/locales/{lt-LT-G7RZYQQU.js → lt-LT-7QOT2VDQ.js} +103 -4
  77. package/dist/dev/locales/lt-LT-7QOT2VDQ.js.map +7 -0
  78. package/dist/dev/locales/{lv-LV-DXNPBJZU.js → lv-LV-WV6C4NYF.js} +104 -5
  79. package/dist/dev/locales/lv-LV-WV6C4NYF.js.map +7 -0
  80. package/dist/dev/locales/{mr-IN-7F2ZCTCF.js → mr-IN-3TLYWOEI.js} +106 -7
  81. package/dist/dev/locales/mr-IN-3TLYWOEI.js.map +7 -0
  82. package/dist/dev/locales/{my-MM-NBI3KQGW.js → my-MM-NNL2QJT3.js} +103 -4
  83. package/dist/dev/locales/my-MM-NNL2QJT3.js.map +7 -0
  84. package/dist/dev/locales/{nb-NO-4DCTQT6L.js → nb-NO-PG3XLMEV.js} +105 -6
  85. package/dist/dev/locales/nb-NO-PG3XLMEV.js.map +7 -0
  86. package/dist/dev/locales/{nl-NL-XGZJ7V2V.js → nl-NL-MMOYEKKQ.js} +109 -10
  87. package/dist/dev/locales/nl-NL-MMOYEKKQ.js.map +7 -0
  88. package/dist/dev/locales/{nn-NO-FR534JV5.js → nn-NO-AAC2I2YX.js} +103 -4
  89. package/dist/dev/locales/nn-NO-AAC2I2YX.js.map +7 -0
  90. package/dist/dev/locales/{oc-FR-YQCIKZIK.js → oc-FR-SR6MFB4N.js} +105 -6
  91. package/dist/dev/locales/oc-FR-SR6MFB4N.js.map +7 -0
  92. package/dist/dev/locales/{pa-IN-UM43JGD2.js → pa-IN-ADGMQLQI.js} +104 -5
  93. package/dist/dev/locales/pa-IN-ADGMQLQI.js.map +7 -0
  94. package/dist/dev/locales/{percentages-OGWD7R2K.js → percentages-DKKGPYTW.js} +2 -2
  95. package/dist/dev/locales/{pl-PL-2UGKA6HK.js → pl-PL-FNIPTMVP.js} +105 -6
  96. package/dist/dev/locales/pl-PL-FNIPTMVP.js.map +7 -0
  97. package/dist/dev/locales/{pt-BR-H23QFYE3.js → pt-BR-67FMCDNE.js} +154 -55
  98. package/dist/dev/locales/pt-BR-67FMCDNE.js.map +7 -0
  99. package/dist/dev/locales/{pt-PT-RHKJH5I5.js → pt-PT-4G3GI4SF.js} +153 -54
  100. package/dist/dev/locales/pt-PT-4G3GI4SF.js.map +7 -0
  101. package/dist/dev/locales/{ro-RO-IIFONL3T.js → ro-RO-CUZFN555.js} +108 -9
  102. package/dist/dev/locales/ro-RO-CUZFN555.js.map +7 -0
  103. package/dist/dev/locales/{ru-RU-QEP6D7GK.js → ru-RU-4GHINTII.js} +107 -8
  104. package/dist/dev/locales/ru-RU-4GHINTII.js.map +7 -0
  105. package/dist/dev/locales/{si-LK-LZYJQLHF.js → si-LK-SSNT7T4A.js} +105 -6
  106. package/dist/dev/locales/si-LK-SSNT7T4A.js.map +7 -0
  107. package/dist/dev/locales/{sk-SK-RWC6UWGY.js → sk-SK-J7TKZQEH.js} +105 -6
  108. package/dist/dev/locales/sk-SK-J7TKZQEH.js.map +7 -0
  109. package/dist/dev/locales/{sl-SI-QJT2CAUO.js → sl-SI-SIBF67NE.js} +105 -6
  110. package/dist/dev/locales/sl-SI-SIBF67NE.js.map +7 -0
  111. package/dist/dev/locales/{sv-SE-3MAT3NDX.js → sv-SE-YTR46NVM.js} +149 -50
  112. package/dist/dev/locales/sv-SE-YTR46NVM.js.map +7 -0
  113. package/dist/dev/locales/{ta-IN-J7XOYF2T.js → ta-IN-7AW6CTGA.js} +103 -4
  114. package/dist/dev/locales/ta-IN-7AW6CTGA.js.map +7 -0
  115. package/dist/dev/locales/{th-TH-2OI52EOQ.js → th-TH-DTLYJYKV.js} +134 -35
  116. package/dist/dev/locales/th-TH-DTLYJYKV.js.map +7 -0
  117. package/dist/dev/locales/{tr-TR-G7TAUHUI.js → tr-TR-UDQGNXAG.js} +145 -46
  118. package/dist/dev/locales/tr-TR-UDQGNXAG.js.map +7 -0
  119. package/dist/dev/locales/{uk-UA-IVSVBJIG.js → uk-UA-25HL2NCU.js} +126 -27
  120. package/dist/dev/locales/uk-UA-25HL2NCU.js.map +7 -0
  121. package/dist/dev/locales/{uz-UZ-KCVDUVDE.js → uz-UZ-OPSBAY4H.js} +103 -4
  122. package/dist/dev/locales/uz-UZ-OPSBAY4H.js.map +7 -0
  123. package/dist/dev/locales/{vi-VN-KBZAVWP5.js → vi-VN-DK367UGA.js} +103 -4
  124. package/dist/dev/locales/vi-VN-DK367UGA.js.map +7 -0
  125. package/dist/dev/locales/{zh-CN-IS26RG2D.js → zh-CN-QCVKNWUH.js} +106 -7
  126. package/dist/dev/locales/zh-CN-QCVKNWUH.js.map +7 -0
  127. package/dist/dev/locales/{zh-HK-KBWQ6SJC.js → zh-HK-WFGYHWPG.js} +103 -4
  128. package/dist/dev/locales/zh-HK-WFGYHWPG.js.map +7 -0
  129. package/dist/dev/locales/{zh-TW-JKJWJQ4J.js → zh-TW-WHQS4ZSD.js} +151 -52
  130. package/dist/dev/locales/zh-TW-WHQS4ZSD.js.map +7 -0
  131. package/dist/dev/subset-shared.chunk.js +1 -1
  132. package/dist/dev/subset-worker.chunk.js +1 -1
  133. package/dist/prod/chunk-5XKZK2GL.js +1 -0
  134. package/dist/prod/chunk-6XMTGF46.js +34 -0
  135. package/dist/prod/chunk-7L3NUBYQ.js +12 -0
  136. package/dist/prod/{chunk-GTEFJJHD.js → chunk-FUN3GFKR.js} +1 -1
  137. package/dist/prod/components/TTDDialog/CodeMirrorEditor-T6RKT6RA.js +1 -0
  138. package/dist/prod/data/image-UAXVGXRE.js +1 -0
  139. package/dist/prod/index.css +1 -1
  140. package/dist/prod/index.js +65 -89
  141. package/dist/prod/locales/ar-SA-5WIASEJP.js +10 -0
  142. package/dist/prod/locales/az-AZ-V5EUQD6C.js +1 -0
  143. package/dist/prod/locales/bg-BG-EXASCMTR.js +5 -0
  144. package/dist/prod/locales/bn-BD-U4SYNFCO.js +3 -0
  145. package/dist/prod/locales/bn-IN-HKDJIITE.js +3 -0
  146. package/dist/prod/locales/ca-ES-2KGUU5XB.js +8 -0
  147. package/dist/prod/locales/cs-CZ-VUCGPRML.js +7 -0
  148. package/dist/prod/locales/da-DK-NNDP2IVP.js +2 -0
  149. package/dist/prod/locales/de-CH-I7RAVIZN.js +11 -0
  150. package/dist/prod/locales/de-DE-WBQ3DQLR.js +11 -0
  151. package/dist/prod/locales/el-GR-TYQHVGXW.js +7 -0
  152. package/dist/prod/locales/en-E6R7JWZO.js +1 -0
  153. package/dist/prod/locales/es-ES-JEUOREKJ.js +12 -0
  154. package/dist/prod/locales/eu-ES-SO5DEEAN.js +8 -0
  155. package/dist/prod/locales/fa-IR-FIYUE2GQ.js +9 -0
  156. package/dist/prod/locales/fi-FI-REAEF6HQ.js +6 -0
  157. package/dist/prod/locales/fr-FR-SUCL7J6B.js +12 -0
  158. package/dist/prod/locales/gl-ES-KHCSOGVH.js +6 -0
  159. package/dist/prod/locales/he-IL-JYXVXV2Q.js +9 -0
  160. package/dist/prod/locales/hi-IN-BU52H3BO.js +3 -0
  161. package/dist/prod/locales/hu-HU-OWADXDQ3.js +3 -0
  162. package/dist/prod/locales/id-ID-EOMR5R3I.js +8 -0
  163. package/dist/prod/locales/it-IT-FC2VTM3L.js +12 -0
  164. package/dist/prod/locales/ja-JP-JBNTKYP4.js +12 -0
  165. package/dist/prod/locales/kaa-TC3VIB7V.js +1 -0
  166. package/dist/prod/locales/kab-KAB-UOUDSQKM.js +4 -0
  167. package/dist/prod/locales/kk-KZ-P5H2X7YS.js +1 -0
  168. package/dist/prod/locales/km-KH-IHMV2US7.js +7 -0
  169. package/dist/prod/locales/ko-KR-ZTMANIDF.js +5 -0
  170. package/dist/prod/locales/ku-TR-GPJTRB5G.js +6 -0
  171. package/dist/prod/locales/lt-LT-V3XDOK3P.js +3 -0
  172. package/dist/prod/locales/lv-LV-DVQ3FADO.js +4 -0
  173. package/dist/prod/locales/mr-IN-VZ6HH5FE.js +9 -0
  174. package/dist/prod/locales/my-MM-XYKWHRK6.js +1 -0
  175. package/dist/prod/locales/nb-NO-UNO2GGZJ.js +8 -0
  176. package/dist/prod/locales/nl-NL-76EFHT4P.js +13 -0
  177. package/dist/prod/locales/nn-NO-CFKD7ABE.js +4 -0
  178. package/dist/prod/locales/oc-FR-YBJTCJ3J.js +4 -0
  179. package/dist/prod/locales/pa-IN-SNOXSMRV.js +4 -0
  180. package/dist/prod/locales/percentages-Q7USCRWZ.js +1 -0
  181. package/dist/prod/locales/pl-PL-BSY6YFZ3.js +12 -0
  182. package/dist/prod/locales/pt-BR-CZDV62R3.js +10 -0
  183. package/dist/prod/locales/pt-PT-JO57XJJW.js +12 -0
  184. package/dist/prod/locales/ro-RO-UZ5ICYYN.js +12 -0
  185. package/dist/prod/locales/ru-RU-AN7JPREC.js +10 -0
  186. package/dist/prod/locales/si-LK-7CBLD6QQ.js +1 -0
  187. package/dist/prod/locales/sk-SK-SWR6DKBI.js +7 -0
  188. package/dist/prod/locales/sl-SI-JRML4FIH.js +6 -0
  189. package/dist/prod/locales/sv-SE-4ZPKFFXF.js +12 -0
  190. package/dist/prod/locales/ta-IN-V6NHHU6Z.js +6 -0
  191. package/dist/prod/locales/th-TH-P7CTMGDK.js +1 -0
  192. package/dist/prod/locales/tr-TR-GUFYG22B.js +4 -0
  193. package/dist/prod/locales/uk-UA-K6SV5NFQ.js +6 -0
  194. package/dist/prod/locales/uz-UZ-TVKTZO2G.js +1 -0
  195. package/dist/prod/locales/vi-VN-7FKFXJNO.js +7 -0
  196. package/dist/prod/locales/zh-CN-AOKVLNNK.js +11 -0
  197. package/dist/prod/locales/zh-HK-CDKPF5DC.js +1 -0
  198. package/dist/prod/locales/zh-TW-ZVGYESGW.js +13 -0
  199. package/dist/prod/subset-shared.chunk.js +1 -1
  200. package/dist/prod/subset-worker.chunk.js +1 -1
  201. package/dist/types/common/debug.d.ts +21 -0
  202. package/dist/types/common/src/appEventBus.d.ts +27 -0
  203. package/dist/types/common/src/colors.d.ts +16 -2
  204. package/dist/types/common/src/constants.d.ts +16 -7
  205. package/dist/types/common/src/index.d.ts +3 -0
  206. package/dist/types/common/src/keys.d.ts +2 -0
  207. package/dist/types/common/src/points.d.ts +1 -1
  208. package/dist/types/common/src/utils.d.ts +5 -50
  209. package/dist/types/common/src/versionedSnapshotStore.d.ts +17 -0
  210. package/dist/types/element/src/Scene.d.ts +8 -4
  211. package/dist/types/element/src/align.d.ts +2 -2
  212. package/dist/types/element/src/arrowEndpointText.d.ts +49 -0
  213. package/dist/types/element/src/arrowheads.d.ts +3 -0
  214. package/dist/types/element/src/arrows/focus.d.ts +30 -0
  215. package/dist/types/element/src/arrows/helpers.d.ts +5 -0
  216. package/dist/types/element/src/binding.d.ts +29 -15
  217. package/dist/types/element/src/bounds.d.ts +23 -8
  218. package/dist/types/element/src/bucketFill.d.ts +110 -0
  219. package/dist/types/element/src/collision.d.ts +4 -3
  220. package/dist/types/element/src/comparisons.d.ts +5 -4
  221. package/dist/types/element/src/convertToShape.d.ts +23 -0
  222. package/dist/types/element/src/distribute.d.ts +3 -2
  223. package/dist/types/element/src/dragElements.d.ts +27 -0
  224. package/dist/types/element/src/duplicate.d.ts +4 -3
  225. package/dist/types/element/src/elbowArrow.d.ts +2 -0
  226. package/dist/types/element/src/embeddable.d.ts +2 -2
  227. package/dist/types/element/src/flowchart.d.ts +7 -7
  228. package/dist/types/element/src/fractionalIndex.d.ts +2 -2
  229. package/dist/types/element/src/frame.d.ts +9 -8
  230. package/dist/types/element/src/groups.d.ts +9 -9
  231. package/dist/types/element/src/index.d.ts +7 -1
  232. package/dist/types/element/src/linearElementEditor.d.ts +22 -10
  233. package/dist/types/element/src/mutateElement.d.ts +2 -0
  234. package/dist/types/element/src/newElement.d.ts +14 -0
  235. package/dist/types/element/src/renderElement.d.ts +0 -3
  236. package/dist/types/element/src/resizeElements.d.ts +2 -2
  237. package/dist/types/element/src/selection.d.ts +12 -8
  238. package/dist/types/element/src/shape.d.ts +13 -1
  239. package/dist/types/element/src/sortElements.d.ts +10 -0
  240. package/dist/types/element/src/textElement.d.ts +13 -10
  241. package/dist/types/element/src/textWrapping.d.ts +26 -0
  242. package/dist/types/element/src/transform.d.ts +2 -2
  243. package/dist/types/element/src/typeChecks.d.ts +26 -25
  244. package/dist/types/element/src/types.d.ts +13 -3
  245. package/dist/types/element/src/utils.d.ts +6 -4
  246. package/dist/types/element/src/zindex.d.ts +2 -2
  247. package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +83 -56
  248. package/dist/types/excalidraw/actions/actionAlign.d.ts +6 -6
  249. package/dist/types/excalidraw/actions/actionBoundText.d.ts +57 -39
  250. package/dist/types/excalidraw/actions/actionCanvas.d.ts +355 -811
  251. package/dist/types/excalidraw/actions/actionClipboard.d.ts +56 -38
  252. package/dist/types/excalidraw/actions/actionCropEditor.d.ts +28 -19
  253. package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +89 -59
  254. package/dist/types/excalidraw/actions/actionDeselect.d.ts +165 -0
  255. package/dist/types/excalidraw/actions/actionDistribute.d.ts +2 -3
  256. package/dist/types/excalidraw/actions/actionElementLink.d.ts +24 -19
  257. package/dist/types/excalidraw/actions/actionElementLock.d.ts +57 -39
  258. package/dist/types/excalidraw/actions/actionExport.d.ts +152 -409
  259. package/dist/types/excalidraw/actions/actionFrame.d.ts +95 -240
  260. package/dist/types/excalidraw/actions/actionGroup.d.ts +72 -54
  261. package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +34 -21
  262. package/dist/types/excalidraw/actions/actionLink.d.ts +29 -20
  263. package/dist/types/excalidraw/actions/actionMenu.d.ts +24 -19
  264. package/dist/types/excalidraw/actions/actionProperties.d.ts +84 -54
  265. package/dist/types/excalidraw/actions/actionSelectAll.d.ts +33 -24
  266. package/dist/types/excalidraw/actions/actionStyles.d.ts +28 -18
  267. package/dist/types/excalidraw/actions/actionTextAutoResize.d.ts +3 -3
  268. package/dist/types/excalidraw/actions/{actionEmbeddable.d.ts → actionToggleArrowBinding.d.ts} +43 -33
  269. package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +32 -24
  270. package/dist/types/excalidraw/actions/actionToggleMidpointSnapping.d.ts +181 -0
  271. package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +29 -20
  272. package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +28 -24
  273. package/dist/types/excalidraw/actions/actionToggleShapeSwitch.d.ts +1 -1
  274. package/dist/types/excalidraw/actions/actionToggleStats.d.ts +29 -20
  275. package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +30 -21
  276. package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +29 -20
  277. package/dist/types/excalidraw/actions/index.d.ts +4 -2
  278. package/dist/types/excalidraw/actions/manager.d.ts +1 -0
  279. package/dist/types/excalidraw/actions/shortcuts.d.ts +1 -1
  280. package/dist/types/excalidraw/actions/types.d.ts +8 -4
  281. package/dist/types/excalidraw/{animated-trail.d.ts → animatedTrail.d.ts} +4 -3
  282. package/dist/types/excalidraw/appState.d.ts +33 -24
  283. package/dist/types/excalidraw/charts/charts.bar.d.ts +2 -0
  284. package/dist/types/excalidraw/charts/charts.constants.d.ts +48 -0
  285. package/dist/types/excalidraw/charts/charts.helpers.d.ts +32 -0
  286. package/dist/types/excalidraw/charts/charts.line.d.ts +2 -0
  287. package/dist/types/excalidraw/charts/charts.parse.d.ts +10 -0
  288. package/dist/types/excalidraw/charts/charts.radar.d.ts +2 -0
  289. package/dist/types/excalidraw/charts/charts.types.d.ts +18 -0
  290. package/dist/types/excalidraw/charts/index.d.ts +7 -0
  291. package/dist/types/excalidraw/clipboard.d.ts +6 -7
  292. package/dist/types/excalidraw/components/Actions.d.ts +17 -12
  293. package/dist/types/excalidraw/components/ActiveConfirmDialog.d.ts +1 -1
  294. package/dist/types/excalidraw/components/App.arrowText.d.ts +72 -0
  295. package/dist/types/excalidraw/components/App.bucketFill.d.ts +48 -0
  296. package/dist/types/excalidraw/components/App.cursor.d.ts +30 -0
  297. package/dist/types/excalidraw/components/App.d.ts +418 -85
  298. package/dist/types/excalidraw/components/App.drawshape.d.ts +55 -0
  299. package/dist/types/excalidraw/components/App.flowchart.d.ts +21 -0
  300. package/dist/types/excalidraw/components/App.viewport.d.ts +73 -0
  301. package/dist/types/excalidraw/components/AppStateObserver.d.ts +37 -0
  302. package/dist/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +9 -3
  303. package/dist/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +3 -1
  304. package/dist/types/excalidraw/components/ColorPicker/Picker.d.ts +3 -1
  305. package/dist/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +9 -2
  306. package/dist/types/excalidraw/components/ColorPicker/ShadeList.d.ts +4 -2
  307. package/dist/types/excalidraw/components/ColorPicker/TopPicks.d.ts +8 -1
  308. package/dist/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +1 -1
  309. package/dist/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +2 -1
  310. package/dist/types/excalidraw/components/ColorPicker/topPicksDnD.d.ts +31 -0
  311. package/dist/types/excalidraw/components/CommandPalette/defaultCommandPaletteItems.d.ts +1 -2
  312. package/dist/types/excalidraw/components/CommandPalette/types.d.ts +1 -1
  313. package/dist/types/excalidraw/components/ConvertElementTypePopup.d.ts +2 -2
  314. package/dist/types/excalidraw/components/CursorHint.d.ts +46 -0
  315. package/dist/types/excalidraw/components/EyeDropper.d.ts +1 -1
  316. package/dist/types/excalidraw/components/{ToolButton.d.ts → IconButton.d.ts} +16 -19
  317. package/dist/types/excalidraw/components/IconPicker.d.ts +14 -9
  318. package/dist/types/excalidraw/components/Island.d.ts +7 -0
  319. package/dist/types/excalidraw/components/LaserPointerButton.d.ts +2 -4
  320. package/dist/types/excalidraw/components/LayerUI.d.ts +5 -3
  321. package/dist/types/excalidraw/components/LibraryMenu.d.ts +1 -1
  322. package/dist/types/excalidraw/components/LockButton.d.ts +3 -4
  323. package/dist/types/excalidraw/components/MagicButton.d.ts +0 -2
  324. package/dist/types/excalidraw/components/MobileMenu.d.ts +4 -4
  325. package/dist/types/excalidraw/components/MobileToolbar.d.ts +9 -0
  326. package/dist/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmState.d.ts +1 -1
  327. package/dist/types/excalidraw/components/PasteChartDialog.d.ts +4 -5
  328. package/dist/types/excalidraw/components/PenModeButton.d.ts +2 -5
  329. package/dist/types/excalidraw/components/Popover.d.ts +1 -3
  330. package/dist/types/excalidraw/components/PropertiesPopover.d.ts +1 -1
  331. package/dist/types/excalidraw/components/{ButtonIcon.d.ts → RadioButton.d.ts} +2 -5
  332. package/dist/types/excalidraw/components/Range.d.ts +10 -4
  333. package/dist/types/excalidraw/components/SVGLayer.d.ts +1 -1
  334. package/dist/types/excalidraw/components/SearchMenu.d.ts +1 -1
  335. package/dist/types/excalidraw/components/Sidebar/Sidebar.d.ts +1 -1
  336. package/dist/types/excalidraw/components/Stats/Angle.d.ts +2 -2
  337. package/dist/types/excalidraw/components/Stats/Dimension.d.ts +2 -2
  338. package/dist/types/excalidraw/components/Stats/DragInput.d.ts +2 -2
  339. package/dist/types/excalidraw/components/Stats/MultiAngle.d.ts +2 -2
  340. package/dist/types/excalidraw/components/Stats/MultiDimension.d.ts +2 -2
  341. package/dist/types/excalidraw/components/Stats/MultiPosition.d.ts +2 -2
  342. package/dist/types/excalidraw/components/Stats/Position.d.ts +3 -3
  343. package/dist/types/excalidraw/components/Stats/utils.d.ts +1 -1
  344. package/dist/types/excalidraw/components/TTDDialog/Chat/ChatInterface.d.ts +2 -6
  345. package/dist/types/excalidraw/components/TTDDialog/Chat/TTDChatPanel.d.ts +2 -1
  346. package/dist/types/excalidraw/components/TTDDialog/CodeMirrorEditor.d.ts +11 -0
  347. package/dist/types/excalidraw/components/TTDDialog/TTDContext.d.ts +4 -4
  348. package/dist/types/excalidraw/components/TTDDialog/TTDDialog.d.ts +11 -7
  349. package/dist/types/excalidraw/components/TTDDialog/TTDDialogInput.d.ts +3 -3
  350. package/dist/types/excalidraw/components/TTDDialog/TTDDialogOutput.d.ts +4 -1
  351. package/dist/types/excalidraw/components/TTDDialog/TTDWelcomeMessage.d.ts +1 -0
  352. package/dist/types/excalidraw/components/TTDDialog/TextToDiagram.d.ts +2 -1
  353. package/dist/types/excalidraw/components/TTDDialog/mermaid-lang-lite.d.ts +2 -0
  354. package/dist/types/excalidraw/components/TTDDialog/types.d.ts +4 -0
  355. package/dist/types/excalidraw/components/TTDDialog/useTTDChatStorage.d.ts +3 -3
  356. package/dist/types/excalidraw/components/TTDDialog/utils/TTDStreamFetch.d.ts +2 -1
  357. package/dist/types/excalidraw/components/TTDDialog/utils/mermaidAutoFix.d.ts +1 -0
  358. package/dist/types/excalidraw/components/TTDDialog/utils/mermaidError.d.ts +10 -0
  359. package/dist/types/excalidraw/components/Toast.d.ts +8 -4
  360. package/dist/types/excalidraw/components/ToolPopover.d.ts +3 -6
  361. package/dist/types/excalidraw/components/Toolbar.d.ts +11 -0
  362. package/dist/types/excalidraw/components/Tools.d.ts +146 -0
  363. package/dist/types/excalidraw/components/UserList.d.ts +3 -2
  364. package/dist/types/excalidraw/components/ViewportStatusFrame/ViewportStatusFrame.d.ts +11 -0
  365. package/dist/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +4 -1
  366. package/dist/types/excalidraw/components/canvases/NewElementCanvas.d.ts +1 -0
  367. package/dist/types/excalidraw/components/canvases/StaticCanvas.d.ts +1 -1
  368. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenu.d.ts +30 -16
  369. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuContent.d.ts +3 -2
  370. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItem.d.ts +11 -12
  371. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemCheckbox.d.ts +5 -0
  372. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContent.d.ts +2 -1
  373. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContentRadio.d.ts +2 -1
  374. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuSub.d.ts +23 -0
  375. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuSubContent.d.ts +8 -0
  376. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuSubTrigger.d.ts +12 -0
  377. package/dist/types/excalidraw/components/dropdownMenu/common.d.ts +1 -1
  378. package/dist/types/excalidraw/components/dropdownMenu/dropdownMenuUtils.d.ts +2 -0
  379. package/dist/types/excalidraw/components/footer/Footer.d.ts +3 -1
  380. package/dist/types/excalidraw/components/hyperlink/helpers.d.ts +2 -2
  381. package/dist/types/excalidraw/components/icons.d.ts +29 -10
  382. package/dist/types/excalidraw/components/main-menu/DefaultItems.d.ts +24 -3
  383. package/dist/types/excalidraw/components/main-menu/MainMenu.d.ts +23 -14
  384. package/dist/types/excalidraw/components/positionElementBesideCursor.d.ts +26 -0
  385. package/dist/types/excalidraw/components/shapeActionPredicates.d.ts +39 -0
  386. package/dist/types/excalidraw/data/blob.d.ts +179 -160
  387. package/dist/types/excalidraw/data/filesystem.d.ts +3 -5
  388. package/dist/types/excalidraw/data/index.d.ts +6 -7
  389. package/dist/types/excalidraw/data/json.d.ts +98 -80
  390. package/dist/types/excalidraw/data/library.d.ts +1 -1
  391. package/dist/types/excalidraw/data/resave.d.ts +7 -2
  392. package/dist/types/excalidraw/data/restore.d.ts +1 -1
  393. package/dist/types/excalidraw/drawShapeTrail.d.ts +16 -0
  394. package/dist/types/excalidraw/eraser/index.d.ts +2 -3
  395. package/dist/types/excalidraw/hooks/useAppStateValue.d.ts +29 -0
  396. package/dist/types/excalidraw/hooks/useLibraryItemSvg.d.ts +1 -1
  397. package/dist/types/excalidraw/index.d.ts +35 -9
  398. package/dist/types/excalidraw/{laser-trails.d.ts → laserTrails.d.ts} +5 -7
  399. package/dist/types/excalidraw/lasso/index.d.ts +2 -3
  400. package/dist/types/excalidraw/lasso/utils.d.ts +2 -0
  401. package/dist/types/excalidraw/renderer/animation.d.ts +5 -1
  402. package/dist/types/excalidraw/renderer/interactiveScene.d.ts +1 -3
  403. package/dist/types/excalidraw/scene/Renderer.d.ts +426 -19
  404. package/dist/types/excalidraw/scene/export.d.ts +3 -3
  405. package/dist/types/excalidraw/scene/index.d.ts +2 -2
  406. package/dist/types/excalidraw/scene/types.d.ts +4 -4
  407. package/dist/types/excalidraw/snapping.d.ts +7 -7
  408. package/dist/types/excalidraw/textAutoResizeHandle.d.ts +15 -0
  409. package/dist/types/excalidraw/types.d.ts +512 -77
  410. package/dist/types/excalidraw/viewport.d.ts +275 -0
  411. package/dist/types/excalidraw/wysiwyg/textWysiwyg.d.ts +6 -3
  412. package/dist/types/fractional-indexing/src/index.d.ts +29 -0
  413. package/dist/types/laser-pointer/src/index.d.ts +2 -0
  414. package/dist/types/laser-pointer/src/math.d.ts +16 -0
  415. package/dist/types/laser-pointer/src/simplify.d.ts +2 -0
  416. package/dist/types/laser-pointer/src/state.d.ts +36 -0
  417. package/dist/types/math/src/constants.d.ts +0 -1
  418. package/dist/types/math/src/curve.d.ts +4 -1
  419. package/dist/types/math/src/index.d.ts +1 -0
  420. package/dist/types/math/src/pca.d.ts +79 -0
  421. package/dist/types/math/src/point.d.ts +8 -2
  422. package/dist/types/math/src/polygon.d.ts +25 -1
  423. package/dist/types/math/src/types.d.ts +25 -1
  424. package/package.json +9 -6
  425. package/dist/dev/chunk-DJHLEOOZ.js +0 -69
  426. package/dist/dev/chunk-DJHLEOOZ.js.map +0 -7
  427. package/dist/dev/chunk-KB3DXHSJ.js.map +0 -7
  428. package/dist/dev/chunk-XIXZ3HJO.js.map +0 -7
  429. package/dist/dev/locales/ar-SA-JK5MQ7TT.js.map +0 -7
  430. package/dist/dev/locales/az-AZ-2PAD62G4.js.map +0 -7
  431. package/dist/dev/locales/bg-BG-HUKVYCRK.js.map +0 -7
  432. package/dist/dev/locales/bn-BD-V2CQI46P.js.map +0 -7
  433. package/dist/dev/locales/bn-IN-MBEO4C3J.js.map +0 -7
  434. package/dist/dev/locales/ca-ES-KWEKW4C3.js.map +0 -7
  435. package/dist/dev/locales/cs-CZ-W5AHZB5H.js.map +0 -7
  436. package/dist/dev/locales/da-DK-ITTM6YM4.js.map +0 -7
  437. package/dist/dev/locales/de-CH-OAWPDQFJ.js.map +0 -7
  438. package/dist/dev/locales/de-DE-ZRDYEPMS.js.map +0 -7
  439. package/dist/dev/locales/el-GR-QXASZLPE.js.map +0 -7
  440. package/dist/dev/locales/es-ES-VLQBB7FJ.js.map +0 -7
  441. package/dist/dev/locales/eu-ES-TF2DGTZU.js.map +0 -7
  442. package/dist/dev/locales/fa-IR-ITKFQ7QV.js.map +0 -7
  443. package/dist/dev/locales/fi-FI-UWZRVXFI.js.map +0 -7
  444. package/dist/dev/locales/fr-FR-A72LKGCO.js.map +0 -7
  445. package/dist/dev/locales/gl-ES-2QCVIBFP.js.map +0 -7
  446. package/dist/dev/locales/he-IL-WJNUHU26.js.map +0 -7
  447. package/dist/dev/locales/hi-IN-XGMO235V.js.map +0 -7
  448. package/dist/dev/locales/hu-HU-37FDQFIS.js.map +0 -7
  449. package/dist/dev/locales/id-ID-EJIDCO4E.js.map +0 -7
  450. package/dist/dev/locales/it-IT-X34PIOJ2.js.map +0 -7
  451. package/dist/dev/locales/ja-JP-37FC23PR.js.map +0 -7
  452. package/dist/dev/locales/kaa-7ZYDFVKA.js.map +0 -7
  453. package/dist/dev/locales/kab-KAB-MILWXBA6.js.map +0 -7
  454. package/dist/dev/locales/kk-KZ-7BWTPIAV.js.map +0 -7
  455. package/dist/dev/locales/km-KH-BV4P2KSZ.js.map +0 -7
  456. package/dist/dev/locales/ko-KR-TSXE5P7B.js.map +0 -7
  457. package/dist/dev/locales/ku-TR-ASSXNN3U.js.map +0 -7
  458. package/dist/dev/locales/lt-LT-G7RZYQQU.js.map +0 -7
  459. package/dist/dev/locales/lv-LV-DXNPBJZU.js.map +0 -7
  460. package/dist/dev/locales/mr-IN-7F2ZCTCF.js.map +0 -7
  461. package/dist/dev/locales/my-MM-NBI3KQGW.js.map +0 -7
  462. package/dist/dev/locales/nb-NO-4DCTQT6L.js.map +0 -7
  463. package/dist/dev/locales/nl-NL-XGZJ7V2V.js.map +0 -7
  464. package/dist/dev/locales/nn-NO-FR534JV5.js.map +0 -7
  465. package/dist/dev/locales/oc-FR-YQCIKZIK.js.map +0 -7
  466. package/dist/dev/locales/pa-IN-UM43JGD2.js.map +0 -7
  467. package/dist/dev/locales/pl-PL-2UGKA6HK.js.map +0 -7
  468. package/dist/dev/locales/pt-BR-H23QFYE3.js.map +0 -7
  469. package/dist/dev/locales/pt-PT-RHKJH5I5.js.map +0 -7
  470. package/dist/dev/locales/ro-RO-IIFONL3T.js.map +0 -7
  471. package/dist/dev/locales/ru-RU-QEP6D7GK.js.map +0 -7
  472. package/dist/dev/locales/si-LK-LZYJQLHF.js.map +0 -7
  473. package/dist/dev/locales/sk-SK-RWC6UWGY.js.map +0 -7
  474. package/dist/dev/locales/sl-SI-QJT2CAUO.js.map +0 -7
  475. package/dist/dev/locales/sv-SE-3MAT3NDX.js.map +0 -7
  476. package/dist/dev/locales/ta-IN-J7XOYF2T.js.map +0 -7
  477. package/dist/dev/locales/th-TH-2OI52EOQ.js.map +0 -7
  478. package/dist/dev/locales/tr-TR-G7TAUHUI.js.map +0 -7
  479. package/dist/dev/locales/uk-UA-IVSVBJIG.js.map +0 -7
  480. package/dist/dev/locales/uz-UZ-KCVDUVDE.js.map +0 -7
  481. package/dist/dev/locales/vi-VN-KBZAVWP5.js.map +0 -7
  482. package/dist/dev/locales/zh-CN-IS26RG2D.js.map +0 -7
  483. package/dist/dev/locales/zh-HK-KBWQ6SJC.js.map +0 -7
  484. package/dist/dev/locales/zh-TW-JKJWJQ4J.js.map +0 -7
  485. package/dist/prod/chunk-2INXXNZN.js +0 -12
  486. package/dist/prod/chunk-7ECCIQPE.js +0 -33
  487. package/dist/prod/chunk-AJI3LATG.js +0 -1
  488. package/dist/prod/data/image-E5KTZOPE.js +0 -1
  489. package/dist/prod/locales/ar-SA-IYHKZRSE.js +0 -8
  490. package/dist/prod/locales/az-AZ-WL5GYRHK.js +0 -1
  491. package/dist/prod/locales/bg-BG-FXZYTRPD.js +0 -5
  492. package/dist/prod/locales/bn-BD-KO6YL5G2.js +0 -3
  493. package/dist/prod/locales/bn-IN-PC6JHKYB.js +0 -3
  494. package/dist/prod/locales/ca-ES-AREX5NEO.js +0 -8
  495. package/dist/prod/locales/cs-CZ-HXAZMFYH.js +0 -7
  496. package/dist/prod/locales/da-DK-5X7ZLFU3.js +0 -2
  497. package/dist/prod/locales/de-CH-76ZNVSOF.js +0 -7
  498. package/dist/prod/locales/de-DE-G3JVZ4MQ.js +0 -7
  499. package/dist/prod/locales/el-GR-4AZTZGY6.js +0 -7
  500. package/dist/prod/locales/en-YGAMZJ7C.js +0 -1
  501. package/dist/prod/locales/es-ES-ART7BI3G.js +0 -7
  502. package/dist/prod/locales/eu-ES-BIF4XBMT.js +0 -7
  503. package/dist/prod/locales/fa-IR-D4HHKAAI.js +0 -9
  504. package/dist/prod/locales/fi-FI-O35ZY7UI.js +0 -6
  505. package/dist/prod/locales/fr-FR-XEFNCM4I.js +0 -12
  506. package/dist/prod/locales/gl-ES-U4NYM3X5.js +0 -6
  507. package/dist/prod/locales/he-IL-656ABAVQ.js +0 -8
  508. package/dist/prod/locales/hi-IN-Z55GAFFR.js +0 -3
  509. package/dist/prod/locales/hu-HU-UJ62DVIW.js +0 -3
  510. package/dist/prod/locales/id-ID-FLZFU3OO.js +0 -8
  511. package/dist/prod/locales/it-IT-GIGIGIBJ.js +0 -12
  512. package/dist/prod/locales/ja-JP-43VXGDWI.js +0 -7
  513. package/dist/prod/locales/kaa-L3IMSDYL.js +0 -1
  514. package/dist/prod/locales/kab-KAB-XKPWJLNL.js +0 -4
  515. package/dist/prod/locales/kk-KZ-SXPDDY2H.js +0 -1
  516. package/dist/prod/locales/km-KH-DOS4CPGC.js +0 -7
  517. package/dist/prod/locales/ko-KR-BGC6VCY4.js +0 -5
  518. package/dist/prod/locales/ku-TR-J7IUITIA.js +0 -6
  519. package/dist/prod/locales/lt-LT-AC3LV5KG.js +0 -3
  520. package/dist/prod/locales/lv-LV-I6AY7QG2.js +0 -4
  521. package/dist/prod/locales/mr-IN-5SP4HV5B.js +0 -9
  522. package/dist/prod/locales/my-MM-S7ECRBYZ.js +0 -1
  523. package/dist/prod/locales/nb-NO-6PNHTF4R.js +0 -8
  524. package/dist/prod/locales/nl-NL-R4C4SUIG.js +0 -13
  525. package/dist/prod/locales/nn-NO-3TFXTM7Y.js +0 -4
  526. package/dist/prod/locales/oc-FR-IK6GIE7H.js +0 -4
  527. package/dist/prod/locales/pa-IN-YAKHYJET.js +0 -4
  528. package/dist/prod/locales/percentages-OL6W367U.js +0 -1
  529. package/dist/prod/locales/pl-PL-BIY22ZWU.js +0 -12
  530. package/dist/prod/locales/pt-BR-Q23NUPD6.js +0 -6
  531. package/dist/prod/locales/pt-PT-LOPEJLPJ.js +0 -8
  532. package/dist/prod/locales/ro-RO-W3D2ZATV.js +0 -12
  533. package/dist/prod/locales/ru-RU-DCTW7QSH.js +0 -10
  534. package/dist/prod/locales/si-LK-FYRRHO3C.js +0 -1
  535. package/dist/prod/locales/sk-SK-MC7UOHQO.js +0 -7
  536. package/dist/prod/locales/sl-SI-L6B6HFY5.js +0 -6
  537. package/dist/prod/locales/sv-SE-KMY6L2BA.js +0 -8
  538. package/dist/prod/locales/ta-IN-ZQCYE2JK.js +0 -6
  539. package/dist/prod/locales/th-TH-WS7ECBAV.js +0 -1
  540. package/dist/prod/locales/tr-TR-S5FI7JRW.js +0 -4
  541. package/dist/prod/locales/uk-UA-4EZUWUSQ.js +0 -6
  542. package/dist/prod/locales/uz-UZ-OKHL6AFA.js +0 -1
  543. package/dist/prod/locales/vi-VN-K34TWHF7.js +0 -7
  544. package/dist/prod/locales/zh-CN-JE4UZWNO.js +0 -11
  545. package/dist/prod/locales/zh-HK-RM35YDXX.js +0 -1
  546. package/dist/prod/locales/zh-TW-ONGLV6Y5.js +0 -9
  547. package/dist/types/excalidraw/animation-frame-handler.d.ts +0 -16
  548. package/dist/types/excalidraw/charts.d.ts +0 -27
  549. package/dist/types/excalidraw/components/FollowMode/FollowMode.d.ts +0 -10
  550. package/dist/types/excalidraw/components/HandButton.d.ts +0 -10
  551. package/dist/types/excalidraw/components/MobileToolBar.d.ts +0 -10
  552. package/dist/types/excalidraw/components/shapes.d.ts +0 -190
  553. package/dist/types/excalidraw/cursor.d.ts +0 -5
  554. package/dist/types/excalidraw/scene/scroll.d.ts +0 -18
  555. package/dist/types/excalidraw/scene/scrollConstraints.d.ts +0 -46
  556. package/dist/types/excalidraw/scene/zoom.d.ts +0 -12
  557. package/dist/types/utils/src/bbox.d.ts +0 -9
  558. package/dist/types/utils/src/index.d.ts +0 -4
  559. package/dist/types/utils/src/withinBounds.d.ts +0 -19
  560. /package/dist/dev/{chunk-VHBP2L6P.js.map → chunk-GLSDDV5C.js.map} +0 -0
  561. /package/dist/dev/data/{image-YTAF2QAV.js.map → image-LSHTDYDI.js.map} +0 -0
  562. /package/dist/dev/locales/{en-RTISGYJB.js.map → en-JNOPSYVP.js.map} +0 -0
  563. /package/dist/dev/locales/{percentages-OGWD7R2K.js.map → percentages-DKKGPYTW.js.map} +0 -0
@@ -22,6 +22,7 @@ export declare class LinearElementEditor {
22
22
  };
23
23
  arrowStartIsInside: boolean;
24
24
  altFocusPoint: Readonly<GlobalPoint> | null;
25
+ arrowOtherEndpointInitialBinding: FixedPointBinding | null;
25
26
  }>;
26
27
  /** whether you're dragging a point */
27
28
  readonly isDragging: boolean;
@@ -33,6 +34,8 @@ export declare class LinearElementEditor {
33
34
  }>;
34
35
  readonly hoverPointIndex: number;
35
36
  readonly segmentMidPointHoveredCoords: GlobalPoint | null;
37
+ readonly hoveredFocusPointBinding: "start" | "end" | null;
38
+ readonly draggedFocusPointBinding: "start" | "end" | null;
36
39
  readonly elbowed: boolean;
37
40
  readonly customLineAngle: number | null;
38
41
  readonly isEditing: boolean;
@@ -43,18 +46,18 @@ export declare class LinearElementEditor {
43
46
  * @param id the `elementId` from the instance of this class (so that we can
44
47
  * statically guarantee this method returns an ExcalidrawLinearElement)
45
48
  */
46
- static getElement<T extends ExcalidrawLinearElement>(id: InstanceType<typeof LinearElementEditor>["elementId"], elementsMap: ElementsMap): T | null;
49
+ static getElement<T extends ExcalidrawLinearElement>(id: InstanceType<typeof LinearElementEditor>["elementId"], elementsMap: ElementsMap): NonDeleted<T> | null;
47
50
  static handleBoxSelection(event: PointerEvent, appState: AppState, setState: React.Component<any, AppState>["setState"], elementsMap: NonDeletedSceneElementsMap): false | undefined;
48
51
  static handlePointerMove(event: PointerEvent, app: AppClassProperties, scenePointerX: number, scenePointerY: number, linearElementEditor: LinearElementEditor): Pick<AppState, "suggestedBinding" | "selectedLinearElement"> | null;
49
52
  static handlePointDragging(event: PointerEvent, app: AppClassProperties, scenePointerX: number, scenePointerY: number, linearElementEditor: LinearElementEditor): Pick<AppState, "suggestedBinding" | "selectedLinearElement"> | null;
50
53
  static handlePointerUp(event: PointerEvent, editingLinearElement: LinearElementEditor, appState: AppState, scene: Scene): LinearElementEditor;
51
- static getEditorMidPoints: (element: NonDeleted<ExcalidrawLinearElement>, elementsMap: ElementsMap, appState: InteractiveCanvasAppState) => (GlobalPoint | null)[];
54
+ static getEditorMidPoints: (element: ExcalidrawLinearElement, elementsMap: ElementsMap, appState: InteractiveCanvasAppState) => (GlobalPoint | null)[];
52
55
  static getSegmentMidpointHitCoords: (linearElementEditor: LinearElementEditor, scenePointer: {
53
56
  x: number;
54
57
  y: number;
55
58
  }, appState: AppState, elementsMap: ElementsMap) => GlobalPoint | null;
56
- static isSegmentTooShort<P extends GlobalPoint | LocalPoint>(element: NonDeleted<ExcalidrawLinearElement>, startPoint: P, endPoint: P, index: number, zoom: Zoom): boolean;
57
- static getSegmentMidPoint(element: NonDeleted<ExcalidrawLinearElement>, index: number): GlobalPoint;
59
+ static isSegmentTooShort<P extends GlobalPoint | LocalPoint>(element: ExcalidrawLinearElement, startPoint: P, endPoint: P, index: number, zoom: Zoom, elementsMap: ElementsMap): boolean;
60
+ static getSegmentMidPoint(element: ExcalidrawLinearElement, index: number, elementsMap: ElementsMap): GlobalPoint;
58
61
  static getSegmentMidPointIndex(linearElementEditor: LinearElementEditor, appState: AppState, midPoint: GlobalPoint, elementsMap: ElementsMap): number;
59
62
  static handlePointerDown(event: React.PointerEvent<HTMLElement>, app: AppClassProperties, store: Store, scenePointer: {
60
63
  x: number;
@@ -67,14 +70,14 @@ export declare class LinearElementEditor {
67
70
  static arePointsEqual<Point extends LocalPoint | GlobalPoint>(point1: Point | null, point2: Point | null): boolean;
68
71
  static handlePointerMoveInEditMode(event: React.PointerEvent<HTMLCanvasElement>, scenePointerX: number, scenePointerY: number, app: AppClassProperties): LinearElementEditor | null;
69
72
  /** scene coords */
70
- static getPointGlobalCoordinates(element: NonDeleted<ExcalidrawLinearElement>, p: LocalPoint, elementsMap: ElementsMap): GlobalPoint;
73
+ static getPointGlobalCoordinates(element: ExcalidrawLinearElement, p: LocalPoint, elementsMap: ElementsMap): GlobalPoint;
71
74
  /** scene coords */
72
- static getPointsGlobalCoordinates(element: NonDeleted<ExcalidrawLinearElement>, elementsMap: ElementsMap): GlobalPoint[];
73
- static getPointAtIndexGlobalCoordinates(element: NonDeleted<ExcalidrawLinearElement>, indexMaybeFromEnd: number, // -1 for last element
75
+ static getPointsGlobalCoordinates(element: ExcalidrawLinearElement, elementsMap: ElementsMap): GlobalPoint[];
76
+ static getPointAtIndexGlobalCoordinates(element: ExcalidrawLinearElement, indexMaybeFromEnd: number, // -1 for last element
74
77
  elementsMap: ElementsMap): GlobalPoint;
75
- static pointFromAbsoluteCoords(element: NonDeleted<ExcalidrawLinearElement>, absoluteCoords: GlobalPoint, elementsMap: ElementsMap): LocalPoint;
76
- static getPointIndexUnderCursor(element: NonDeleted<ExcalidrawLinearElement>, elementsMap: ElementsMap, zoom: AppState["zoom"], x: number, y: number): number;
77
- static createPointAt(element: NonDeleted<ExcalidrawLinearElement>, elementsMap: ElementsMap, scenePointerX: number, scenePointerY: number, gridSize: NullableGridSize): LocalPoint;
78
+ static pointFromAbsoluteCoords(element: ExcalidrawLinearElement, absoluteCoords: GlobalPoint, elementsMap: ElementsMap): LocalPoint;
79
+ static getPointIndexUnderCursor(element: ExcalidrawLinearElement, elementsMap: ElementsMap, zoom: AppState["zoom"], x: number, y: number): number;
80
+ static createPointAt(element: ExcalidrawLinearElement, elementsMap: ElementsMap, scenePointerX: number, scenePointerY: number, gridSize: NullableGridSize): LocalPoint;
78
81
  /**
79
82
  * Normalizes line points so that the start point is at [0,0]. This is
80
83
  * expected in various parts of the codebase.
@@ -94,6 +97,9 @@ export declare class LinearElementEditor {
94
97
  startBinding?: FixedPointBinding | null;
95
98
  endBinding?: FixedPointBinding | null;
96
99
  moveMidPointsWithElement?: boolean | null;
100
+ }, options?: {
101
+ isBindingEnabled?: boolean;
102
+ isMidpointSnappingEnabled?: boolean;
97
103
  }): void;
98
104
  static shouldAddMidpoint(linearElementEditor: LinearElementEditor, pointerCoords: PointerCoords, appState: AppState, elementsMap: ElementsMap): boolean;
99
105
  static addMidpoint(linearElementEditor: LinearElementEditor, pointerCoords: PointerCoords, app: AppClassProperties, snapToGrid: boolean, scene: Scene): {
@@ -102,6 +108,12 @@ export declare class LinearElementEditor {
102
108
  } | undefined;
103
109
  private static _updatePoints;
104
110
  private static _getShiftLockedDelta;
111
+ /**
112
+ * The point a bound text label is centered on — the middle of the linear
113
+ * element, whether that's an actual point or the midpoint of the middle
114
+ * segment.
115
+ */
116
+ static getBoundTextElementCenter: (element: ExcalidrawLinearElement, elementsMap: ElementsMap) => GlobalPoint;
105
117
  static getBoundTextElementPosition: (element: ExcalidrawLinearElement, boundTextElement: ExcalidrawTextElementWithContainer, elementsMap: ElementsMap) => {
106
118
  x: number;
107
119
  y: number;
@@ -11,6 +11,8 @@ export type ElementUpdate<TElement extends ExcalidrawElement> = Omit<Partial<TEl
11
11
  */
12
12
  export declare const mutateElement: <TElement extends Mutable<ExcalidrawElement>>(element: TElement, elementsMap: ElementsMap, updates: ElementUpdate<TElement>, options?: {
13
13
  isDragging?: boolean;
14
+ isBindingEnabled?: boolean;
15
+ isMidpointSnappingEnabled?: boolean;
14
16
  }) => TElement;
15
17
  export declare const newElementWith: <TElement extends ExcalidrawElement>(element: TElement, updates: ElementUpdate<TElement>,
16
18
  /** pass `true` to always regenerate */
@@ -16,6 +16,19 @@ export declare const newFrameElement: (opts: {
16
16
  export declare const newMagicFrameElement: (opts: {
17
17
  name?: string;
18
18
  } & ElementConstructorOpts) => NonDeleted<ExcalidrawMagicFrameElement>;
19
+ /**
20
+ * The point of the text box its alignment pins, as ratios of width/height.
21
+ *
22
+ * This is the point that stays put as the text grows — see the sides passed to
23
+ * `adjustXYWithRotation` in `getAdjustedDimensions`.
24
+ */
25
+ export declare const getTextAnchorRatios: (opts: {
26
+ textAlign: ExcalidrawTextElement["textAlign"];
27
+ verticalAlign: ExcalidrawTextElement["verticalAlign"];
28
+ }) => {
29
+ x: number;
30
+ y: number;
31
+ };
19
32
  export declare const newTextElement: (opts: {
20
33
  text: string;
21
34
  originalText?: string;
@@ -38,6 +51,7 @@ export declare const newFreeDrawElement: (opts: {
38
51
  type: "freedraw";
39
52
  points?: ExcalidrawFreeDrawElement["points"];
40
53
  simulatePressure: boolean;
54
+ strokeOptions?: ExcalidrawFreeDrawElement["strokeOptions"];
41
55
  pressures?: ExcalidrawFreeDrawElement["pressures"];
42
56
  } & ElementConstructorOpts) => NonDeleted<ExcalidrawFreeDrawElement>;
43
57
  export declare const newLinearElement: (opts: {
@@ -9,14 +9,11 @@ export interface ExcalidrawElementWithCanvas {
9
9
  canvas: HTMLCanvasElement;
10
10
  theme: AppState["theme"];
11
11
  scale: number;
12
- angle: number;
13
12
  zoomValue: AppState["zoom"]["value"];
14
13
  canvasOffsetX: number;
15
14
  canvasOffsetY: number;
16
- boundTextElementVersion: number | null;
17
15
  imageCrop: ExcalidrawImageElement["crop"] | null;
18
16
  containingFrameOpacity: number;
19
- boundTextCanvas: HTMLCanvasElement;
20
17
  }
21
18
  export declare const DEFAULT_LINK_SIZE = 14;
22
19
  export declare let elementWithCanvasCache: WeakMap<ExcalidrawElement, ExcalidrawElementWithCanvas>;
@@ -3,7 +3,7 @@ import type { PointerDownState } from "@excalidraw/excalidraw/types";
3
3
  import type { Scene } from "./Scene";
4
4
  import type { BoundingBox } from "./bounds";
5
5
  import type { MaybeTransformHandleType, TransformHandleDirection } from "./transformHandles";
6
- import type { ExcalidrawLinearElement, ExcalidrawTextElement, NonDeletedExcalidrawElement, NonDeleted, ExcalidrawElement, ElementsMap } from "./types";
6
+ import type { ExcalidrawLinearElement, ExcalidrawTextElement, NonDeletedExcalidrawElement, NonDeleted, ElementsMap } from "./types";
7
7
  export declare const transformElements: (originalElements: PointerDownState["originalElements"], transformHandleType: MaybeTransformHandleType, selectedElements: readonly NonDeletedExcalidrawElement[], scene: Scene, shouldRotateWithDiscreteAngle: boolean, shouldResizeFromCenter: boolean, shouldMaintainAspectRatio: boolean, pointerX: number, pointerY: number, centerX: number, centerY: number) => boolean;
8
8
  export declare const rescalePointsInElement: (element: NonDeletedExcalidrawElement, width: number, height: number, normalizePoints: boolean) => {
9
9
  points: LocalPoint[];
@@ -16,7 +16,7 @@ export declare const measureFontSizeFromWidth: (element: NonDeleted<ExcalidrawTe
16
16
  export declare const resizeSingleTextElement: (origElement: NonDeleted<ExcalidrawTextElement>, element: NonDeleted<ExcalidrawTextElement>, scene: Scene, transformHandleType: TransformHandleDirection, shouldResizeFromCenter: boolean, nextWidth: number, nextHeight: number) => void;
17
17
  export declare const getResizeOffsetXY: (transformHandleType: MaybeTransformHandleType, selectedElements: NonDeletedExcalidrawElement[], elementsMap: ElementsMap, x: number, y: number) => [number, number];
18
18
  export declare const getResizeArrowDirection: (transformHandleType: MaybeTransformHandleType, element: NonDeleted<ExcalidrawLinearElement>) => "origin" | "end";
19
- export declare const resizeSingleElement: (nextWidth: number, nextHeight: number, latestElement: ExcalidrawElement, origElement: ExcalidrawElement, originalElementsMap: ElementsMap, scene: Scene, handleDirection: TransformHandleDirection, { shouldInformMutation, shouldMaintainAspectRatio, shouldResizeFromCenter, }?: {
19
+ export declare const resizeSingleElement: (nextWidth: number, nextHeight: number, latestElement: NonDeletedExcalidrawElement, origElement: NonDeletedExcalidrawElement, originalElementsMap: ElementsMap, scene: Scene, handleDirection: TransformHandleDirection, { shouldInformMutation, shouldMaintainAspectRatio, shouldResizeFromCenter, }?: {
20
20
  shouldMaintainAspectRatio?: boolean;
21
21
  shouldResizeFromCenter?: boolean;
22
22
  shouldInformMutation?: boolean;
@@ -1,6 +1,6 @@
1
- import type { AppState, InteractiveCanvasAppState } from "@excalidraw/excalidraw/types";
1
+ import type { AppState, BoxSelectionMode, InteractiveCanvasAppState } from "@excalidraw/excalidraw/types";
2
2
  import { LinearElementEditor } from "./linearElementEditor";
3
- import type { ElementsMap, ElementsMapOrArray, ExcalidrawElement, NonDeletedExcalidrawElement } from "./types";
3
+ import type { ElementsMap, ElementsMapOrArray, ExcalidrawElement, NonDeleted, NonDeletedExcalidrawElement } from "./types";
4
4
  /**
5
5
  * Frames and their containing elements are not to be selected at the same time.
6
6
  * Given an array of selected elements, if there are frames and their containing elements
@@ -8,8 +8,8 @@ import type { ElementsMap, ElementsMapOrArray, ExcalidrawElement, NonDeletedExca
8
8
  * @param selectedElements
9
9
  */
10
10
  export declare const excludeElementsInFramesFromSelection: <T extends ExcalidrawElement>(selectedElements: readonly T[]) => T[];
11
- export declare const getElementsWithinSelection: (elements: readonly NonDeletedExcalidrawElement[], selection: NonDeletedExcalidrawElement, elementsMap: ElementsMap, excludeElementsInFrames?: boolean) => NonDeletedExcalidrawElement[];
12
- export declare const getVisibleAndNonSelectedElements: (elements: readonly NonDeletedExcalidrawElement[], selectedElements: readonly NonDeletedExcalidrawElement[], appState: AppState, elementsMap: ElementsMap) => NonDeletedExcalidrawElement[];
11
+ export declare const getElementsWithinSelection: <T extends ExcalidrawElement>(elements: readonly T[], selection: ExcalidrawElement, elementsMap: ElementsMap, excludeElementsInFrames?: boolean, boxSelectionMode?: BoxSelectionMode) => T[];
12
+ export declare const getVisibleAndNonSelectedElements: <T extends NonDeletedExcalidrawElement>(elements: readonly T[], selectedElements: readonly ExcalidrawElement[], appState: AppState, elementsMap: ElementsMap) => T[];
13
13
  export declare const isSomeElementSelected: {
14
14
  (elements: readonly NonDeletedExcalidrawElement[], appState: Pick<AppState, "selectedElementIds">): boolean;
15
15
  clearCache(): void;
@@ -17,8 +17,8 @@ export declare const isSomeElementSelected: {
17
17
  export declare const getSelectedElements: (elements: ElementsMapOrArray, appState: Pick<InteractiveCanvasAppState, "selectedElementIds">, opts?: {
18
18
  includeBoundTextElement?: boolean;
19
19
  includeElementsInFrames?: boolean;
20
- }) => ExcalidrawElement[];
21
- export declare const getTargetElements: (elements: ElementsMapOrArray, appState: Pick<AppState, "selectedElementIds" | "editingTextElement" | "newElement">) => ExcalidrawElement[];
20
+ }) => NonDeletedExcalidrawElement[];
21
+ export declare const getTargetElements: (elements: ElementsMapOrArray, appState: Pick<AppState, "selectedElementIds" | "editingTextElement" | "newElement" | "activeTool">) => NonDeletedExcalidrawElement[] | import("./types").ExcalidrawTextElement[];
22
22
  /**
23
23
  * returns prevState's selectedElementids if no change from previous, so as to
24
24
  * retain reference identity for memoization
@@ -26,9 +26,13 @@ export declare const getTargetElements: (elements: ElementsMapOrArray, appState:
26
26
  export declare const makeNextSelectedElementIds: (nextSelectedElementIds: AppState["selectedElementIds"], prevState: Pick<AppState, "selectedElementIds">) => Readonly<{
27
27
  [id: string]: true;
28
28
  }>;
29
- export declare const getSelectionStateForElements: (targetElements: readonly ExcalidrawElement[], allElements: readonly NonDeletedExcalidrawElement[], appState: AppState) => {
29
+ export declare const getSelectionStateForElements: (targetElements: readonly NonDeletedExcalidrawElement[], allElements: readonly NonDeletedExcalidrawElement[], appState: AppState) => {
30
+ editingGroupId: AppState["editingGroupId"];
30
31
  selectedElementIds: AppState["selectedElementIds"];
31
32
  selectedGroupIds: AppState["selectedGroupIds"];
32
- editingGroupId: AppState["editingGroupId"];
33
33
  selectedLinearElement: LinearElementEditor | null;
34
34
  };
35
+ /**
36
+ * Returns editing or single-selected text element, if any.
37
+ */
38
+ export declare const getActiveTextElement: (selectedElements: readonly NonDeleted<ExcalidrawElement>[], appState: Pick<AppState, "editingTextElement">) => import("./types").ExcalidrawTextElement | null;
@@ -27,7 +27,7 @@ export declare class ShapeCache {
27
27
  } | null) => ((T["type"] extends keyof ElementShapes ? ElementShapes[T["type"]] | undefined : ElementShape | undefined) & {}) | (T["type"] extends keyof ElementShapes ? ElementShapes[T["type"]] : Drawable | null);
28
28
  }
29
29
  export declare const generateRoughOptions: (element: ExcalidrawElement, continuousPath?: boolean, isDarkMode?: boolean) => Options;
30
- export declare const generateLinearCollisionShape: (element: ExcalidrawLinearElement | ExcalidrawFreeDrawElement) => {
30
+ export declare const generateLinearCollisionShape: (element: ExcalidrawLinearElement | ExcalidrawFreeDrawElement, elementsMap: ElementsMap) => {
31
31
  op: string;
32
32
  data: number[];
33
33
  }[];
@@ -41,3 +41,15 @@ export declare const toggleLinePolygonState: (element: ExcalidrawLineElement, ne
41
41
  points: ExcalidrawLineElement["points"];
42
42
  } | null;
43
43
  export declare const getFreedrawOutlinePoints: (element: ExcalidrawFreeDrawElement) => [number, number][];
44
+ /**
45
+ * The streamline-smoothed centerline the freedraw stroke is rendered
46
+ * around, in element-local coordinates. Boundary-sensitive consumers (e.g.
47
+ * bucket fill) should use this instead of `element.points`: raw input
48
+ * points can sit 20px+ apart and the rendered stroke is smoothed between
49
+ * them, so raw chords visibly deviate from what's on screen.
50
+ *
51
+ * Constant-width ("laser geometry") strokes technically smooth via
52
+ * `LaserPointer` instead; the perfect-freehand centerline with the same
53
+ * `streamline` is a close approximation the stroke width hides.
54
+ */
55
+ export declare const getFreedrawStrokeCenterPoints: (element: ExcalidrawFreeDrawElement) => [number, number][];
@@ -1,2 +1,12 @@
1
1
  import type { ExcalidrawElement } from "./types";
2
+ /**
3
+ * In theory, when we have text elements bound to a container, they
4
+ * should be right after the container element in the elements array.
5
+ * However, this is not guaranteed due to old and potential future bugs.
6
+ *
7
+ * This function sorts containers and their bound texts together. It prefers
8
+ * original z-index of container (i.e. it moves bound text elements after
9
+ * containers).
10
+ */
11
+ export declare const normalizeBoundElementsOrder: <T extends ExcalidrawElement>(elements: readonly T[]) => readonly T[];
2
12
  export declare const normalizeElementOrder: (elements: readonly ExcalidrawElement[]) => readonly ExcalidrawElement[];
@@ -1,23 +1,26 @@
1
1
  import { type Radians } from "@excalidraw/math";
2
- import type { AppState } from "@excalidraw/excalidraw/types";
3
2
  import type { ExtractSetType } from "@excalidraw/common/utility-types";
4
3
  import type { Scene } from "./Scene";
5
4
  import type { MaybeTransformHandleType } from "./transformHandles";
6
- import type { ElementsMap, ExcalidrawElement, ExcalidrawElementType, ExcalidrawTextContainer, ExcalidrawTextElement, ExcalidrawTextElementWithContainer, NonDeletedExcalidrawElement } from "./types";
5
+ import type { ElementsMap, ExcalidrawElement, ExcalidrawElementType, ExcalidrawTextContainer, ExcalidrawTextElement, ExcalidrawTextElementWithContainer, NonDeleted } from "./types";
7
6
  export declare const redrawTextBoundingBox: (textElement: ExcalidrawTextElement, container: ExcalidrawElement | null, scene: Scene) => void;
8
- export declare const handleBindTextResize: (container: NonDeletedExcalidrawElement, scene: Scene, transformHandleType: MaybeTransformHandleType, shouldMaintainAspectRatio?: boolean) => void;
7
+ export declare const handleBindTextResize: (container: ExcalidrawElement, scene: Scene, transformHandleType: MaybeTransformHandleType, shouldMaintainAspectRatio?: boolean, shouldResizeFromCenter?: boolean) => void;
9
8
  export declare const computeBoundTextPosition: (container: ExcalidrawElement, boundTextElement: ExcalidrawTextElementWithContainer, elementsMap: ElementsMap) => {
10
9
  x: number;
11
10
  y: number;
12
11
  };
13
12
  export declare const getBoundTextElementId: (container: ExcalidrawElement | null) => string | null;
14
- export declare const getBoundTextElement: (element: ExcalidrawElement | null, elementsMap: ElementsMap) => ExcalidrawTextElementWithContainer | null;
15
- export declare const getContainerElement: (element: ExcalidrawTextElement | null, elementsMap: ElementsMap) => ExcalidrawTextContainer | null;
16
- export declare const getContainerCenter: (container: ExcalidrawElement, appState: AppState, elementsMap: ElementsMap) => {
13
+ export declare const getBoundTextElement: (element: ExcalidrawElement | null, elementsMap: ElementsMap) => NonDeleted<ExcalidrawTextElementWithContainer> | null;
14
+ export declare const getContainerElement: <T extends ExcalidrawTextElement, R extends ExcalidrawTextContainer>(element: T | null, elementsMap: ElementsMap) => R | null;
15
+ /**
16
+ * The point a text bound to this container centers on — and, for arrows, the
17
+ * point the text tool snaps a new label to.
18
+ */
19
+ export declare const getContainerCenter: (container: ExcalidrawElement, elementsMap: ElementsMap) => {
17
20
  x: number;
18
21
  y: number;
19
22
  };
20
- export declare const getContainerCoords: (container: NonDeletedExcalidrawElement) => {
23
+ export declare const getContainerCoords: (container: ExcalidrawElement) => {
21
24
  x: number;
22
25
  y: number;
23
26
  };
@@ -26,12 +29,12 @@ export declare const getBoundTextElementPosition: (container: ExcalidrawElement,
26
29
  x: number;
27
30
  y: number;
28
31
  } | undefined;
29
- export declare const shouldAllowVerticalAlign: (selectedElements: NonDeletedExcalidrawElement[], elementsMap: ElementsMap) => boolean;
30
- export declare const suppportsHorizontalAlign: (selectedElements: NonDeletedExcalidrawElement[], elementsMap: ElementsMap) => boolean;
32
+ export declare const shouldAllowVerticalAlign: (selectedElements: readonly ExcalidrawElement[], elementsMap: ElementsMap) => boolean;
33
+ export declare const suppportsHorizontalAlign: (selectedElements: readonly ExcalidrawElement[], elementsMap: ElementsMap) => boolean;
31
34
  declare const VALID_CONTAINER_TYPES: Set<string>;
32
35
  export declare const isValidTextContainer: (element: {
33
36
  type: ExcalidrawElementType;
34
- }) => boolean;
37
+ }) => element is ExcalidrawTextContainer;
35
38
  export declare const computeContainerDimensionForBoundText: (dimension: number, containerType: ExtractSetType<typeof VALID_CONTAINER_TYPES>) => number;
36
39
  export declare const getBoundTextMaxWidth: (container: ExcalidrawElement, boundTextElement: ExcalidrawTextElement | null) => number;
37
40
  export declare const getBoundTextMaxHeight: (container: ExcalidrawElement, boundTextElement: ExcalidrawTextElementWithContainer) => number;
@@ -5,9 +5,35 @@ import type { FontString } from "./types";
5
5
  export declare const containsCJK: (text: string) => boolean;
6
6
  /**
7
7
  * Breaks the line into the tokens based on the found line break opporutnities.
8
+ *
9
+ * Note: tokenization normalizes to NFC first so decomposed graphemes are treated as
10
+ * their composed variants for wrapping. Any code that needs exact source offsets should
11
+ * keep in mind that this assumes the input text is already NFC-normalized.
8
12
  */
9
13
  export declare const parseTokens: (line: string) => string[];
10
14
  /**
11
15
  * Wraps the original text into the lines based on the given width.
16
+ *
17
+ * This is a convenience adapter over `getWrappedTextLines()` for call sites
18
+ * that only need the rendered wrapped string and not the source offsets.
12
19
  */
13
20
  export declare const wrapText: (text: string, font: FontString, maxWidth: number) => string;
21
+ /**
22
+ * A single rendered visual line produced from the original text.
23
+ *
24
+ * `start` and `end` are end-exclusive code-unit offsets into the original text, and do
25
+ * not include synthetic soft line breaks inserted by this module. If trailing whitespace
26
+ * was trimmed away at a wrap boundary, `end` points to the last rendered character.
27
+ */
28
+ export type WrappedTextLine = {
29
+ text: string;
30
+ start: number;
31
+ end: number;
32
+ };
33
+ /**
34
+ * Returns the rendered visual lines together with their source offsets.
35
+ *
36
+ * This is the source-of-truth wrapping pipeline for callers that need more than the
37
+ * final wrapped string, for example caret placement or future editor/rich-text mapping.
38
+ */
39
+ export declare const getWrappedTextLines: (text: string, font: FontString, maxWidth: number) => WrappedTextLine[];
@@ -1,6 +1,6 @@
1
1
  import type { MarkOptional } from "@excalidraw/common/utility-types";
2
2
  import { type ElementConstructorOpts } from "./newElement";
3
- import type { ExcalidrawBindableElement, ExcalidrawElement, ExcalidrawFrameElement, ExcalidrawFreeDrawElement, ExcalidrawGenericElement, ExcalidrawIframeLikeElement, ExcalidrawImageElement, ExcalidrawLinearElement, ExcalidrawMagicFrameElement, ExcalidrawSelectionElement, ExcalidrawTextElement, FileId, FontFamilyValues, TextAlign, VerticalAlign } from "./types";
3
+ import type { ExcalidrawBindableElement, ExcalidrawElement, ExcalidrawFrameElement, ExcalidrawFreeDrawElement, ExcalidrawGenericElement, ExcalidrawIframeLikeElement, ExcalidrawImageElement, ExcalidrawLinearElement, ExcalidrawMagicFrameElement, ExcalidrawSelectionElement, ExcalidrawTextElement, FileId, FontFamilyValues, NonDeletedExcalidrawElement, Ordered, TextAlign, VerticalAlign } from "./types";
4
4
  export type ValidLinearElement = {
5
5
  type: "arrow" | "line";
6
6
  x: number;
@@ -78,4 +78,4 @@ export type ExcalidrawElementSkeleton = Extract<Exclude<ExcalidrawElement, Excal
78
78
  } & Partial<ExcalidrawMagicFrameElement>);
79
79
  export declare const convertToExcalidrawElements: (elementsSkeleton: ExcalidrawElementSkeleton[] | null, opts?: {
80
80
  regenerateIds: boolean;
81
- }) => import("./types").OrderedExcalidrawElement[];
81
+ }) => Ordered<NonDeletedExcalidrawElement>[];
@@ -1,38 +1,38 @@
1
1
  import type { ElementOrToolType } from "@excalidraw/excalidraw/types";
2
2
  import type { MarkNonNullable } from "@excalidraw/common/utility-types";
3
3
  import type { ExcalidrawElement, ExcalidrawTextElement, ExcalidrawEmbeddableElement, ExcalidrawLinearElement, ExcalidrawBindableElement, ExcalidrawFreeDrawElement, InitializedExcalidrawImageElement, ExcalidrawImageElement, ExcalidrawTextElementWithContainer, ExcalidrawTextContainer, ExcalidrawFrameElement, RoundnessType, ExcalidrawFrameLikeElement, ExcalidrawElementType, ExcalidrawIframeElement, ExcalidrawIframeLikeElement, ExcalidrawMagicFrameElement, ExcalidrawArrowElement, ExcalidrawElbowArrowElement, ExcalidrawLineElement, ExcalidrawFlowchartNodeElement, ExcalidrawLinearElementSubType } from "./types";
4
- export declare const isInitializedImageElement: (element: ExcalidrawElement | null) => element is InitializedExcalidrawImageElement;
5
- export declare const isImageElement: (element: ExcalidrawElement | null) => element is ExcalidrawImageElement;
6
- export declare const isEmbeddableElement: (element: ExcalidrawElement | null | undefined) => element is ExcalidrawEmbeddableElement;
7
- export declare const isIframeElement: (element: ExcalidrawElement | null) => element is ExcalidrawIframeElement;
8
- export declare const isIframeLikeElement: (element: ExcalidrawElement | null) => element is ExcalidrawIframeLikeElement;
9
- export declare const isTextElement: (element: ExcalidrawElement | null) => element is ExcalidrawTextElement;
10
- export declare const isFrameElement: (element: ExcalidrawElement | null) => element is ExcalidrawFrameElement;
11
- export declare const isMagicFrameElement: (element: ExcalidrawElement | null) => element is ExcalidrawMagicFrameElement;
12
- export declare const isFrameLikeElement: (element: ExcalidrawElement | null) => element is ExcalidrawFrameLikeElement;
13
- export declare const isFreeDrawElement: (element?: ExcalidrawElement | null) => element is ExcalidrawFreeDrawElement;
4
+ export declare const isInitializedImageElement: <T extends ExcalidrawElement>(element: T | null) => element is T & InitializedExcalidrawImageElement;
5
+ export declare const isImageElement: <T extends ExcalidrawElement>(element: T | null) => element is T & ExcalidrawImageElement;
6
+ export declare const isEmbeddableElement: <T extends ExcalidrawElement>(element: T | null | undefined) => element is T & ExcalidrawEmbeddableElement;
7
+ export declare const isIframeElement: <T extends ExcalidrawElement>(element: T | null) => element is T & ExcalidrawIframeElement;
8
+ export declare const isIframeLikeElement: <T extends ExcalidrawElement>(element: T | null) => element is T & ExcalidrawIframeLikeElement;
9
+ export declare const isTextElement: <T extends ExcalidrawElement>(element: T | null) => element is T & ExcalidrawTextElement;
10
+ export declare const isFrameElement: <T extends ExcalidrawElement>(element: T | null) => element is T & ExcalidrawFrameElement;
11
+ export declare const isMagicFrameElement: <T extends ExcalidrawElement>(element: T | null) => element is T & ExcalidrawMagicFrameElement;
12
+ export declare const isFrameLikeElement: <T extends ExcalidrawElement>(element: T | null) => element is T & ExcalidrawFrameLikeElement;
13
+ export declare const isFreeDrawElement: <T extends ExcalidrawElement>(element?: T | null) => element is T & ExcalidrawFreeDrawElement;
14
14
  export declare const isFreeDrawElementType: (elementType: ExcalidrawElementType) => boolean;
15
- export declare const isLinearElement: (element?: ExcalidrawElement | null) => element is ExcalidrawLinearElement;
16
- export declare const isLineElement: (element?: ExcalidrawElement | null) => element is ExcalidrawLineElement;
17
- export declare const isArrowElement: (element?: ExcalidrawElement | null) => element is ExcalidrawArrowElement;
18
- export declare const isElbowArrow: (element?: ExcalidrawElement) => element is ExcalidrawElbowArrowElement;
15
+ export declare const isLinearElement: <T extends ExcalidrawElement>(element?: T | null) => element is T & ExcalidrawLinearElement;
16
+ export declare const isLineElement: <T extends ExcalidrawElement>(element?: T | null) => element is T & ExcalidrawLineElement;
17
+ export declare const isArrowElement: <T extends ExcalidrawElement>(element?: T | null) => element is T & ExcalidrawArrowElement;
18
+ export declare const isElbowArrow: <T extends ExcalidrawElement>(element?: T) => element is T & ExcalidrawElbowArrowElement;
19
19
  /**
20
20
  * sharp or curved arrow, but not elbow
21
21
  */
22
- export declare const isSimpleArrow: (element?: ExcalidrawElement) => element is ExcalidrawArrowElement;
23
- export declare const isSharpArrow: (element?: ExcalidrawElement) => element is ExcalidrawArrowElement;
24
- export declare const isCurvedArrow: (element?: ExcalidrawElement) => element is ExcalidrawArrowElement;
22
+ export declare const isSimpleArrow: <T extends ExcalidrawElement>(element?: T) => element is T & ExcalidrawArrowElement;
23
+ export declare const isSharpArrow: <T extends ExcalidrawElement>(element?: T) => element is T & ExcalidrawArrowElement;
24
+ export declare const isCurvedArrow: <T extends ExcalidrawElement>(element?: T) => element is T & ExcalidrawArrowElement;
25
25
  export declare const isLinearElementType: (elementType: ElementOrToolType) => boolean;
26
- export declare const isBindingElement: (element?: ExcalidrawElement | null, includeLocked?: boolean) => element is ExcalidrawArrowElement;
26
+ export declare const isBindingElement: <T extends ExcalidrawElement>(element?: T | null, includeLocked?: boolean) => element is T & ExcalidrawArrowElement;
27
27
  export declare const isBindingElementType: (elementType: ElementOrToolType) => boolean;
28
- export declare const isBindableElement: (element: ExcalidrawElement | null | undefined, includeLocked?: boolean) => element is ExcalidrawBindableElement;
29
- export declare const isRectanguloidElement: (element?: ExcalidrawElement | null) => element is ExcalidrawBindableElement;
30
- export declare const isRectangularElement: (element?: ExcalidrawElement | null) => element is ExcalidrawBindableElement;
31
- export declare const isTextBindableContainer: (element: ExcalidrawElement | null, includeLocked?: boolean) => element is ExcalidrawTextContainer;
28
+ export declare const isBindableElement: <T extends ExcalidrawElement>(element: T | null | undefined, includeLocked?: boolean) => element is T & ExcalidrawBindableElement;
29
+ export declare const isRectanguloidElement: <T extends ExcalidrawElement>(element?: T | null) => element is T & ExcalidrawBindableElement;
30
+ export declare const isRectangularElement: <T extends ExcalidrawElement>(element?: T | null) => element is T & ExcalidrawBindableElement;
31
+ export declare const isTextBindableContainer: <T extends ExcalidrawElement>(element: T | null, includeLocked?: boolean) => element is T & ExcalidrawTextContainer;
32
32
  export declare const isExcalidrawElement: (element: any) => element is ExcalidrawElement;
33
- export declare const isFlowchartNodeElement: (element: ExcalidrawElement) => element is ExcalidrawFlowchartNodeElement;
34
- export declare const hasBoundTextElement: (element: ExcalidrawElement | null) => element is MarkNonNullable<ExcalidrawBindableElement, "boundElements">;
35
- export declare const isBoundToContainer: (element: ExcalidrawElement | null) => element is ExcalidrawTextElementWithContainer;
33
+ export declare const isFlowchartNodeElement: <T extends ExcalidrawElement>(element: T) => element is T & ExcalidrawFlowchartNodeElement;
34
+ export declare const hasBoundTextElement: <T extends ExcalidrawElement>(element: T | null) => element is T & MarkNonNullable<ExcalidrawBindableElement, "boundElements">;
35
+ export declare const isBoundToContainer: <T extends ExcalidrawElement>(element: T | null) => element is T & ExcalidrawTextElementWithContainer;
36
36
  export declare const isArrowBoundToElement: (element: ExcalidrawArrowElement) => boolean;
37
37
  export declare const isUsingAdaptiveRadius: (type: string) => type is "rectangle" | "embeddable" | "iframe" | "image";
38
38
  export declare const isUsingProportionalRadius: (type: string) => type is "line" | "arrow" | "diamond";
@@ -52,3 +52,4 @@ export declare const getLinearElementSubType: (element: ExcalidrawLinearElement)
52
52
  */
53
53
  export declare const isValidPolygon: (points: ExcalidrawLineElement["points"]) => boolean;
54
54
  export declare const canBecomePolygon: (points: ExcalidrawLineElement["points"]) => boolean;
55
+ export declare const isEligibleFrameChildType: (type: ElementOrToolType) => boolean;
@@ -1,7 +1,7 @@
1
1
  import type { LocalPoint, Radians } from "@excalidraw/math";
2
2
  import type { FONT_FAMILY, ROUNDNESS, TEXT_ALIGN, THEME, VERTICAL_ALIGN } from "@excalidraw/common";
3
3
  import type { MakeBrand, MarkNonNullable, Merge, ValueOf } from "@excalidraw/common/utility-types";
4
- export type ChartType = "bar" | "line";
4
+ export type ChartType = "bar" | "line" | "radar";
5
5
  export type FillStyle = "hachure" | "cross-hatch" | "solid" | "zigzag";
6
6
  export type FontFamilyKeys = keyof typeof FONT_FAMILY;
7
7
  export type FontFamilyValues = typeof FONT_FAMILY[FontFamilyKeys];
@@ -164,7 +164,7 @@ export type Ordered<TElement extends ExcalidrawElement> = TElement & {
164
164
  };
165
165
  export type OrderedExcalidrawElement = Ordered<ExcalidrawElement>;
166
166
  export type NonDeleted<TElement extends ExcalidrawElement> = TElement & {
167
- isDeleted: boolean;
167
+ isDeleted: false;
168
168
  };
169
169
  export type NonDeletedExcalidrawElement = NonDeleted<ExcalidrawElement>;
170
170
  export type ExcalidrawTextElement = _ExcalidrawElementBase & Readonly<{
@@ -208,7 +208,10 @@ export type PointsPositionUpdates = Map<Index, {
208
208
  point: LocalPoint;
209
209
  isDragging?: boolean;
210
210
  }>;
211
- export type Arrowhead = "arrow" | "bar" | "dot" | "circle" | "circle_outline" | "triangle" | "triangle_outline" | "diamond" | "diamond_outline" | "crowfoot_one" | "crowfoot_many" | "crowfoot_one_or_many";
211
+ export type CardinalityArrowhead = "cardinality_one" | "cardinality_many" | "cardinality_one_or_many" | "cardinality_exactly_one" | "cardinality_zero_or_one" | "cardinality_zero_or_many";
212
+ export type ArrowheadLegacy = "dot" | "crowfoot_one" | "crowfoot_many" | "crowfoot_one_or_many";
213
+ export type Arrowhead = "arrow" | "bar" | "circle" | "circle_outline" | "triangle" | "triangle_outline" | "diamond" | "diamond_outline" | CardinalityArrowhead;
214
+ export type AnyArrowhead = Arrowhead | ArrowheadLegacy;
212
215
  export type ExcalidrawLinearElement = _ExcalidrawElementBase & Readonly<{
213
216
  type: "line" | "arrow";
214
217
  points: readonly LocalPoint[];
@@ -252,11 +255,17 @@ export type ExcalidrawElbowArrowElement = Merge<ExcalidrawArrowElement, {
252
255
  */
253
256
  endIsSpecial: boolean | null;
254
257
  }>;
258
+ export type StrokeVariability = "variable" | "constant";
259
+ export type StrokeOptions = Readonly<{
260
+ variability: StrokeVariability;
261
+ streamline: number;
262
+ }>;
255
263
  export type ExcalidrawFreeDrawElement = _ExcalidrawElementBase & Readonly<{
256
264
  type: "freedraw";
257
265
  points: readonly LocalPoint[];
258
266
  pressures: readonly number[];
259
267
  simulatePressure: boolean;
268
+ strokeOptions: StrokeOptions;
260
269
  }>;
261
270
  export type FileId = string & {
262
271
  _brand: "FileId";
@@ -284,6 +293,7 @@ export type SceneElementsMap = Map<ExcalidrawElement["id"], Ordered<ExcalidrawEl
284
293
  */
285
294
  export type NonDeletedSceneElementsMap = Map<ExcalidrawElement["id"], Ordered<NonDeletedExcalidrawElement>> & MakeBrand<"NonDeletedSceneElementsMap">;
286
295
  export type ElementsMapOrArray = readonly ExcalidrawElement[] | Readonly<ElementsMap>;
296
+ export type NonDeletedElementsMapOrArray = readonly NonDeletedExcalidrawElement[] | Readonly<NonDeletedElementsMap | NonDeletedSceneElementsMap>;
287
297
  export type ExcalidrawLinearElementSubType = "line" | "sharpArrow" | "curvedArrow" | "elbowArrow";
288
298
  export type ConvertibleGenericTypes = "rectangle" | "diamond" | "ellipse";
289
299
  export type ConvertibleLinearTypes = ExcalidrawLinearElementSubType;
@@ -1,14 +1,14 @@
1
1
  import { type GlobalPoint } from "@excalidraw/math";
2
2
  import type { Curve, LineSegment } from "@excalidraw/math";
3
- import type { Zoom } from "@excalidraw/excalidraw/types";
4
- import type { ElementsMap, ExcalidrawArrowElement, ExcalidrawDiamondElement, ExcalidrawElement, ExcalidrawFreeDrawElement, ExcalidrawLinearElement, ExcalidrawRectanguloidElement } from "./types";
3
+ import type { AppState, Zoom } from "@excalidraw/excalidraw/types";
4
+ import type { ElementsMap, ExcalidrawArrowElement, ExcalidrawBindableElement, ExcalidrawDiamondElement, ExcalidrawElement, ExcalidrawFreeDrawElement, ExcalidrawLinearElement, ExcalidrawRectanguloidElement } from "./types";
5
5
  /**
6
6
  * Returns the **rotated** components of freedraw, line or arrow elements.
7
7
  *
8
8
  * @param element The linear element to deconstruct
9
9
  * @returns The rotated in components.
10
10
  */
11
- export declare function deconstructLinearOrFreeDrawElement(element: ExcalidrawLinearElement | ExcalidrawFreeDrawElement): [LineSegment<GlobalPoint>[], Curve<GlobalPoint>[]];
11
+ export declare function deconstructLinearOrFreeDrawElement(element: ExcalidrawLinearElement | ExcalidrawFreeDrawElement, elementsMap: ElementsMap): [LineSegment<GlobalPoint>[], Curve<GlobalPoint>[]];
12
12
  /**
13
13
  * Get the building components of a rectanguloid element in the form of
14
14
  * line segments and curves **unrotated**.
@@ -18,6 +18,7 @@ export declare function deconstructLinearOrFreeDrawElement(element: ExcalidrawLi
18
18
  * @returns Tuple of **unrotated** line segments (0) and curves (1)
19
19
  */
20
20
  export declare function deconstructRectanguloidElement(element: ExcalidrawRectanguloidElement, offset?: number): [LineSegment<GlobalPoint>[], Curve<GlobalPoint>[]];
21
+ export declare function getDiamondBaseCorners(element: ExcalidrawDiamondElement, offset?: number): Curve<GlobalPoint>[];
21
22
  /**
22
23
  * Get the **unrotated** building components of a diamond element
23
24
  * in the form of line segments and curves as a tuple, in this order.
@@ -31,4 +32,5 @@ export declare const isPathALoop: (points: ExcalidrawLinearElement["points"],
31
32
  /** supply if you want the loop detection to account for current zoom */
32
33
  zoomValue?: Zoom["value"]) => boolean;
33
34
  export declare const getCornerRadius: (x: number, element: ExcalidrawElement) => number;
34
- export declare const projectFixedPointOntoDiagonal: (arrow: ExcalidrawArrowElement, point: GlobalPoint, element: ExcalidrawElement, startOrEnd: "start" | "end", elementsMap: ElementsMap) => GlobalPoint | null;
35
+ export declare const getSnapOutlineMidPoint: (point: GlobalPoint, element: ExcalidrawBindableElement, elementsMap: ElementsMap, zoom: AppState["zoom"]) => GlobalPoint | undefined;
36
+ export declare const projectFixedPointOntoDiagonal: (arrow: ExcalidrawArrowElement, point: GlobalPoint, element: ExcalidrawBindableElement, startOrEnd: "start" | "end", elementsMap: ElementsMap, zoom: AppState["zoom"], isMidpointSnappingEnabled?: boolean) => GlobalPoint | null;
@@ -1,12 +1,12 @@
1
1
  import type { AppState } from "@excalidraw/excalidraw/types";
2
2
  import type { GlobalPoint } from "@excalidraw/math";
3
3
  import type { Scene } from "./Scene";
4
- import type { ExcalidrawArrowElement, ExcalidrawElement, NonDeletedExcalidrawElement, NonDeletedSceneElementsMap, Ordered, OrderedExcalidrawElement } from "./types";
4
+ import type { ExcalidrawArrowElement, ExcalidrawElement, NonDeletedExcalidrawElement, NonDeletedSceneElementsMap, OrderedExcalidrawElement } from "./types";
5
5
  /**
6
6
  * Moves the arrow element above any bindable elements it intersects with or
7
7
  * hovers over.
8
8
  */
9
- export declare const moveArrowAboveBindable: (point: GlobalPoint, arrow: ExcalidrawArrowElement, elements: readonly Ordered<NonDeletedExcalidrawElement>[], elementsMap: NonDeletedSceneElementsMap, scene: Scene) => readonly OrderedExcalidrawElement[];
9
+ export declare const moveArrowAboveBindable: (point: GlobalPoint, arrow: ExcalidrawArrowElement, elements: readonly OrderedExcalidrawElement[], elementsMap: NonDeletedSceneElementsMap, scene: Scene, hit?: NonDeletedExcalidrawElement) => readonly OrderedExcalidrawElement[];
10
10
  export declare const moveOneLeft: (allElements: readonly ExcalidrawElement[], appState: AppState, scene: Scene) => readonly ExcalidrawElement[];
11
11
  export declare const moveOneRight: (allElements: readonly ExcalidrawElement[], appState: AppState, scene: Scene) => readonly ExcalidrawElement[];
12
12
  export declare const moveAllLeft: (allElements: readonly ExcalidrawElement[], appState: AppState) => readonly ExcalidrawElement[] | ExcalidrawElement[];