@zsviczian/excalidraw 0.17.6-27 → 0.17.6-28

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 (395) hide show
  1. package/dist/excalidraw.development.js +102 -102
  2. package/dist/excalidraw.production.min.js +1 -1
  3. package/package.json +1 -1
  4. package/types/excalidraw/actions/actionAddToLibrary.d.ts +629 -629
  5. package/types/excalidraw/actions/actionAlign.d.ts +108 -108
  6. package/types/excalidraw/actions/actionBoundText.d.ts +456 -456
  7. package/types/excalidraw/actions/actionCanvas.d.ts +3070 -3070
  8. package/types/excalidraw/actions/actionClipboard.d.ts +1374 -1374
  9. package/types/excalidraw/actions/actionCropEditor.d.ts +222 -222
  10. package/types/excalidraw/actions/actionDeleteSelected.d.ts +668 -668
  11. package/types/excalidraw/actions/actionDistribute.d.ts +34 -34
  12. package/types/excalidraw/actions/actionDuplicateSelection.d.ts +21 -21
  13. package/types/excalidraw/actions/actionElementLink.d.ts +244 -244
  14. package/types/excalidraw/actions/actionElementLock.d.ts +444 -444
  15. package/types/excalidraw/actions/actionExport.d.ts +1953 -1953
  16. package/types/excalidraw/actions/actionFinalize.d.ts +425 -425
  17. package/types/excalidraw/actions/actionFlip.d.ts +34 -34
  18. package/types/excalidraw/actions/actionFrame.d.ts +1383 -1383
  19. package/types/excalidraw/actions/actionGroup.d.ts +454 -454
  20. package/types/excalidraw/actions/actionHistory.d.ts +7 -7
  21. package/types/excalidraw/actions/actionLinearEditor.d.ts +223 -223
  22. package/types/excalidraw/actions/actionLink.d.ts +223 -223
  23. package/types/excalidraw/actions/actionMenu.d.ts +649 -649
  24. package/types/excalidraw/actions/actionNavigate.d.ts +430 -430
  25. package/types/excalidraw/actions/actionProperties.d.ts +3276 -3276
  26. package/types/excalidraw/actions/actionSelectAll.d.ts +222 -222
  27. package/types/excalidraw/actions/actionStyles.d.ts +236 -236
  28. package/types/excalidraw/actions/actionTextAutoResize.d.ts +17 -17
  29. package/types/excalidraw/actions/actionToggleGridMode.d.ts +225 -225
  30. package/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +223 -223
  31. package/types/excalidraw/actions/actionToggleSearchMenu.d.ts +420 -420
  32. package/types/excalidraw/actions/actionToggleStats.d.ts +223 -223
  33. package/types/excalidraw/actions/actionToggleViewMode.d.ts +224 -224
  34. package/types/excalidraw/actions/actionToggleZenMode.d.ts +224 -224
  35. package/types/excalidraw/actions/actionZindex.d.ts +74 -74
  36. package/types/excalidraw/actions/index.d.ts +27 -27
  37. package/types/excalidraw/actions/manager.d.ts +21 -21
  38. package/types/excalidraw/actions/register.d.ts +5 -5
  39. package/types/excalidraw/actions/shortcuts.d.ts +4 -4
  40. package/types/excalidraw/actions/types.d.ts +46 -46
  41. package/types/excalidraw/align.d.ts +6 -6
  42. package/types/excalidraw/analytics.d.ts +1 -1
  43. package/types/excalidraw/animated-trail.d.ts +33 -33
  44. package/types/excalidraw/animation-frame-handler.d.ts +16 -16
  45. package/types/excalidraw/appState.d.ts +89 -89
  46. package/types/excalidraw/binaryheap.d.ts +12 -12
  47. package/types/excalidraw/change.d.ts +191 -191
  48. package/types/excalidraw/charts.d.ts +27 -27
  49. package/types/excalidraw/clients.d.ts +14 -14
  50. package/types/excalidraw/clipboard.d.ts +66 -66
  51. package/types/excalidraw/colors.d.ts +61 -61
  52. package/types/excalidraw/components/Actions.d.ts +34 -34
  53. package/types/excalidraw/components/ActiveConfirmDialog.d.ts +4 -4
  54. package/types/excalidraw/components/App.d.ts +551 -551
  55. package/types/excalidraw/components/Avatar.d.ts +11 -11
  56. package/types/excalidraw/components/BraveMeasureTextError.d.ts +2 -2
  57. package/types/excalidraw/components/Button.d.ts +17 -17
  58. package/types/excalidraw/components/ButtonIcon.d.ts +14 -14
  59. package/types/excalidraw/components/ButtonIconCycle.d.ts +10 -10
  60. package/types/excalidraw/components/ButtonIconSelect.d.ts +19 -19
  61. package/types/excalidraw/components/ButtonSelect.d.ts +9 -9
  62. package/types/excalidraw/components/ButtonSeparator.d.ts +1 -1
  63. package/types/excalidraw/components/Card.d.ts +6 -6
  64. package/types/excalidraw/components/CheckboxItem.d.ts +8 -8
  65. package/types/excalidraw/components/ColorPicker/ColorInput.d.ts +9 -9
  66. package/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +19 -19
  67. package/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +8 -8
  68. package/types/excalidraw/components/ColorPicker/HotkeyLabel.d.ts +8 -8
  69. package/types/excalidraw/components/ColorPicker/Picker.d.ts +18 -18
  70. package/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +10 -10
  71. package/types/excalidraw/components/ColorPicker/PickerHeading.d.ts +5 -5
  72. package/types/excalidraw/components/ColorPicker/ShadeList.d.ts +8 -8
  73. package/types/excalidraw/components/ColorPicker/TopPicks.d.ts +9 -9
  74. package/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +21 -21
  75. package/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +20 -20
  76. package/types/excalidraw/components/CommandPalette/CommandPalette.d.ts +18 -18
  77. package/types/excalidraw/components/CommandPalette/defaultCommandPaletteItems.d.ts +2 -2
  78. package/types/excalidraw/components/CommandPalette/types.d.ts +25 -25
  79. package/types/excalidraw/components/ConfirmDialog.d.ts +10 -10
  80. package/types/excalidraw/components/ContextMenu.d.ts +16 -16
  81. package/types/excalidraw/components/DarkModeToggle.d.ts +7 -7
  82. package/types/excalidraw/components/DefaultSidebar.d.ts +30 -30
  83. package/types/excalidraw/components/DiagramToCodePlugin/DiagramToCodePlugin.d.ts +4 -4
  84. package/types/excalidraw/components/Dialog.d.ts +13 -13
  85. package/types/excalidraw/components/DialogActionButton.d.ts +10 -10
  86. package/types/excalidraw/components/ElementLinkDialog.d.ts +11 -11
  87. package/types/excalidraw/components/ErrorDialog.d.ts +5 -5
  88. package/types/excalidraw/components/ExcalidrawLogo.d.ts +15 -15
  89. package/types/excalidraw/components/EyeDropper.d.ts +27 -27
  90. package/types/excalidraw/components/FilledButton.d.ts +18 -18
  91. package/types/excalidraw/components/FixedSideContainer.d.ts +9 -9
  92. package/types/excalidraw/components/FollowMode/FollowMode.d.ts +10 -10
  93. package/types/excalidraw/components/FontPicker/FontPicker.d.ts +21 -21
  94. package/types/excalidraw/components/FontPicker/FontPickerList.d.ts +25 -25
  95. package/types/excalidraw/components/FontPicker/FontPickerTrigger.d.ts +6 -6
  96. package/types/excalidraw/components/FontPicker/keyboardNavHandlers.d.ts +13 -13
  97. package/types/excalidraw/components/HandButton.d.ts +10 -10
  98. package/types/excalidraw/components/HelpButton.d.ts +7 -7
  99. package/types/excalidraw/components/HelpDialog.d.ts +4 -4
  100. package/types/excalidraw/components/HintViewer.d.ts +10 -10
  101. package/types/excalidraw/components/IconPicker.d.ts +14 -14
  102. package/types/excalidraw/components/ImageExportDialog.d.ts +14 -14
  103. package/types/excalidraw/components/InitializeApp.d.ts +10 -10
  104. package/types/excalidraw/components/InlineIcon.d.ts +3 -3
  105. package/types/excalidraw/components/Island.d.ts +10 -10
  106. package/types/excalidraw/components/JSONExportDialog.d.ts +15 -15
  107. package/types/excalidraw/components/LaserPointerButton.d.ts +10 -10
  108. package/types/excalidraw/components/LayerUI.d.ts +31 -31
  109. package/types/excalidraw/components/LibraryMenu.d.ts +24 -24
  110. package/types/excalidraw/components/LibraryMenuBrowseButton.d.ts +7 -7
  111. package/types/excalidraw/components/LibraryMenuControlButtons.d.ts +9 -9
  112. package/types/excalidraw/components/LibraryMenuHeaderContent.d.ts +17 -17
  113. package/types/excalidraw/components/LibraryMenuItems.d.ts +14 -14
  114. package/types/excalidraw/components/LibraryMenuSection.d.ts +23 -23
  115. package/types/excalidraw/components/LibraryUnit.d.ts +14 -14
  116. package/types/excalidraw/components/LoadingMessage.d.ts +5 -5
  117. package/types/excalidraw/components/LockButton.d.ts +10 -10
  118. package/types/excalidraw/components/MagicButton.d.ts +9 -9
  119. package/types/excalidraw/components/MobileMenu.d.ts +24 -24
  120. package/types/excalidraw/components/Modal.d.ts +14 -14
  121. package/types/excalidraw/components/OverwriteConfirm/OverwriteConfirm.d.ts +17 -17
  122. package/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmActions.d.ts +17 -17
  123. package/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmState.d.ts +22 -22
  124. package/types/excalidraw/components/Paragraph.d.ts +4 -4
  125. package/types/excalidraw/components/PasteChartDialog.d.ts +8 -8
  126. package/types/excalidraw/components/PenModeButton.d.ts +12 -12
  127. package/types/excalidraw/components/Popover.d.ts +15 -15
  128. package/types/excalidraw/components/ProjectName.d.ts +10 -10
  129. package/types/excalidraw/components/PropertiesPopover.d.ts +15 -15
  130. package/types/excalidraw/components/PublishLibrary.d.ts +16 -16
  131. package/types/excalidraw/components/QuickSearch.d.ts +9 -9
  132. package/types/excalidraw/components/RadioGroup.d.ts +13 -13
  133. package/types/excalidraw/components/SVGLayer.d.ts +7 -7
  134. package/types/excalidraw/components/ScrollableList.d.ts +8 -8
  135. package/types/excalidraw/components/SearchMenu.d.ts +5 -5
  136. package/types/excalidraw/components/SearchSidebar.d.ts +1 -0
  137. package/types/excalidraw/components/Section.d.ts +6 -6
  138. package/types/excalidraw/components/ShareableLinkDialog.d.ts +7 -7
  139. package/types/excalidraw/components/Sidebar/Sidebar.d.ts +76 -76
  140. package/types/excalidraw/components/Sidebar/SidebarHeader.d.ts +7 -7
  141. package/types/excalidraw/components/Sidebar/SidebarTab.d.ts +8 -8
  142. package/types/excalidraw/components/Sidebar/SidebarTabTrigger.d.ts +9 -9
  143. package/types/excalidraw/components/Sidebar/SidebarTabTriggers.d.ts +6 -6
  144. package/types/excalidraw/components/Sidebar/SidebarTabs.d.ts +6 -6
  145. package/types/excalidraw/components/Sidebar/SidebarTrigger.d.ts +6 -6
  146. package/types/excalidraw/components/Sidebar/common.d.ts +33 -33
  147. package/types/excalidraw/components/Spinner.d.ts +8 -8
  148. package/types/excalidraw/components/Stack.d.ts +16 -16
  149. package/types/excalidraw/components/Stats/Angle.d.ts +11 -11
  150. package/types/excalidraw/components/Stats/CanvasGrid.d.ts +10 -10
  151. package/types/excalidraw/components/Stats/CanvasGridSize.d.ts +10 -10
  152. package/types/excalidraw/components/Stats/Collapsible.d.ts +9 -9
  153. package/types/excalidraw/components/Stats/Dimension.d.ts +11 -11
  154. package/types/excalidraw/components/Stats/DragInput.d.ts +34 -34
  155. package/types/excalidraw/components/Stats/FontSize.d.ts +11 -11
  156. package/types/excalidraw/components/Stats/MultiAngle.d.ts +11 -11
  157. package/types/excalidraw/components/Stats/MultiDimension.d.ts +14 -14
  158. package/types/excalidraw/components/Stats/MultiFontSize.d.ts +12 -12
  159. package/types/excalidraw/components/Stats/MultiPosition.d.ts +14 -14
  160. package/types/excalidraw/components/Stats/Position.d.ts +12 -12
  161. package/types/excalidraw/components/Stats/index.d.ts +35 -35
  162. package/types/excalidraw/components/Stats/utils.d.ts +26 -26
  163. package/types/excalidraw/components/Switch.d.ts +9 -9
  164. package/types/excalidraw/components/TTDDialog/MermaidToExcalidraw.d.ts +8 -8
  165. package/types/excalidraw/components/TTDDialog/MermaidToExcalidrawLib.d.ts +10 -10
  166. package/types/excalidraw/components/TTDDialog/TTDDialog.d.ts +29 -29
  167. package/types/excalidraw/components/TTDDialog/TTDDialogInput.d.ts +9 -9
  168. package/types/excalidraw/components/TTDDialog/TTDDialogOutput.d.ts +7 -7
  169. package/types/excalidraw/components/TTDDialog/TTDDialogPanel.d.ts +17 -17
  170. package/types/excalidraw/components/TTDDialog/TTDDialogPanels.d.ts +4 -4
  171. package/types/excalidraw/components/TTDDialog/TTDDialogSubmitShortcut.d.ts +1 -1
  172. package/types/excalidraw/components/TTDDialog/TTDDialogTab.d.ts +7 -7
  173. package/types/excalidraw/components/TTDDialog/TTDDialogTabTrigger.d.ts +8 -8
  174. package/types/excalidraw/components/TTDDialog/TTDDialogTabTriggers.d.ts +6 -6
  175. package/types/excalidraw/components/TTDDialog/TTDDialogTabs.d.ts +11 -11
  176. package/types/excalidraw/components/TTDDialog/TTDDialogTrigger.d.ts +8 -8
  177. package/types/excalidraw/components/TTDDialog/common.d.ts +32 -32
  178. package/types/excalidraw/components/TextField.d.ts +21 -21
  179. package/types/excalidraw/components/Toast.d.ts +9 -9
  180. package/types/excalidraw/components/ToolButton.d.ts +49 -49
  181. package/types/excalidraw/components/Tooltip.d.ts +18 -18
  182. package/types/excalidraw/components/Trans.d.ts +9 -9
  183. package/types/excalidraw/components/UserList.d.ts +18 -18
  184. package/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +29 -29
  185. package/types/excalidraw/components/canvases/NewElementCanvas.d.ts +14 -14
  186. package/types/excalidraw/components/canvases/StaticCanvas.d.ts +19 -19
  187. package/types/excalidraw/components/canvases/index.d.ts +3 -3
  188. package/types/excalidraw/components/dropdownMenu/DropdownMenu.d.ts +86 -86
  189. package/types/excalidraw/components/dropdownMenu/DropdownMenuContent.d.ts +15 -15
  190. package/types/excalidraw/components/dropdownMenu/DropdownMenuGroup.d.ts +11 -11
  191. package/types/excalidraw/components/dropdownMenu/DropdownMenuItem.d.ts +45 -45
  192. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemContent.d.ts +7 -7
  193. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemContentRadio.d.ts +17 -17
  194. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemCustom.d.ts +7 -7
  195. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemLink.d.ts +15 -15
  196. package/types/excalidraw/components/dropdownMenu/DropdownMenuSeparator.d.ts +5 -5
  197. package/types/excalidraw/components/dropdownMenu/DropdownMenuTrigger.d.ts +10 -10
  198. package/types/excalidraw/components/dropdownMenu/common.d.ts +6 -6
  199. package/types/excalidraw/components/dropdownMenu/dropdownMenuUtils.d.ts +3 -3
  200. package/types/excalidraw/components/footer/Footer.d.ts +12 -12
  201. package/types/excalidraw/components/footer/FooterCenter.d.ts +8 -8
  202. package/types/excalidraw/components/hoc/withInternalFallback.d.ts +4 -4
  203. package/types/excalidraw/components/hyperlink/Hyperlink.d.ts +18 -18
  204. package/types/excalidraw/components/hyperlink/helpers.d.ts +9 -9
  205. package/types/excalidraw/components/icons.d.ts +223 -223
  206. package/types/excalidraw/components/live-collaboration/LiveCollaborationTrigger.d.ts +9 -9
  207. package/types/excalidraw/components/main-menu/DefaultItems.d.ts +64 -64
  208. package/types/excalidraw/components/main-menu/MainMenu.d.ts +80 -80
  209. package/types/excalidraw/components/welcome-screen/WelcomeScreen.Center.d.ts +59 -59
  210. package/types/excalidraw/components/welcome-screen/WelcomeScreen.Hints.d.ts +19 -19
  211. package/types/excalidraw/components/welcome-screen/WelcomeScreen.d.ts +86 -86
  212. package/types/excalidraw/constants.d.ts +326 -326
  213. package/types/excalidraw/context/tunnels.d.ts +21 -21
  214. package/types/excalidraw/context/ui-appState.d.ts +4 -4
  215. package/types/excalidraw/cursor.d.ts +6 -6
  216. package/types/excalidraw/data/EditorLocalStorage.d.ts +8 -8
  217. package/types/excalidraw/data/ai/types.d.ts +242 -242
  218. package/types/excalidraw/data/blob.d.ts +53 -53
  219. package/types/excalidraw/data/encode.d.ts +55 -55
  220. package/types/excalidraw/data/encryption.d.ts +9 -9
  221. package/types/excalidraw/data/filesystem.d.ts +21 -21
  222. package/types/excalidraw/data/image.d.ts +9 -9
  223. package/types/excalidraw/data/index.d.ts +22 -22
  224. package/types/excalidraw/data/json.d.ts +16 -16
  225. package/types/excalidraw/data/library.d.ts +112 -112
  226. package/types/excalidraw/data/reconcile.d.ts +6 -6
  227. package/types/excalidraw/data/resave.d.ts +5 -5
  228. package/types/excalidraw/data/restore.d.ts +21 -21
  229. package/types/excalidraw/data/transform.d.ts +81 -81
  230. package/types/excalidraw/data/types.d.ts +45 -45
  231. package/types/excalidraw/data/url.d.ts +7 -7
  232. package/types/excalidraw/deburr.d.ts +1 -1
  233. package/types/excalidraw/dist/excalidraw.development.d.ts +2 -2
  234. package/types/excalidraw/dist/excalidraw.production.min.d.ts +3 -3
  235. package/types/excalidraw/distribute.d.ts +6 -6
  236. package/types/excalidraw/editor-jotai.d.ts +56 -56
  237. package/types/excalidraw/element/ElementCanvasButtons.d.ts +7 -7
  238. package/types/excalidraw/element/binding.d.ts +102 -102
  239. package/types/excalidraw/element/bounds.d.ts +76 -76
  240. package/types/excalidraw/element/collision.d.ts +17 -17
  241. package/types/excalidraw/element/containerCache.d.ts +11 -11
  242. package/types/excalidraw/element/cropElement.d.ts +19 -19
  243. package/types/excalidraw/element/dragElements.d.ts +32 -32
  244. package/types/excalidraw/element/elbowArrow.d.ts +14 -14
  245. package/types/excalidraw/element/elementLink.d.ts +13 -13
  246. package/types/excalidraw/element/embeddable.d.ts +229 -229
  247. package/types/excalidraw/element/flowchart.d.ts +25 -25
  248. package/types/excalidraw/element/heading.d.ts +16 -16
  249. package/types/excalidraw/element/image.d.ts +32 -32
  250. package/types/excalidraw/element/index.d.ts +26 -26
  251. package/types/excalidraw/element/linearElementEditor.d.ts +127 -127
  252. package/types/excalidraw/element/mutateElement.d.ts +13 -13
  253. package/types/excalidraw/element/newElement.d.ts +107 -107
  254. package/types/excalidraw/element/resizeElements.d.ts +38 -38
  255. package/types/excalidraw/element/resizeTest.d.ts +15 -15
  256. package/types/excalidraw/element/routing.d.ts +15 -15
  257. package/types/excalidraw/element/showSelectedShapeActions.d.ts +3 -3
  258. package/types/excalidraw/element/sizeHelpers.d.ts +35 -35
  259. package/types/excalidraw/element/sortElements.d.ts +2 -2
  260. package/types/excalidraw/element/textElement.d.ts +83 -83
  261. package/types/excalidraw/element/textWrapping.d.ts +13 -13
  262. package/types/excalidraw/element/textWysiwyg.d.ts +22 -22
  263. package/types/excalidraw/element/transformHandles.d.ts +55 -55
  264. package/types/excalidraw/element/typeChecks.d.ts +39 -39
  265. package/types/excalidraw/element/types.d.ts +285 -285
  266. package/types/excalidraw/emitter.d.ts +16 -16
  267. package/types/excalidraw/entry.d.ts +1 -1
  268. package/types/excalidraw/env.d.cts +1 -1
  269. package/types/excalidraw/env.d.ts +1 -1
  270. package/types/excalidraw/errors.d.ts +32 -32
  271. package/types/excalidraw/fonts/Cascadia/index.d.ts +2 -2
  272. package/types/excalidraw/fonts/ComicShanns/index.d.ts +2 -2
  273. package/types/excalidraw/fonts/Emoji/index.d.ts +2 -2
  274. package/types/excalidraw/fonts/ExcalidrawFont.d.ts +37 -0
  275. package/types/excalidraw/fonts/ExcalidrawFontFace.d.ts +29 -29
  276. package/types/excalidraw/fonts/Excalifont/index.d.ts +2 -2
  277. package/types/excalidraw/fonts/FontMetadata.d.ts +37 -37
  278. package/types/excalidraw/fonts/Fonts.d.ts +116 -116
  279. package/types/excalidraw/fonts/Helvetica/index.d.ts +2 -2
  280. package/types/excalidraw/fonts/Liberation/index.d.ts +2 -2
  281. package/types/excalidraw/fonts/Lilita/index.d.ts +2 -2
  282. package/types/excalidraw/fonts/Nunito/index.d.ts +2 -2
  283. package/types/excalidraw/fonts/Virgil/index.d.ts +2 -2
  284. package/types/excalidraw/fonts/Xiaolai/index.d.ts +8 -8
  285. package/types/excalidraw/fonts/index.d.ts +1 -1
  286. package/types/excalidraw/fonts/metadata.d.ts +35 -0
  287. package/types/excalidraw/fonts/wasm/hb-subset.bindings.d.ts +45 -0
  288. package/types/excalidraw/fonts/wasm/hb-subset.loader.d.ts +5 -0
  289. package/types/excalidraw/fonts/wasm/hb-subset.wasm.d.ts +2 -0
  290. package/types/excalidraw/fonts/wasm/woff2.bindings.d.ts +31 -0
  291. package/types/excalidraw/fonts/wasm/woff2.loader.d.ts +6 -0
  292. package/types/excalidraw/fonts/wasm/woff2.wasm.d.ts +2 -0
  293. package/types/excalidraw/fractionalIndex.d.ts +48 -48
  294. package/types/excalidraw/frame.d.ts +68 -63
  295. package/types/excalidraw/ga.d.ts +63 -0
  296. package/types/excalidraw/gadirections.d.ts +8 -0
  297. package/types/excalidraw/galines.d.ts +22 -0
  298. package/types/excalidraw/gapoints.d.ts +7 -0
  299. package/types/excalidraw/gatransforms.d.ts +10 -0
  300. package/types/excalidraw/gesture.d.ts +6 -6
  301. package/types/excalidraw/groups.d.ts +33 -33
  302. package/types/excalidraw/history.d.ts +40 -40
  303. package/types/excalidraw/hooks/useCallbackRefState.d.ts +1 -1
  304. package/types/excalidraw/hooks/useCopiedIndicator.d.ts +5 -5
  305. package/types/excalidraw/hooks/useCreatePortalContainer.d.ts +7 -7
  306. package/types/excalidraw/hooks/useEmitter.d.ts +2 -2
  307. package/types/excalidraw/hooks/useLibraryItemSvg.d.ts +11 -11
  308. package/types/excalidraw/hooks/useOutsideClick.d.ts +19 -19
  309. package/types/excalidraw/hooks/useScrollPosition.d.ts +1 -1
  310. package/types/excalidraw/hooks/useStable.d.ts +1 -1
  311. package/types/excalidraw/hooks/useStableCallback.d.ts +4 -4
  312. package/types/excalidraw/hooks/useTransition.d.ts +2 -2
  313. package/types/excalidraw/i18n.d.ts +24 -24
  314. package/types/excalidraw/index-node.d.ts +1 -1
  315. package/types/excalidraw/index.d.ts +64 -64
  316. package/types/excalidraw/jotai.d.ts +34 -34
  317. package/types/excalidraw/keys.d.ts +189 -189
  318. package/types/excalidraw/laser-trails.d.ts +20 -20
  319. package/types/excalidraw/main.d.ts +2 -2
  320. package/types/excalidraw/math.d.ts +79 -0
  321. package/types/excalidraw/mermaid.d.ts +2 -2
  322. package/types/excalidraw/obsidianUtils.d.ts +26 -26
  323. package/types/excalidraw/points.d.ts +7 -7
  324. package/types/excalidraw/polyfill.d.ts +2 -2
  325. package/types/excalidraw/publicPath.d.ts +1 -1
  326. package/types/excalidraw/queue.d.ts +9 -9
  327. package/types/excalidraw/random.d.ts +4 -4
  328. package/types/excalidraw/reactUtils.d.ts +14 -14
  329. package/types/excalidraw/renderer/easingFunctions.d.ts +6 -6
  330. package/types/excalidraw/renderer/helpers.d.ts +13 -13
  331. package/types/excalidraw/renderer/interactiveScene.d.ts +20 -20
  332. package/types/excalidraw/renderer/renderElement.d.ts +28 -28
  333. package/types/excalidraw/renderer/renderNewElementScene.d.ts +7 -7
  334. package/types/excalidraw/renderer/renderSnaps.d.ts +2 -2
  335. package/types/excalidraw/renderer/roundRect.d.ts +11 -11
  336. package/types/excalidraw/renderer/staticScene.d.ts +11 -11
  337. package/types/excalidraw/renderer/staticSvgScene.d.ts +5 -5
  338. package/types/excalidraw/scene/Renderer.d.ts +28 -28
  339. package/types/excalidraw/scene/Scene.d.ts +79 -79
  340. package/types/excalidraw/scene/Shape.d.ts +17 -17
  341. package/types/excalidraw/scene/ShapeCache.d.ts +25 -25
  342. package/types/excalidraw/scene/comparisons.d.ts +488 -488
  343. package/types/excalidraw/scene/export.d.ts +37 -37
  344. package/types/excalidraw/scene/index.d.ts +4 -4
  345. package/types/excalidraw/scene/normalize.d.ts +4 -4
  346. package/types/excalidraw/scene/scroll.d.ts +23 -23
  347. package/types/excalidraw/scene/scrollbars.d.ts +12 -12
  348. package/types/excalidraw/scene/selection.d.ts +32 -32
  349. package/types/excalidraw/scene/types.d.ts +119 -119
  350. package/types/excalidraw/scene/zoom.d.ts +12 -12
  351. package/types/excalidraw/shapes.d.ts +85 -85
  352. package/types/excalidraw/snapping.d.ts +112 -112
  353. package/types/excalidraw/store.d.ts +129 -129
  354. package/types/excalidraw/subset/harfbuzz/harfbuzz-bindings.d.ts +45 -45
  355. package/types/excalidraw/subset/harfbuzz/harfbuzz-loader.d.ts +13 -13
  356. package/types/excalidraw/subset/harfbuzz/harfbuzz-wasm.d.ts +2 -2
  357. package/types/excalidraw/subset/subset-main.d.ts +12 -12
  358. package/types/excalidraw/subset/subset-shared.chunk.d.ts +32 -32
  359. package/types/excalidraw/subset/subset-worker.chunk.d.ts +15 -15
  360. package/types/excalidraw/subset/woff2/woff2-bindings.d.ts +31 -31
  361. package/types/excalidraw/subset/woff2/woff2-loader.d.ts +14 -14
  362. package/types/excalidraw/subset/woff2/woff2-wasm.d.ts +2 -2
  363. package/types/excalidraw/types.d.ts +741 -741
  364. package/types/excalidraw/utility-types.d.ts +31 -31
  365. package/types/excalidraw/utils.d.ts +250 -250
  366. package/types/excalidraw/visualdebug.d.ts +42 -42
  367. package/types/excalidraw/webpack.dev.config.d.ts +81 -81
  368. package/types/excalidraw/webpack.prod.config.d.ts +97 -97
  369. package/types/excalidraw/workers.d.ts +36 -36
  370. package/types/excalidraw/zindex.d.ts +6 -6
  371. package/types/math/angle.d.ts +17 -17
  372. package/types/math/arc.d.ts +6 -6
  373. package/types/math/curve.d.ts +32 -32
  374. package/types/math/ga/ga.d.ts +63 -63
  375. package/types/math/ga/gadirections.d.ts +8 -8
  376. package/types/math/ga/galines.d.ts +22 -22
  377. package/types/math/ga/gapoints.d.ts +7 -7
  378. package/types/math/ga/gatransforms.d.ts +10 -10
  379. package/types/math/index.d.ts +12 -12
  380. package/types/math/line.d.ts +45 -45
  381. package/types/math/point.d.ts +150 -150
  382. package/types/math/polygon.d.ts +5 -5
  383. package/types/math/range.d.ts +44 -44
  384. package/types/math/segment.d.ts +32 -32
  385. package/types/math/triangle.d.ts +11 -11
  386. package/types/math/types.d.ts +96 -96
  387. package/types/math/utils.d.ts +7 -7
  388. package/types/math/vector.d.ts +92 -92
  389. package/types/utils/bbox.d.ts +9 -9
  390. package/types/utils/collision.d.ts +9 -9
  391. package/types/utils/export.d.ts +46 -46
  392. package/types/utils/geometry/geometry.d.ts +89 -0
  393. package/types/utils/geometry/shape.d.ts +71 -71
  394. package/types/utils/index.d.ts +4 -4
  395. package/types/utils/withinBounds.d.ts +19 -19
@@ -1,96 +1,96 @@
1
- /**
2
- * By definition one radian is the angle subtended at the centre
3
- * of a circle by an arc that is equal in length to the radius.
4
- */
5
- export type Radians = number & {
6
- _brand: "excalimath__radian";
7
- };
8
- /**
9
- * An angle measurement of a plane angle in which one full
10
- * rotation is 360 degrees.
11
- */
12
- export type Degrees = number & {
13
- _brand: "excalimath_degree";
14
- };
15
- /**
16
- * A number range which includes the start and end numbers in the range.
17
- */
18
- export type InclusiveRange = [number, number] & {
19
- _brand: "excalimath_degree";
20
- };
21
- /**
22
- * Represents a 2D position in world or canvas space. A
23
- * global coordinate.
24
- */
25
- export type GlobalPoint = [x: number, y: number] & {
26
- _brand: "excalimath__globalpoint";
27
- };
28
- /**
29
- * Represents a 2D position in whatever local space it's
30
- * needed. A local coordinate.
31
- */
32
- export type LocalPoint = [x: number, y: number] & {
33
- _brand: "excalimath__localpoint";
34
- };
35
- /**
36
- * A line is an infinitely long object with no width, depth, or curvature.
37
- */
38
- export type Line<P extends GlobalPoint | LocalPoint> = [p: P, q: P] & {
39
- _brand: "excalimath_line";
40
- };
41
- /**
42
- * In geometry, a line segment is a part of a straight
43
- * line that is bounded by two distinct end points, and
44
- * contains every point on the line that is between its endpoints.
45
- */
46
- export type LineSegment<P extends GlobalPoint | LocalPoint> = [a: P, b: P] & {
47
- _brand: "excalimath_linesegment";
48
- };
49
- /**
50
- * Represents a 2D vector
51
- */
52
- export type Vector = [u: number, v: number] & {
53
- _brand: "excalimath__vector";
54
- };
55
- /**
56
- * A triangle represented by 3 points
57
- */
58
- export type Triangle<P extends GlobalPoint | LocalPoint> = [
59
- a: P,
60
- b: P,
61
- c: P
62
- ] & {
63
- _brand: "excalimath__triangle";
64
- };
65
- /**
66
- * A polygon is a closed shape by connecting the given points
67
- * rectangles and diamonds are modelled by polygons
68
- */
69
- export type Polygon<Point extends GlobalPoint | LocalPoint> = Point[] & {
70
- _brand: "excalimath_polygon";
71
- };
72
- /**
73
- * Cubic bezier curve with four control points
74
- */
75
- export type Curve<Point extends GlobalPoint | LocalPoint> = [
76
- Point,
77
- Point,
78
- Point,
79
- Point
80
- ] & {
81
- _brand: "excalimath_curve";
82
- };
83
- export type PolarCoords = [
84
- radius: number,
85
- /** angle in radians */
86
- angle: number
87
- ];
88
- /**
89
- * Angles are in radians and centered on 0, 0. Zero radians on a 1 radius circle
90
- * corresponds to (1, 0) cartesian coordinates (point), i.e. to the "right".
91
- */
92
- export type SymmetricArc = {
93
- radius: number;
94
- startAngle: number;
95
- endAngle: number;
96
- };
1
+ /**
2
+ * By definition one radian is the angle subtended at the centre
3
+ * of a circle by an arc that is equal in length to the radius.
4
+ */
5
+ export type Radians = number & {
6
+ _brand: "excalimath__radian";
7
+ };
8
+ /**
9
+ * An angle measurement of a plane angle in which one full
10
+ * rotation is 360 degrees.
11
+ */
12
+ export type Degrees = number & {
13
+ _brand: "excalimath_degree";
14
+ };
15
+ /**
16
+ * A number range which includes the start and end numbers in the range.
17
+ */
18
+ export type InclusiveRange = [number, number] & {
19
+ _brand: "excalimath_degree";
20
+ };
21
+ /**
22
+ * Represents a 2D position in world or canvas space. A
23
+ * global coordinate.
24
+ */
25
+ export type GlobalPoint = [x: number, y: number] & {
26
+ _brand: "excalimath__globalpoint";
27
+ };
28
+ /**
29
+ * Represents a 2D position in whatever local space it's
30
+ * needed. A local coordinate.
31
+ */
32
+ export type LocalPoint = [x: number, y: number] & {
33
+ _brand: "excalimath__localpoint";
34
+ };
35
+ /**
36
+ * A line is an infinitely long object with no width, depth, or curvature.
37
+ */
38
+ export type Line<P extends GlobalPoint | LocalPoint> = [p: P, q: P] & {
39
+ _brand: "excalimath_line";
40
+ };
41
+ /**
42
+ * In geometry, a line segment is a part of a straight
43
+ * line that is bounded by two distinct end points, and
44
+ * contains every point on the line that is between its endpoints.
45
+ */
46
+ export type LineSegment<P extends GlobalPoint | LocalPoint> = [a: P, b: P] & {
47
+ _brand: "excalimath_linesegment";
48
+ };
49
+ /**
50
+ * Represents a 2D vector
51
+ */
52
+ export type Vector = [u: number, v: number] & {
53
+ _brand: "excalimath__vector";
54
+ };
55
+ /**
56
+ * A triangle represented by 3 points
57
+ */
58
+ export type Triangle<P extends GlobalPoint | LocalPoint> = [
59
+ a: P,
60
+ b: P,
61
+ c: P
62
+ ] & {
63
+ _brand: "excalimath__triangle";
64
+ };
65
+ /**
66
+ * A polygon is a closed shape by connecting the given points
67
+ * rectangles and diamonds are modelled by polygons
68
+ */
69
+ export type Polygon<Point extends GlobalPoint | LocalPoint> = Point[] & {
70
+ _brand: "excalimath_polygon";
71
+ };
72
+ /**
73
+ * Cubic bezier curve with four control points
74
+ */
75
+ export type Curve<Point extends GlobalPoint | LocalPoint> = [
76
+ Point,
77
+ Point,
78
+ Point,
79
+ Point
80
+ ] & {
81
+ _brand: "excalimath_curve";
82
+ };
83
+ export type PolarCoords = [
84
+ radius: number,
85
+ /** angle in radians */
86
+ angle: number
87
+ ];
88
+ /**
89
+ * Angles are in radians and centered on 0, 0. Zero radians on a 1 radius circle
90
+ * corresponds to (1, 0) cartesian coordinates (point), i.e. to the "right".
91
+ */
92
+ export type SymmetricArc = {
93
+ radius: number;
94
+ startAngle: number;
95
+ endAngle: number;
96
+ };
@@ -1,7 +1,7 @@
1
- export declare const PRECISION = 0.0001;
2
- export declare const clamp: (value: number, min: number, max: number) => number;
3
- export declare const round: (value: number, precision: number, func?: "round" | "floor" | "ceil") => number;
4
- export declare const roundToStep: (value: number, step: number, func?: "round" | "floor" | "ceil") => number;
5
- export declare const average: (a: number, b: number) => number;
6
- export declare const isFiniteNumber: (value: any) => value is number;
7
- export declare const isCloseTo: (a: number, b: number, precision?: number) => boolean;
1
+ export declare const PRECISION = 0.0001;
2
+ export declare const clamp: (value: number, min: number, max: number) => number;
3
+ export declare const round: (value: number, precision: number, func?: "round" | "floor" | "ceil") => number;
4
+ export declare const roundToStep: (value: number, step: number, func?: "round" | "floor" | "ceil") => number;
5
+ export declare const average: (a: number, b: number) => number;
6
+ export declare const isFiniteNumber: (value: any) => value is number;
7
+ export declare const isCloseTo: (a: number, b: number, precision?: number) => boolean;
@@ -1,92 +1,92 @@
1
- import type { GlobalPoint, LocalPoint, Vector } from "./types";
2
- /**
3
- * Create a vector from the x and y coordiante elements.
4
- *
5
- * @param x The X aspect of the vector
6
- * @param y T Y aspect of the vector
7
- * @returns The constructed vector with X and Y as the coordinates
8
- */
9
- export declare function vector(x: number, y: number, originX?: number, originY?: number): Vector;
10
- /**
11
- * Turn a point into a vector with the origin point.
12
- *
13
- * @param p The point to turn into a vector
14
- * @param origin The origin point in a given coordiante system
15
- * @returns The created vector from the point and the origin
16
- */
17
- export declare function vectorFromPoint<Point extends GlobalPoint | LocalPoint>(p: Point, origin?: Point): Vector;
18
- /**
19
- * Cross product is a binary operation on two vectors in 2D space.
20
- * It results in a vector that is perpendicular to both vectors.
21
- *
22
- * @param a One of the vectors to use for the directed area calculation
23
- * @param b The other vector to use for the directed area calculation
24
- * @returns The directed area value for the two vectos
25
- */
26
- export declare function vectorCross(a: Vector, b: Vector): number;
27
- /**
28
- * Dot product is defined as the sum of the products of the
29
- * two vectors.
30
- *
31
- * @param a One of the vectors for which the sum of products is calculated
32
- * @param b The other vector for which the sum of products is calculated
33
- * @returns The sum of products of the two vectors
34
- */
35
- export declare function vectorDot(a: Vector, b: Vector): number;
36
- /**
37
- * Determines if the value has the shape of a Vector.
38
- *
39
- * @param v The value to test
40
- * @returns TRUE if the value has the shape and components of a Vectors
41
- */
42
- export declare function isVector(v: unknown): v is Vector;
43
- /**
44
- * Add two vectors by adding their coordinates.
45
- *
46
- * @param a One of the vectors to add
47
- * @param b The other vector to add
48
- * @returns The sum vector of the two provided vectors
49
- */
50
- export declare function vectorAdd(a: Readonly<Vector>, b: Readonly<Vector>): Vector;
51
- /**
52
- * Add two vectors by adding their coordinates.
53
- *
54
- * @param start One of the vectors to add
55
- * @param end The other vector to add
56
- * @returns The sum vector of the two provided vectors
57
- */
58
- export declare function vectorSubtract(start: Readonly<Vector>, end: Readonly<Vector>): Vector;
59
- /**
60
- * Scale vector by a scalar.
61
- *
62
- * @param v The vector to scale
63
- * @param scalar The scalar to multiply the vector components with
64
- * @returns The new scaled vector
65
- */
66
- export declare function vectorScale(v: Vector, scalar: number): Vector;
67
- /**
68
- * Calculates the sqare magnitude of a vector. Use this if you compare
69
- * magnitudes as it saves you an SQRT.
70
- *
71
- * @param v The vector to measure
72
- * @returns The scalar squared magnitude of the vector
73
- */
74
- export declare function vectorMagnitudeSq(v: Vector): number;
75
- /**
76
- * Calculates the magnitude of a vector.
77
- *
78
- * @param v The vector to measure
79
- * @returns The scalar magnitude of the vector
80
- */
81
- export declare function vectorMagnitude(v: Vector): number;
82
- /**
83
- * Normalize the vector (i.e. make the vector magnitue equal 1).
84
- *
85
- * @param v The vector to normalize
86
- * @returns The new normalized vector
87
- */
88
- export declare const vectorNormalize: (v: Vector) => Vector;
89
- /**
90
- * Project the first vector onto the second vector
91
- */
92
- export declare const vectorProjection: (a: Vector, b: Vector) => Vector;
1
+ import type { GlobalPoint, LocalPoint, Vector } from "./types";
2
+ /**
3
+ * Create a vector from the x and y coordiante elements.
4
+ *
5
+ * @param x The X aspect of the vector
6
+ * @param y T Y aspect of the vector
7
+ * @returns The constructed vector with X and Y as the coordinates
8
+ */
9
+ export declare function vector(x: number, y: number, originX?: number, originY?: number): Vector;
10
+ /**
11
+ * Turn a point into a vector with the origin point.
12
+ *
13
+ * @param p The point to turn into a vector
14
+ * @param origin The origin point in a given coordiante system
15
+ * @returns The created vector from the point and the origin
16
+ */
17
+ export declare function vectorFromPoint<Point extends GlobalPoint | LocalPoint>(p: Point, origin?: Point): Vector;
18
+ /**
19
+ * Cross product is a binary operation on two vectors in 2D space.
20
+ * It results in a vector that is perpendicular to both vectors.
21
+ *
22
+ * @param a One of the vectors to use for the directed area calculation
23
+ * @param b The other vector to use for the directed area calculation
24
+ * @returns The directed area value for the two vectos
25
+ */
26
+ export declare function vectorCross(a: Vector, b: Vector): number;
27
+ /**
28
+ * Dot product is defined as the sum of the products of the
29
+ * two vectors.
30
+ *
31
+ * @param a One of the vectors for which the sum of products is calculated
32
+ * @param b The other vector for which the sum of products is calculated
33
+ * @returns The sum of products of the two vectors
34
+ */
35
+ export declare function vectorDot(a: Vector, b: Vector): number;
36
+ /**
37
+ * Determines if the value has the shape of a Vector.
38
+ *
39
+ * @param v The value to test
40
+ * @returns TRUE if the value has the shape and components of a Vectors
41
+ */
42
+ export declare function isVector(v: unknown): v is Vector;
43
+ /**
44
+ * Add two vectors by adding their coordinates.
45
+ *
46
+ * @param a One of the vectors to add
47
+ * @param b The other vector to add
48
+ * @returns The sum vector of the two provided vectors
49
+ */
50
+ export declare function vectorAdd(a: Readonly<Vector>, b: Readonly<Vector>): Vector;
51
+ /**
52
+ * Add two vectors by adding their coordinates.
53
+ *
54
+ * @param start One of the vectors to add
55
+ * @param end The other vector to add
56
+ * @returns The sum vector of the two provided vectors
57
+ */
58
+ export declare function vectorSubtract(start: Readonly<Vector>, end: Readonly<Vector>): Vector;
59
+ /**
60
+ * Scale vector by a scalar.
61
+ *
62
+ * @param v The vector to scale
63
+ * @param scalar The scalar to multiply the vector components with
64
+ * @returns The new scaled vector
65
+ */
66
+ export declare function vectorScale(v: Vector, scalar: number): Vector;
67
+ /**
68
+ * Calculates the sqare magnitude of a vector. Use this if you compare
69
+ * magnitudes as it saves you an SQRT.
70
+ *
71
+ * @param v The vector to measure
72
+ * @returns The scalar squared magnitude of the vector
73
+ */
74
+ export declare function vectorMagnitudeSq(v: Vector): number;
75
+ /**
76
+ * Calculates the magnitude of a vector.
77
+ *
78
+ * @param v The vector to measure
79
+ * @returns The scalar magnitude of the vector
80
+ */
81
+ export declare function vectorMagnitude(v: Vector): number;
82
+ /**
83
+ * Normalize the vector (i.e. make the vector magnitue equal 1).
84
+ *
85
+ * @param v The vector to normalize
86
+ * @returns The new normalized vector
87
+ */
88
+ export declare const vectorNormalize: (v: Vector) => Vector;
89
+ /**
90
+ * Project the first vector onto the second vector
91
+ */
92
+ export declare const vectorProjection: (a: Vector, b: Vector) => Vector;
@@ -1,9 +1,9 @@
1
- import { type GlobalPoint, type LocalPoint } from "../math";
2
- import type { Bounds } from "../excalidraw/element/bounds";
3
- export type LineSegment<P extends LocalPoint | GlobalPoint> = [P, P];
4
- export declare function getBBox<P extends LocalPoint | GlobalPoint>(line: LineSegment<P>): Bounds;
5
- export declare function doBBoxesIntersect(a: Bounds, b: Bounds): boolean;
6
- export declare function isPointOnLine<P extends GlobalPoint | LocalPoint>(l: LineSegment<P>, p: P): boolean;
7
- export declare function isPointRightOfLine<P extends GlobalPoint | LocalPoint>(l: LineSegment<P>, p: P): boolean;
8
- export declare function isLineSegmentTouchingOrCrossingLine<P extends GlobalPoint | LocalPoint>(a: LineSegment<P>, b: LineSegment<P>): boolean;
9
- export declare function doLineSegmentsIntersect<P extends GlobalPoint | LocalPoint>(a: LineSegment<P>, b: LineSegment<P>): boolean;
1
+ import { type GlobalPoint, type LocalPoint } from "../math";
2
+ import type { Bounds } from "../excalidraw/element/bounds";
3
+ export type LineSegment<P extends LocalPoint | GlobalPoint> = [P, P];
4
+ export declare function getBBox<P extends LocalPoint | GlobalPoint>(line: LineSegment<P>): Bounds;
5
+ export declare function doBBoxesIntersect(a: Bounds, b: Bounds): boolean;
6
+ export declare function isPointOnLine<P extends GlobalPoint | LocalPoint>(l: LineSegment<P>, p: P): boolean;
7
+ export declare function isPointRightOfLine<P extends GlobalPoint | LocalPoint>(l: LineSegment<P>, p: P): boolean;
8
+ export declare function isLineSegmentTouchingOrCrossingLine<P extends GlobalPoint | LocalPoint>(a: LineSegment<P>, b: LineSegment<P>): boolean;
9
+ export declare function doLineSegmentsIntersect<P extends GlobalPoint | LocalPoint>(a: LineSegment<P>, b: LineSegment<P>): boolean;
@@ -1,9 +1,9 @@
1
- import type { Polyline } from "./geometry/shape";
2
- import { type GeometricShape } from "./geometry/shape";
3
- import type { Curve } from "../math";
4
- import { type GlobalPoint, type LocalPoint, type Polygon } from "../math";
5
- export declare const isPointOnShape: <Point extends GlobalPoint | LocalPoint>(point: Point, shape: GeometricShape<Point>, tolerance?: number) => boolean;
6
- export declare const isPointInShape: <Point extends GlobalPoint | LocalPoint>(point: Point, shape: GeometricShape<Point>) => boolean;
7
- export declare const isPointInBounds: <Point extends GlobalPoint | LocalPoint>(point: Point, bounds: Polygon<Point>) => boolean;
8
- export declare const pointOnCurve: <Point extends GlobalPoint | LocalPoint>(point: Point, curve: Curve<Point>, threshold: number) => boolean;
9
- export declare const pointOnPolyline: <Point extends GlobalPoint | LocalPoint>(point: Point, polyline: Polyline<Point>, threshold?: number) => boolean;
1
+ import type { Polyline } from "./geometry/shape";
2
+ import { type GeometricShape } from "./geometry/shape";
3
+ import type { Curve } from "../math";
4
+ import { type GlobalPoint, type LocalPoint, type Polygon } from "../math";
5
+ export declare const isPointOnShape: <Point extends GlobalPoint | LocalPoint>(point: Point, shape: GeometricShape<Point>, tolerance?: number) => boolean;
6
+ export declare const isPointInShape: <Point extends GlobalPoint | LocalPoint>(point: Point, shape: GeometricShape<Point>) => boolean;
7
+ export declare const isPointInBounds: <Point extends GlobalPoint | LocalPoint>(point: Point, bounds: Polygon<Point>) => boolean;
8
+ export declare const pointOnCurve: <Point extends GlobalPoint | LocalPoint>(point: Point, curve: Curve<Point>, threshold: number) => boolean;
9
+ export declare const pointOnPolyline: <Point extends GlobalPoint | LocalPoint>(point: Point, polyline: Polyline<Point>, threshold?: number) => boolean;
@@ -1,46 +1,46 @@
1
- import type { AppState, BinaryFiles } from "../excalidraw/types";
2
- import type { ExcalidrawElement, ExcalidrawFrameLikeElement, NonDeleted } from "../excalidraw/element/types";
3
- import { MIME_TYPES } from "../excalidraw/constants";
4
- export { MIME_TYPES };
5
- type ExportOpts = {
6
- elements: readonly NonDeleted<ExcalidrawElement>[];
7
- appState?: Partial<Omit<AppState, "offsetTop" | "offsetLeft">>;
8
- files: BinaryFiles | null;
9
- maxWidthOrHeight?: number;
10
- exportingFrame?: ExcalidrawFrameLikeElement | null;
11
- getDimensions?: (width: number, height: number) => {
12
- width: number;
13
- height: number;
14
- scale?: number;
15
- };
16
- };
17
- export declare const exportToCanvas: ({ elements, appState, files, maxWidthOrHeight, getDimensions, exportPadding, exportingFrame, }: ExportOpts & {
18
- exportPadding?: number | undefined;
19
- }) => Promise<HTMLCanvasElement>;
20
- export declare const exportToBlob: (opts: ExportOpts & {
21
- mimeType?: string;
22
- quality?: number;
23
- exportPadding?: number;
24
- }) => Promise<Blob>;
25
- export declare const exportToSvg: ({ elements, appState, files, exportPadding, renderEmbeddables, exportingFrame, skipInliningFonts, reuseImages, }: Omit<ExportOpts, "getDimensions"> & {
26
- exportPadding?: number | undefined;
27
- renderEmbeddables?: boolean | undefined;
28
- skipInliningFonts?: true | undefined;
29
- reuseImages?: boolean | undefined;
30
- }) => Promise<SVGSVGElement>;
31
- export declare const exportToClipboard: (opts: ExportOpts & {
32
- mimeType?: string;
33
- quality?: number;
34
- type: "png" | "svg" | "json";
35
- }) => Promise<void>;
36
- export { getCommonBoundingBox } from "../excalidraw/element/bounds";
37
- export { getMaximumGroups } from "../excalidraw/groups";
38
- export { intersectElementWithLine } from "../excalidraw/element/binding";
39
- export { determineFocusDistance } from "../excalidraw/element/binding";
40
- export { measureText } from "../excalidraw/element/textElement";
41
- export { wrapText } from "../excalidraw/element/textWrapping";
42
- export { getLineHeight } from "../excalidraw/fonts/index";
43
- export { getFontString, getFontFamilyString } from "../excalidraw/utils";
44
- export { getBoundTextMaxWidth } from "../excalidraw/element/textElement";
45
- export { mermaidToExcalidraw } from "../excalidraw/components/TTDDialog/MermaidToExcalidrawLib";
46
- export { destroyObsidianUtils, registerLocalFont, getFontFamilies, registerFontsInCSS, getCSSFontDefinition, loadSceneFonts, getSharedMermaidInstance, loadMermaid, } from "../excalidraw/obsidianUtils";
1
+ import type { AppState, BinaryFiles } from "../excalidraw/types";
2
+ import type { ExcalidrawElement, ExcalidrawFrameLikeElement, NonDeleted } from "../excalidraw/element/types";
3
+ import { MIME_TYPES } from "../excalidraw/constants";
4
+ export { MIME_TYPES };
5
+ type ExportOpts = {
6
+ elements: readonly NonDeleted<ExcalidrawElement>[];
7
+ appState?: Partial<Omit<AppState, "offsetTop" | "offsetLeft">>;
8
+ files: BinaryFiles | null;
9
+ maxWidthOrHeight?: number;
10
+ exportingFrame?: ExcalidrawFrameLikeElement | null;
11
+ getDimensions?: (width: number, height: number) => {
12
+ width: number;
13
+ height: number;
14
+ scale?: number;
15
+ };
16
+ };
17
+ export declare const exportToCanvas: ({ elements, appState, files, maxWidthOrHeight, getDimensions, exportPadding, exportingFrame, }: ExportOpts & {
18
+ exportPadding?: number | undefined;
19
+ }) => Promise<HTMLCanvasElement>;
20
+ export declare const exportToBlob: (opts: ExportOpts & {
21
+ mimeType?: string;
22
+ quality?: number;
23
+ exportPadding?: number;
24
+ }) => Promise<Blob>;
25
+ export declare const exportToSvg: ({ elements, appState, files, exportPadding, renderEmbeddables, exportingFrame, skipInliningFonts, reuseImages, }: Omit<ExportOpts, "getDimensions"> & {
26
+ exportPadding?: number | undefined;
27
+ renderEmbeddables?: boolean | undefined;
28
+ skipInliningFonts?: true | undefined;
29
+ reuseImages?: boolean | undefined;
30
+ }) => Promise<SVGSVGElement>;
31
+ export declare const exportToClipboard: (opts: ExportOpts & {
32
+ mimeType?: string;
33
+ quality?: number;
34
+ type: "png" | "svg" | "json";
35
+ }) => Promise<void>;
36
+ export { getCommonBoundingBox } from "../excalidraw/element/bounds";
37
+ export { getMaximumGroups } from "../excalidraw/groups";
38
+ export { intersectElementWithLine } from "../excalidraw/element/binding";
39
+ export { determineFocusDistance } from "../excalidraw/element/binding";
40
+ export { measureText } from "../excalidraw/element/textElement";
41
+ export { wrapText } from "../excalidraw/element/textWrapping";
42
+ export { getLineHeight } from "../excalidraw/fonts/index";
43
+ export { getFontString, getFontFamilyString } from "../excalidraw/utils";
44
+ export { getBoundTextMaxWidth } from "../excalidraw/element/textElement";
45
+ export { mermaidToExcalidraw } from "../excalidraw/components/TTDDialog/MermaidToExcalidrawLib";
46
+ export { destroyObsidianUtils, registerLocalFont, getFontFamilies, registerFontsInCSS, getCSSFontDefinition, loadSceneFonts, getSharedMermaidInstance, loadMermaid, } from "../excalidraw/obsidianUtils";
@@ -0,0 +1,89 @@
1
+ import type { ExcalidrawBindableElement } from "../../excalidraw/element/types";
2
+ import type { LineSegment } from "../bbox";
3
+ import type { Point, Line, Polygon, Curve, Ellipse, Polycurve, Polyline } from "./shape";
4
+ /**
5
+ * utils
6
+ */
7
+ export declare const cross: (a: readonly [number, number], b: readonly [number, number], o: readonly [number, number]) => number;
8
+ export declare const dot: (a: readonly [number, number], b: readonly [number, number], o: readonly [number, number]) => number;
9
+ export declare const isClosed: (polygon: Polygon) => boolean;
10
+ export declare const close: (polygon: Polygon) => Polygon;
11
+ /**
12
+ * angles
13
+ */
14
+ export declare const angleToDegrees: (angle: number) => number;
15
+ export declare const angleToRadians: (angle: number) => number;
16
+ export declare const angleReflect: (incidenceAngle: number, surfaceAngle: number) => number;
17
+ export declare const pointRotate: (point: Point, angle: number, origin?: Point) => Point;
18
+ export declare const pointTranslate: (point: Point, angle?: number, distance?: number) => Point;
19
+ export declare const pointInverse: (point: Point) => Point;
20
+ export declare const pointAdd: (pointA: Point, pointB: Point) => Point;
21
+ export declare const distanceToPoint: (p1: Point, p2: Point) => number;
22
+ /**
23
+ * lines
24
+ */
25
+ export declare const lineAngle: (line: Line) => number;
26
+ export declare const lineLength: (line: Line) => number;
27
+ export declare const lineMidpoint: (line: Line) => Point;
28
+ export declare const lineRotate: (line: Line, angle: number, origin?: Point) => Line;
29
+ export declare const lineTranslate: (line: Line, angle: number, distance: number) => Point[];
30
+ export declare const lineInterpolate: (line: Line, clamp?: boolean) => (t: number) => Point;
31
+ export declare const curveToBezier: (pointsIn: readonly Point[], curveTightness?: number) => Point[];
32
+ export declare const curveRotate: (curve: Curve, angle: number, origin: Point) => Point[];
33
+ export declare const cubicBezierPoint: (t: number, controlPoints: Curve) => Point;
34
+ export declare const cubicBezierDistance: (point: Point, controlPoints: Curve) => number;
35
+ /**
36
+ * polygons
37
+ */
38
+ export declare const polygonRotate: (polygon: Polygon, angle: number, origin: Point) => Point[];
39
+ export declare const polygonBounds: (polygon: Polygon) => [Point, Point];
40
+ export declare const polygonCentroid: (vertices: Point[]) => Point;
41
+ export declare const polygonScale: (polygon: Polygon, scale: number, origin?: Point) => Polygon;
42
+ export declare const polygonScaleX: (polygon: Polygon, scale: number, origin?: Point) => Polygon;
43
+ export declare const polygonScaleY: (polygon: Polygon, scale: number, origin?: Point) => Polygon;
44
+ export declare const polygonReflectX: (polygon: Polygon, reflectFactor?: number) => Point[];
45
+ export declare const polygonReflectY: (polygon: Polygon, reflectFactor?: number) => Point[];
46
+ export declare const polygonTranslate: (polygon: Polygon, angle: number, distance: number) => Point[];
47
+ /**
48
+ * ellipses
49
+ */
50
+ export declare const ellipseAxes: (ellipse: Ellipse) => {
51
+ majorAxis: number;
52
+ minorAxis: number;
53
+ };
54
+ export declare const ellipseFocusToCenter: (ellipse: Ellipse) => number;
55
+ export declare const ellipseExtremes: (ellipse: Ellipse) => Point[];
56
+ export declare const pointRelativeToCenter: (point: Point, center: Point, angle: number) => Point;
57
+ export declare const pointLeftofLine: (point: Point, line: Line) => boolean;
58
+ export declare const pointRightofLine: (point: Point, line: Line) => boolean;
59
+ export declare const distanceToSegment: (point: Point, line: Line) => number;
60
+ export declare const pointOnLine: (point: Point, line: Line, threshold?: number) => boolean;
61
+ export declare const pointOnPolyline: (point: Point, polyline: Polyline, threshold?: number) => boolean;
62
+ export declare const lineIntersectsLine: (lineA: Line, lineB: Line) => boolean;
63
+ export declare const lineIntersectsPolygon: (line: Line, polygon: Polygon) => boolean;
64
+ export declare const pointInBezierEquation: (p0: Point, p1: Point, p2: Point, p3: Point, [mx, my]: Point, lineThreshold: number) => boolean;
65
+ export declare const cubicBezierEquation: (curve: Curve) => (t: number, idx: number) => number;
66
+ export declare const polyLineFromCurve: (curve: Curve, segments?: number) => Polyline;
67
+ export declare const pointOnCurve: (point: Point, curve: Curve, threshold?: number) => boolean;
68
+ export declare const pointOnPolycurve: (point: Point, polycurve: Polycurve, threshold?: number) => boolean;
69
+ export declare const pointInPolygon: (point: Point, polygon: Polygon) => boolean;
70
+ export declare const pointOnPolygon: (point: Point, polygon: Polygon, threshold?: number) => boolean;
71
+ export declare const polygonInPolygon: (polygonA: Polygon, polygonB: Polygon) => boolean;
72
+ export declare const polygonIntersectPolygon: (polygonA: Polygon, polygonB: Polygon) => boolean;
73
+ export declare const pointOnEllipse: (point: Point, ellipse: Ellipse, threshold?: number) => boolean;
74
+ export declare const pointInEllipse: (point: Point, ellipse: Ellipse) => boolean;
75
+ /**
76
+ * Calculates the point two line segments with a definite start and end point
77
+ * intersect at.
78
+ */
79
+ export declare const segmentsIntersectAt: (a: readonly [readonly [number, number], readonly [number, number]], b: readonly [readonly [number, number], readonly [number, number]]) => Point | null;
80
+ /**
81
+ * Determine intersection of a rectangular shaped element and a
82
+ * line segment.
83
+ *
84
+ * @param element The rectangular element to test against
85
+ * @param segment The segment intersecting the element
86
+ * @param gap Optional value to inflate the shape before testing
87
+ * @returns An array of intersections
88
+ */
89
+ export declare const segmentIntersectRectangleElement: (element: ExcalidrawBindableElement, segment: LineSegment, gap?: number) => Point[];