@myoc/element 0.19.5-ffbfd9327

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 (369) hide show
  1. package/README.md +19 -0
  2. package/dist/dev/index.js +21413 -0
  3. package/dist/dev/index.js.map +7 -0
  4. package/dist/prod/index.js +27 -0
  5. package/dist/types/common/src/binary-heap.d.ts +12 -0
  6. package/dist/types/common/src/bounds.d.ts +10 -0
  7. package/dist/types/common/src/colors.d.ts +82 -0
  8. package/dist/types/common/src/constants.d.ts +352 -0
  9. package/dist/types/common/src/editorInterface.d.ts +34 -0
  10. package/dist/types/common/src/emitter.d.ts +16 -0
  11. package/dist/types/common/src/font-metadata.d.ts +46 -0
  12. package/dist/types/common/src/index.d.ts +14 -0
  13. package/dist/types/common/src/keys.d.ts +189 -0
  14. package/dist/types/common/src/points.d.ts +9 -0
  15. package/dist/types/common/src/promise-pool.d.ts +6 -0
  16. package/dist/types/common/src/queue.d.ts +9 -0
  17. package/dist/types/common/src/random.d.ts +3 -0
  18. package/dist/types/common/src/url.d.ts +7 -0
  19. package/dist/types/common/src/utility-types.d.ts +37 -0
  20. package/dist/types/common/src/utils.d.ts +282 -0
  21. package/dist/types/element/src/Scene.d.ts +80 -0
  22. package/dist/types/element/src/align.d.ts +8 -0
  23. package/dist/types/element/src/arrange-algorithms/packer.d.ts +30 -0
  24. package/dist/types/element/src/arrange.d.ts +4 -0
  25. package/dist/types/element/src/binding.d.ts +124 -0
  26. package/dist/types/element/src/bounds.d.ts +81 -0
  27. package/dist/types/element/src/collision.d.ts +36 -0
  28. package/dist/types/element/src/comparisons.d.ts +8 -0
  29. package/dist/types/element/src/containerCache.d.ts +11 -0
  30. package/dist/types/element/src/cropElement.d.ts +19 -0
  31. package/dist/types/element/src/delta.d.ts +228 -0
  32. package/dist/types/element/src/distance.d.ts +3 -0
  33. package/dist/types/element/src/distribute.d.ts +7 -0
  34. package/dist/types/element/src/dragElements.d.ts +33 -0
  35. package/dist/types/element/src/duplicate.d.ts +63 -0
  36. package/dist/types/element/src/elbowArrow.d.ts +17 -0
  37. package/dist/types/element/src/elementLink.d.ts +13 -0
  38. package/dist/types/element/src/embeddable.d.ts +10 -0
  39. package/dist/types/element/src/flowchart.d.ts +26 -0
  40. package/dist/types/element/src/fractionalIndex.d.ts +57 -0
  41. package/dist/types/element/src/frame.d.ts +74 -0
  42. package/dist/types/element/src/groups.d.ts +34 -0
  43. package/dist/types/element/src/heading.d.ts +16 -0
  44. package/dist/types/element/src/image.d.ts +22 -0
  45. package/dist/types/element/src/index.d.ts +58 -0
  46. package/dist/types/element/src/linearElementEditor.d.ts +113 -0
  47. package/dist/types/element/src/mutateElement.d.ts +23 -0
  48. package/dist/types/element/src/newElement.d.ts +62 -0
  49. package/dist/types/element/src/normalise.d.ts +6 -0
  50. package/dist/types/element/src/positionElementsOnGrid.d.ts +2 -0
  51. package/dist/types/element/src/renderElement.d.ts +25 -0
  52. package/dist/types/element/src/resizeElements.d.ts +32 -0
  53. package/dist/types/element/src/resizeTest.d.ts +16 -0
  54. package/dist/types/element/src/selection.d.ts +34 -0
  55. package/dist/types/element/src/shape.d.ts +43 -0
  56. package/dist/types/element/src/shapes.d.ts +245 -0
  57. package/dist/types/element/src/showSelectedShapeActions.d.ts +3 -0
  58. package/dist/types/element/src/sizeHelpers.d.ts +35 -0
  59. package/dist/types/element/src/sortElements.d.ts +2 -0
  60. package/dist/types/element/src/store.d.ts +237 -0
  61. package/dist/types/element/src/textElement.d.ts +40 -0
  62. package/dist/types/element/src/textMeasurements.d.ts +39 -0
  63. package/dist/types/element/src/textWrapping.d.ts +13 -0
  64. package/dist/types/element/src/transform.d.ts +81 -0
  65. package/dist/types/element/src/transformHandles.d.ts +36 -0
  66. package/dist/types/element/src/typeChecks.d.ts +54 -0
  67. package/dist/types/element/src/types.d.ts +292 -0
  68. package/dist/types/element/src/utils.d.ts +34 -0
  69. package/dist/types/element/src/visualdebug.d.ts +59 -0
  70. package/dist/types/element/src/zindex.d.ts +13 -0
  71. package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +509 -0
  72. package/dist/types/excalidraw/actions/actionAlign.d.ts +109 -0
  73. package/dist/types/excalidraw/actions/actionArrange.d.ts +29 -0
  74. package/dist/types/excalidraw/actions/actionBoundText.d.ts +376 -0
  75. package/dist/types/excalidraw/actions/actionCanvas.d.ts +1978 -0
  76. package/dist/types/excalidraw/actions/actionClipboard.d.ts +415 -0
  77. package/dist/types/excalidraw/actions/actionCropEditor.d.ts +182 -0
  78. package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +543 -0
  79. package/dist/types/excalidraw/actions/actionDistribute.d.ts +34 -0
  80. package/dist/types/excalidraw/actions/actionDuplicateSelection.d.ts +17 -0
  81. package/dist/types/excalidraw/actions/actionElementLink.d.ts +205 -0
  82. package/dist/types/excalidraw/actions/actionElementLock.d.ts +362 -0
  83. package/dist/types/excalidraw/actions/actionEmbeddable.d.ts +179 -0
  84. package/dist/types/excalidraw/actions/actionExport.d.ts +718 -0
  85. package/dist/types/excalidraw/actions/actionFinalize.d.ts +13 -0
  86. package/dist/types/excalidraw/actions/actionFlip.d.ts +34 -0
  87. package/dist/types/excalidraw/actions/actionFrame.d.ts +1182 -0
  88. package/dist/types/excalidraw/actions/actionGroup.d.ts +366 -0
  89. package/dist/types/excalidraw/actions/actionHistory.d.ts +6 -0
  90. package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +667 -0
  91. package/dist/types/excalidraw/actions/actionLink.d.ts +183 -0
  92. package/dist/types/excalidraw/actions/actionMenu.d.ts +174 -0
  93. package/dist/types/excalidraw/actions/actionNavigate.d.ts +20 -0
  94. package/dist/types/excalidraw/actions/actionNormalise.d.ts +26 -0
  95. package/dist/types/excalidraw/actions/actionProperties.d.ts +418 -0
  96. package/dist/types/excalidraw/actions/actionSelectAll.d.ts +178 -0
  97. package/dist/types/excalidraw/actions/actionSmartZoom.d.ts +16 -0
  98. package/dist/types/excalidraw/actions/actionStyles.d.ts +196 -0
  99. package/dist/types/excalidraw/actions/actionTextAutoResize.d.ts +17 -0
  100. package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +185 -0
  101. package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +183 -0
  102. package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +177 -0
  103. package/dist/types/excalidraw/actions/actionToggleShapeSwitch.d.ts +19 -0
  104. package/dist/types/excalidraw/actions/actionToggleStats.d.ts +182 -0
  105. package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +184 -0
  106. package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +183 -0
  107. package/dist/types/excalidraw/actions/actionZindex.d.ts +74 -0
  108. package/dist/types/excalidraw/actions/index.d.ts +30 -0
  109. package/dist/types/excalidraw/actions/manager.d.ts +21 -0
  110. package/dist/types/excalidraw/actions/register.d.ts +5 -0
  111. package/dist/types/excalidraw/actions/shortcuts.d.ts +4 -0
  112. package/dist/types/excalidraw/actions/types.d.ts +47 -0
  113. package/dist/types/excalidraw/analytics.d.ts +1 -0
  114. package/dist/types/excalidraw/animated-trail.d.ts +39 -0
  115. package/dist/types/excalidraw/animation-frame-handler.d.ts +16 -0
  116. package/dist/types/excalidraw/appState.d.ts +113 -0
  117. package/dist/types/excalidraw/charts.d.ts +27 -0
  118. package/dist/types/excalidraw/clients.d.ts +14 -0
  119. package/dist/types/excalidraw/clipboard.d.ts +105 -0
  120. package/dist/types/excalidraw/components/Actions.d.ts +47 -0
  121. package/dist/types/excalidraw/components/App.d.ts +562 -0
  122. package/dist/types/excalidraw/components/Avatar.d.ts +11 -0
  123. package/dist/types/excalidraw/components/BraveMeasureTextError.d.ts +2 -0
  124. package/dist/types/excalidraw/components/Button.d.ts +17 -0
  125. package/dist/types/excalidraw/components/ButtonIcon.d.ts +16 -0
  126. package/dist/types/excalidraw/components/ButtonSeparator.d.ts +1 -0
  127. package/dist/types/excalidraw/components/Card.d.ts +5 -0
  128. package/dist/types/excalidraw/components/CheckboxItem.d.ts +8 -0
  129. package/dist/types/excalidraw/components/ColorPicker/ColorInput.d.ts +8 -0
  130. package/dist/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +22 -0
  131. package/dist/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +8 -0
  132. package/dist/types/excalidraw/components/ColorPicker/HotkeyLabel.d.ts +7 -0
  133. package/dist/types/excalidraw/components/ColorPicker/Picker.d.ts +19 -0
  134. package/dist/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +10 -0
  135. package/dist/types/excalidraw/components/ColorPicker/PickerHeading.d.ts +5 -0
  136. package/dist/types/excalidraw/components/ColorPicker/ShadeList.d.ts +9 -0
  137. package/dist/types/excalidraw/components/ColorPicker/TopPicks.d.ts +9 -0
  138. package/dist/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +20 -0
  139. package/dist/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +20 -0
  140. package/dist/types/excalidraw/components/CommandPalette/CommandPalette.d.ts +19 -0
  141. package/dist/types/excalidraw/components/CommandPalette/defaultCommandPaletteItems.d.ts +2 -0
  142. package/dist/types/excalidraw/components/CommandPalette/types.d.ts +24 -0
  143. package/dist/types/excalidraw/components/ConfirmDialog.d.ts +10 -0
  144. package/dist/types/excalidraw/components/ContextMenu.d.ts +16 -0
  145. package/dist/types/excalidraw/components/ConvertElementTypePopup.d.ts +23 -0
  146. package/dist/types/excalidraw/components/DarkModeToggle.d.ts +7 -0
  147. package/dist/types/excalidraw/components/DefaultSidebar.d.ts +27 -0
  148. package/dist/types/excalidraw/components/DiagramToCodePlugin/DiagramToCodePlugin.d.ts +4 -0
  149. package/dist/types/excalidraw/components/Dialog.d.ts +14 -0
  150. package/dist/types/excalidraw/components/DialogActionButton.d.ts +10 -0
  151. package/dist/types/excalidraw/components/ElementCanvasButtons.d.ts +7 -0
  152. package/dist/types/excalidraw/components/ElementLinkDialog.d.ts +12 -0
  153. package/dist/types/excalidraw/components/Ellipsify.d.ts +3 -0
  154. package/dist/types/excalidraw/components/ErrorDialog.d.ts +5 -0
  155. package/dist/types/excalidraw/components/ExcalidrawLogo.d.ts +15 -0
  156. package/dist/types/excalidraw/components/EyeDropper.d.ts +27 -0
  157. package/dist/types/excalidraw/components/FilledButton.d.ts +19 -0
  158. package/dist/types/excalidraw/components/FixedSideContainer.d.ts +9 -0
  159. package/dist/types/excalidraw/components/FollowMode/FollowMode.d.ts +10 -0
  160. package/dist/types/excalidraw/components/FontPicker/FontPicker.d.ts +22 -0
  161. package/dist/types/excalidraw/components/FontPicker/FontPickerList.d.ts +26 -0
  162. package/dist/types/excalidraw/components/FontPicker/FontPickerTrigger.d.ts +8 -0
  163. package/dist/types/excalidraw/components/FontPicker/keyboardNavHandlers.d.ts +13 -0
  164. package/dist/types/excalidraw/components/HandButton.d.ts +10 -0
  165. package/dist/types/excalidraw/components/HelpButton.d.ts +7 -0
  166. package/dist/types/excalidraw/components/HelpDialog/BasicHelpDialog.d.ts +1 -0
  167. package/dist/types/excalidraw/components/HelpDialog.d.ts +4 -0
  168. package/dist/types/excalidraw/components/HintViewer.d.ts +11 -0
  169. package/dist/types/excalidraw/components/IconPicker.d.ts +15 -0
  170. package/dist/types/excalidraw/components/ImageExportDialog.d.ts +14 -0
  171. package/dist/types/excalidraw/components/InitializeApp.d.ts +10 -0
  172. package/dist/types/excalidraw/components/InlineIcon.d.ts +5 -0
  173. package/dist/types/excalidraw/components/Island.d.ts +10 -0
  174. package/dist/types/excalidraw/components/JSONExportDialog.d.ts +15 -0
  175. package/dist/types/excalidraw/components/LaserPointerButton.d.ts +10 -0
  176. package/dist/types/excalidraw/components/LayerUI.d.ts +32 -0
  177. package/dist/types/excalidraw/components/LibraryMenu.d.ts +10 -0
  178. package/dist/types/excalidraw/components/LibraryMenuBrowseButton.d.ts +7 -0
  179. package/dist/types/excalidraw/components/LibraryMenuControlButtons.d.ts +9 -0
  180. package/dist/types/excalidraw/components/LibraryMenuHeaderContent.d.ts +17 -0
  181. package/dist/types/excalidraw/components/LibraryMenuItems.d.ts +14 -0
  182. package/dist/types/excalidraw/components/LibraryMenuSection.d.ts +23 -0
  183. package/dist/types/excalidraw/components/LibraryUnit.d.ts +14 -0
  184. package/dist/types/excalidraw/components/LoadingMessage.d.ts +5 -0
  185. package/dist/types/excalidraw/components/MagicButton.d.ts +10 -0
  186. package/dist/types/excalidraw/components/MobileMenu.d.ts +23 -0
  187. package/dist/types/excalidraw/components/MobileToolBar.d.ts +10 -0
  188. package/dist/types/excalidraw/components/Modal.d.ts +11 -0
  189. package/dist/types/excalidraw/components/OverwriteConfirm/OverwriteConfirm.d.ts +17 -0
  190. package/dist/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmActions.d.ts +17 -0
  191. package/dist/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmState.d.ts +22 -0
  192. package/dist/types/excalidraw/components/PasteChartDialog.d.ts +8 -0
  193. package/dist/types/excalidraw/components/PenModeButton.d.ts +12 -0
  194. package/dist/types/excalidraw/components/Popover.d.ts +16 -0
  195. package/dist/types/excalidraw/components/ProjectName.d.ts +10 -0
  196. package/dist/types/excalidraw/components/PropertiesPopover.d.ts +16 -0
  197. package/dist/types/excalidraw/components/PublishLibrary.d.ts +16 -0
  198. package/dist/types/excalidraw/components/QuickSearch.d.ts +9 -0
  199. package/dist/types/excalidraw/components/RadioGroup.d.ts +13 -0
  200. package/dist/types/excalidraw/components/RadioSelection.d.ts +20 -0
  201. package/dist/types/excalidraw/components/Range.d.ts +8 -0
  202. package/dist/types/excalidraw/components/SVGLayer.d.ts +7 -0
  203. package/dist/types/excalidraw/components/ScrollableList.d.ts +8 -0
  204. package/dist/types/excalidraw/components/SearchMenu.d.ts +5 -0
  205. package/dist/types/excalidraw/components/Section.d.ts +6 -0
  206. package/dist/types/excalidraw/components/Sidebar/Sidebar.d.ts +70 -0
  207. package/dist/types/excalidraw/components/Sidebar/SidebarHeader.d.ts +7 -0
  208. package/dist/types/excalidraw/components/Sidebar/SidebarTab.d.ts +8 -0
  209. package/dist/types/excalidraw/components/Sidebar/SidebarTabTrigger.d.ts +9 -0
  210. package/dist/types/excalidraw/components/Sidebar/SidebarTabTriggers.d.ts +6 -0
  211. package/dist/types/excalidraw/components/Sidebar/SidebarTabs.d.ts +6 -0
  212. package/dist/types/excalidraw/components/Sidebar/SidebarTrigger.d.ts +6 -0
  213. package/dist/types/excalidraw/components/Sidebar/common.d.ts +34 -0
  214. package/dist/types/excalidraw/components/Spinner.d.ts +8 -0
  215. package/dist/types/excalidraw/components/Stack.d.ts +15 -0
  216. package/dist/types/excalidraw/components/Stats/Angle.d.ts +11 -0
  217. package/dist/types/excalidraw/components/Stats/CanvasGrid.d.ts +10 -0
  218. package/dist/types/excalidraw/components/Stats/Collapsible.d.ts +10 -0
  219. package/dist/types/excalidraw/components/Stats/Dimension.d.ts +11 -0
  220. package/dist/types/excalidraw/components/Stats/DragInput.d.ts +44 -0
  221. package/dist/types/excalidraw/components/Stats/FontSize.d.ts +11 -0
  222. package/dist/types/excalidraw/components/Stats/MultiAngle.d.ts +11 -0
  223. package/dist/types/excalidraw/components/Stats/MultiDimension.d.ts +14 -0
  224. package/dist/types/excalidraw/components/Stats/MultiFontSize.d.ts +12 -0
  225. package/dist/types/excalidraw/components/Stats/MultiPosition.d.ts +14 -0
  226. package/dist/types/excalidraw/components/Stats/Position.d.ts +12 -0
  227. package/dist/types/excalidraw/components/Stats/index.d.ts +35 -0
  228. package/dist/types/excalidraw/components/Stats/utils.d.ts +19 -0
  229. package/dist/types/excalidraw/components/Switch.d.ts +9 -0
  230. package/dist/types/excalidraw/components/TextField.d.ts +22 -0
  231. package/dist/types/excalidraw/components/Toast.d.ts +9 -0
  232. package/dist/types/excalidraw/components/ToolButton.d.ts +49 -0
  233. package/dist/types/excalidraw/components/ToolPopover.d.ts +25 -0
  234. package/dist/types/excalidraw/components/Tooltip.d.ts +18 -0
  235. package/dist/types/excalidraw/components/Trans.d.ts +9 -0
  236. package/dist/types/excalidraw/components/UnlockPopup.d.ts +8 -0
  237. package/dist/types/excalidraw/components/UserList.d.ts +18 -0
  238. package/dist/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +33 -0
  239. package/dist/types/excalidraw/components/canvases/NewElementCanvas.d.ts +14 -0
  240. package/dist/types/excalidraw/components/canvases/StaticCanvas.d.ts +19 -0
  241. package/dist/types/excalidraw/components/canvases/index.d.ts +3 -0
  242. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenu.d.ts +85 -0
  243. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuContent.d.ts +16 -0
  244. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuGroup.d.ts +11 -0
  245. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItem.d.ts +39 -0
  246. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContent.d.ts +9 -0
  247. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContentRadio.d.ts +17 -0
  248. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemCustom.d.ts +7 -0
  249. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemLink.d.ts +16 -0
  250. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuSeparator.d.ts +5 -0
  251. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuTrigger.d.ts +10 -0
  252. package/dist/types/excalidraw/components/dropdownMenu/common.d.ts +6 -0
  253. package/dist/types/excalidraw/components/dropdownMenu/dropdownMenuUtils.d.ts +3 -0
  254. package/dist/types/excalidraw/components/footer/Footer.d.ts +12 -0
  255. package/dist/types/excalidraw/components/footer/FooterCenter.d.ts +8 -0
  256. package/dist/types/excalidraw/components/hoc/withInternalFallback.d.ts +4 -0
  257. package/dist/types/excalidraw/components/hyperlink/Hyperlink.d.ts +19 -0
  258. package/dist/types/excalidraw/components/hyperlink/helpers.d.ts +10 -0
  259. package/dist/types/excalidraw/components/icons.d.ts +241 -0
  260. package/dist/types/excalidraw/components/live-collaboration/LiveCollaborationTrigger.d.ts +11 -0
  261. package/dist/types/excalidraw/components/main-menu/DefaultItems.d.ts +60 -0
  262. package/dist/types/excalidraw/components/main-menu/MainMenu.d.ts +77 -0
  263. package/dist/types/excalidraw/components/welcome-screen/WelcomeScreen.Center.d.ts +58 -0
  264. package/dist/types/excalidraw/components/welcome-screen/WelcomeScreen.Hints.d.ts +19 -0
  265. package/dist/types/excalidraw/components/welcome-screen/WelcomeScreen.d.ts +84 -0
  266. package/dist/types/excalidraw/context/tunnels.d.ts +21 -0
  267. package/dist/types/excalidraw/context/ui-appState.d.ts +4 -0
  268. package/dist/types/excalidraw/cursor.d.ts +5 -0
  269. package/dist/types/excalidraw/data/EditorLocalStorage.d.ts +8 -0
  270. package/dist/types/excalidraw/data/blob.d.ts +385 -0
  271. package/dist/types/excalidraw/data/encode.d.ts +55 -0
  272. package/dist/types/excalidraw/data/encryption.d.ts +9 -0
  273. package/dist/types/excalidraw/data/filesystem.d.ts +21 -0
  274. package/dist/types/excalidraw/data/image.d.ts +9 -0
  275. package/dist/types/excalidraw/data/index.d.ts +22 -0
  276. package/dist/types/excalidraw/data/json.d.ts +182 -0
  277. package/dist/types/excalidraw/data/library.d.ts +127 -0
  278. package/dist/types/excalidraw/data/reconcile.d.ts +7 -0
  279. package/dist/types/excalidraw/data/resave.d.ts +5 -0
  280. package/dist/types/excalidraw/data/restore.d.ts +41 -0
  281. package/dist/types/excalidraw/data/types.d.ts +48 -0
  282. package/dist/types/excalidraw/deburr.d.ts +1 -0
  283. package/dist/types/excalidraw/editor-jotai.d.ts +56 -0
  284. package/dist/types/excalidraw/eraser/index.d.ts +12 -0
  285. package/dist/types/excalidraw/errors.d.ts +43 -0
  286. package/dist/types/excalidraw/fonts/Cascadia/index.d.ts +2 -0
  287. package/dist/types/excalidraw/fonts/ComicShanns/index.d.ts +2 -0
  288. package/dist/types/excalidraw/fonts/Emoji/index.d.ts +2 -0
  289. package/dist/types/excalidraw/fonts/ExcalidrawFontFace.d.ts +25 -0
  290. package/dist/types/excalidraw/fonts/Excalifont/index.d.ts +2 -0
  291. package/dist/types/excalidraw/fonts/Fonts.d.ts +79 -0
  292. package/dist/types/excalidraw/fonts/Helvetica/index.d.ts +2 -0
  293. package/dist/types/excalidraw/fonts/Liberation/index.d.ts +2 -0
  294. package/dist/types/excalidraw/fonts/Lilita/index.d.ts +2 -0
  295. package/dist/types/excalidraw/fonts/Nunito/index.d.ts +2 -0
  296. package/dist/types/excalidraw/fonts/Virgil/index.d.ts +2 -0
  297. package/dist/types/excalidraw/fonts/Xiaolai/index.d.ts +8 -0
  298. package/dist/types/excalidraw/fonts/index.d.ts +1 -0
  299. package/dist/types/excalidraw/gesture.d.ts +6 -0
  300. package/dist/types/excalidraw/history.d.ts +48 -0
  301. package/dist/types/excalidraw/hooks/useCallbackRefState.d.ts +1 -0
  302. package/dist/types/excalidraw/hooks/useCopiedIndicator.d.ts +5 -0
  303. package/dist/types/excalidraw/hooks/useCreatePortalContainer.d.ts +4 -0
  304. package/dist/types/excalidraw/hooks/useEmitter.d.ts +2 -0
  305. package/dist/types/excalidraw/hooks/useLibraryItemSvg.d.ts +11 -0
  306. package/dist/types/excalidraw/hooks/useOutsideClick.d.ts +21 -0
  307. package/dist/types/excalidraw/hooks/useScrollPosition.d.ts +1 -0
  308. package/dist/types/excalidraw/hooks/useStable.d.ts +1 -0
  309. package/dist/types/excalidraw/hooks/useStableCallback.d.ts +4 -0
  310. package/dist/types/excalidraw/hooks/useTextEditorFocus.d.ts +14 -0
  311. package/dist/types/excalidraw/hooks/useTransition.d.ts +2 -0
  312. package/dist/types/excalidraw/i18n.d.ts +24 -0
  313. package/dist/types/excalidraw/index.d.ts +42 -0
  314. package/dist/types/excalidraw/laser-trails.d.ts +20 -0
  315. package/dist/types/excalidraw/lasso/index.d.ts +16 -0
  316. package/dist/types/excalidraw/lasso/utils.d.ts +13 -0
  317. package/dist/types/excalidraw/polyfill.d.ts +2 -0
  318. package/dist/types/excalidraw/reactUtils.d.ts +14 -0
  319. package/dist/types/excalidraw/renderer/animation.d.ts +12 -0
  320. package/dist/types/excalidraw/renderer/helpers.d.ts +16 -0
  321. package/dist/types/excalidraw/renderer/interactiveScene.d.ts +14 -0
  322. package/dist/types/excalidraw/renderer/renderNewElementScene.d.ts +7 -0
  323. package/dist/types/excalidraw/renderer/renderSnaps.d.ts +2 -0
  324. package/dist/types/excalidraw/renderer/roundRect.d.ts +11 -0
  325. package/dist/types/excalidraw/renderer/staticScene.d.ts +14 -0
  326. package/dist/types/excalidraw/renderer/staticSvgScene.d.ts +5 -0
  327. package/dist/types/excalidraw/scene/Renderer.d.ts +30 -0
  328. package/dist/types/excalidraw/scene/export.d.ts +36 -0
  329. package/dist/types/excalidraw/scene/index.d.ts +4 -0
  330. package/dist/types/excalidraw/scene/normalize.d.ts +4 -0
  331. package/dist/types/excalidraw/scene/scroll.d.ts +18 -0
  332. package/dist/types/excalidraw/scene/scrollbars.d.ts +11 -0
  333. package/dist/types/excalidraw/scene/types.d.ts +137 -0
  334. package/dist/types/excalidraw/scene/zoom.d.ts +12 -0
  335. package/dist/types/excalidraw/shortcut.d.ts +1 -0
  336. package/dist/types/excalidraw/snapping.d.ts +111 -0
  337. package/dist/types/excalidraw/subset/harfbuzz/harfbuzz-bindings.d.ts +45 -0
  338. package/dist/types/excalidraw/subset/harfbuzz/harfbuzz-loader.d.ts +13 -0
  339. package/dist/types/excalidraw/subset/harfbuzz/harfbuzz-wasm.d.ts +2 -0
  340. package/dist/types/excalidraw/subset/subset-main.d.ts +12 -0
  341. package/dist/types/excalidraw/subset/subset-shared.chunk.d.ts +32 -0
  342. package/dist/types/excalidraw/subset/subset-worker.chunk.d.ts +15 -0
  343. package/dist/types/excalidraw/subset/woff2/woff2-bindings.d.ts +31 -0
  344. package/dist/types/excalidraw/subset/woff2/woff2-loader.d.ts +14 -0
  345. package/dist/types/excalidraw/subset/woff2/woff2-wasm.d.ts +2 -0
  346. package/dist/types/excalidraw/types.d.ts +731 -0
  347. package/dist/types/excalidraw/workers.d.ts +36 -0
  348. package/dist/types/excalidraw/wysiwyg/textWysiwyg.d.ts +24 -0
  349. package/dist/types/math/src/angle.d.ts +19 -0
  350. package/dist/types/math/src/constants.d.ts +3 -0
  351. package/dist/types/math/src/curve.d.ts +74 -0
  352. package/dist/types/math/src/ellipse.d.ts +44 -0
  353. package/dist/types/math/src/index.d.ts +13 -0
  354. package/dist/types/math/src/line.d.ts +17 -0
  355. package/dist/types/math/src/point.d.ts +122 -0
  356. package/dist/types/math/src/polygon.d.ts +6 -0
  357. package/dist/types/math/src/range.d.ts +42 -0
  358. package/dist/types/math/src/rectangle.d.ts +5 -0
  359. package/dist/types/math/src/segment.d.ts +40 -0
  360. package/dist/types/math/src/triangle.d.ts +11 -0
  361. package/dist/types/math/src/types.d.ts +106 -0
  362. package/dist/types/math/src/utils.d.ts +7 -0
  363. package/dist/types/math/src/vector.d.ts +94 -0
  364. package/dist/types/utils/src/bbox.d.ts +9 -0
  365. package/dist/types/utils/src/export.d.ts +35 -0
  366. package/dist/types/utils/src/index.d.ts +4 -0
  367. package/dist/types/utils/src/shape.d.ts +58 -0
  368. package/dist/types/utils/src/withinBounds.d.ts +19 -0
  369. package/package.json +69 -0
@@ -0,0 +1,84 @@
1
+ import "./WelcomeScreen.scss";
2
+ declare const WelcomeScreen: {
3
+ (props: {
4
+ children?: React.ReactNode;
5
+ }): import("react/jsx-runtime").JSX.Element;
6
+ displayName: string;
7
+ Center: {
8
+ ({ children }: {
9
+ children?: React.ReactNode;
10
+ }): import("react/jsx-runtime").JSX.Element;
11
+ displayName: string;
12
+ Logo: {
13
+ ({ children }: {
14
+ children?: React.ReactNode;
15
+ }): import("react/jsx-runtime").JSX.Element;
16
+ displayName: string;
17
+ };
18
+ Heading: {
19
+ ({ children }: {
20
+ children: React.ReactNode;
21
+ }): import("react/jsx-runtime").JSX.Element;
22
+ displayName: string;
23
+ };
24
+ Menu: {
25
+ ({ children }: {
26
+ children?: React.ReactNode;
27
+ }): import("react/jsx-runtime").JSX.Element;
28
+ displayName: string;
29
+ };
30
+ MenuItem: {
31
+ ({ onSelect, children, icon, shortcut, className, ...props }: {
32
+ onSelect: () => void;
33
+ children: React.ReactNode;
34
+ icon?: import("react").JSX.Element;
35
+ shortcut?: string | null;
36
+ } & React.ButtonHTMLAttributes<HTMLButtonElement>): import("react/jsx-runtime").JSX.Element;
37
+ displayName: string;
38
+ };
39
+ MenuItemLink: {
40
+ ({ children, href, icon, shortcut, className, ...props }: {
41
+ children: React.ReactNode;
42
+ href: string;
43
+ icon?: import("react").JSX.Element;
44
+ shortcut?: string | null;
45
+ } & React.AnchorHTMLAttributes<HTMLAnchorElement>): import("react/jsx-runtime").JSX.Element;
46
+ displayName: string;
47
+ };
48
+ MenuItemHelp: {
49
+ (): import("react/jsx-runtime").JSX.Element;
50
+ displayName: string;
51
+ };
52
+ MenuItemLoadScene: {
53
+ (): import("react/jsx-runtime").JSX.Element | null;
54
+ displayName: string;
55
+ };
56
+ MenuItemLiveCollaborationTrigger: {
57
+ ({ onSelect, }: {
58
+ onSelect: () => any;
59
+ }): import("react/jsx-runtime").JSX.Element;
60
+ displayName: string;
61
+ };
62
+ };
63
+ Hints: {
64
+ MenuHint: {
65
+ ({ children }: {
66
+ children?: React.ReactNode;
67
+ }): import("react/jsx-runtime").JSX.Element;
68
+ displayName: string;
69
+ };
70
+ ToolbarHint: {
71
+ ({ children }: {
72
+ children?: React.ReactNode;
73
+ }): import("react/jsx-runtime").JSX.Element;
74
+ displayName: string;
75
+ };
76
+ HelpHint: {
77
+ ({ children }: {
78
+ children?: React.ReactNode;
79
+ }): import("react/jsx-runtime").JSX.Element;
80
+ displayName: string;
81
+ };
82
+ };
83
+ };
84
+ export default WelcomeScreen;
@@ -0,0 +1,21 @@
1
+ import { createIsolation } from "jotai-scope";
2
+ import React from "react";
3
+ import tunnel from "tunnel-rat";
4
+ export type Tunnel = ReturnType<typeof tunnel>;
5
+ type TunnelsContextValue = {
6
+ MainMenuTunnel: Tunnel;
7
+ WelcomeScreenMenuHintTunnel: Tunnel;
8
+ WelcomeScreenToolbarHintTunnel: Tunnel;
9
+ WelcomeScreenHelpHintTunnel: Tunnel;
10
+ WelcomeScreenCenterTunnel: Tunnel;
11
+ FooterCenterTunnel: Tunnel;
12
+ DefaultSidebarTriggerTunnel: Tunnel;
13
+ DefaultSidebarTabTriggersTunnel: Tunnel;
14
+ OverwriteConfirmDialogTunnel: Tunnel;
15
+ TTDDialogTriggerTunnel: Tunnel;
16
+ tunnelsJotai: ReturnType<typeof createIsolation>;
17
+ };
18
+ export declare const TunnelsContext: React.Context<TunnelsContextValue>;
19
+ export declare const useTunnels: () => TunnelsContextValue;
20
+ export declare const useInitializeTunnels: () => TunnelsContextValue;
21
+ export {};
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import type { UIAppState } from "../types";
3
+ export declare const UIAppStateContext: React.Context<UIAppState>;
4
+ export declare const useUIAppState: () => UIAppState;
@@ -0,0 +1,5 @@
1
+ import type { AppState } from "./types";
2
+ export declare const resetCursor: (interactiveCanvas: HTMLCanvasElement | null) => void;
3
+ export declare const setCursor: (interactiveCanvas: HTMLCanvasElement | null, cursor: string) => void;
4
+ export declare const setEraserCursor: (interactiveCanvas: HTMLCanvasElement | null, theme: AppState["theme"]) => void;
5
+ export declare const setCursorForShape: (interactiveCanvas: HTMLCanvasElement | null, appState: Pick<AppState, "activeTool" | "theme">) => void;
@@ -0,0 +1,8 @@
1
+ import type { EDITOR_LS_KEYS } from "@excalidraw/common";
2
+ import type { JSONValue } from "../types";
3
+ export declare class EditorLocalStorage {
4
+ static has(key: typeof EDITOR_LS_KEYS[keyof typeof EDITOR_LS_KEYS]): boolean;
5
+ static get<T extends JSONValue>(key: typeof EDITOR_LS_KEYS[keyof typeof EDITOR_LS_KEYS]): T | null;
6
+ static set: (key: (typeof EDITOR_LS_KEYS)[keyof typeof EDITOR_LS_KEYS], value: JSONValue) => boolean;
7
+ static delete: (name: (typeof EDITOR_LS_KEYS)[keyof typeof EDITOR_LS_KEYS]) => void;
8
+ }
@@ -0,0 +1,385 @@
1
+ import { IMAGE_MIME_TYPES, MIME_TYPES } from "@excalidraw/common";
2
+ import type { ValueOf } from "@excalidraw/common/utility-types";
3
+ import type { ExcalidrawElement, FileId } from "@excalidraw/element/types";
4
+ import type { AppState, DataURL, LibraryItem } from "../types";
5
+ import type { FileSystemHandle } from "browser-fs-access";
6
+ import type { ImportedLibraryData } from "./types";
7
+ export declare const getMimeType: (blob: Blob | string) => string;
8
+ export declare const getFileHandleType: (handle: FileSystemHandle | null) => string | null;
9
+ export declare const isImageFileHandleType: (type: string | null) => type is "png" | "svg";
10
+ export declare const isImageFileHandle: (handle: FileSystemHandle | null) => boolean;
11
+ export declare const isSupportedImageFileType: (type: string | null | undefined) => boolean;
12
+ export declare const isSupportedImageFile: (blob: Blob | null | undefined) => blob is Blob & {
13
+ type: ValueOf<typeof IMAGE_MIME_TYPES>;
14
+ };
15
+ export declare const loadSceneOrLibraryFromBlob: (blob: Blob | File,
16
+ /** @see restore.localAppState */
17
+ localAppState: AppState | null, localElements: readonly ExcalidrawElement[] | null,
18
+ /** FileSystemHandle. Defaults to `blob.handle` if defined, otherwise null. */
19
+ fileHandle?: FileSystemHandle | null) => Promise<{
20
+ type: "application/vnd.excalidraw+json";
21
+ data: {
22
+ elements: import("@excalidraw/element/types").OrderedExcalidrawElement[];
23
+ appState: {
24
+ viewBackgroundColor: string;
25
+ theme: import("@excalidraw/element/types").Theme;
26
+ frameRendering: {
27
+ enabled: boolean;
28
+ name: boolean;
29
+ outline: boolean;
30
+ clip: boolean;
31
+ };
32
+ name: string | null;
33
+ zoom: import("../types").Zoom;
34
+ scrollX: number;
35
+ scrollY: number;
36
+ viewModeEnabled: boolean;
37
+ openDialog: null | {
38
+ name: "imageExport" | "help" | "jsonExport";
39
+ } | {
40
+ name: "commandPalette";
41
+ } | {
42
+ name: "settings";
43
+ } | {
44
+ name: "elementLinkSelector";
45
+ sourceElementId: ExcalidrawElement["id"];
46
+ };
47
+ editingGroupId: import("@excalidraw/element/types").GroupId | null;
48
+ selectedElementIds: Readonly<{
49
+ [id: string]: true;
50
+ }>;
51
+ frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
52
+ activeEmbeddable: {
53
+ element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
54
+ state: "hover" | "active";
55
+ } | null;
56
+ selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
57
+ selectedGroupIds: {
58
+ [groupId: string]: boolean;
59
+ };
60
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
61
+ multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
62
+ newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
63
+ isBindingEnabled: boolean;
64
+ suggestedBinding: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
65
+ isRotating: boolean;
66
+ elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
67
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
68
+ snapLines: readonly import("../snapping").SnapLine[];
69
+ zenModeEnabled: boolean;
70
+ editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
71
+ isCropping: boolean;
72
+ croppingElementId: ExcalidrawElement["id"] | null;
73
+ searchMatches: Readonly<{
74
+ focusedId: ExcalidrawElement["id"] | null;
75
+ matches: readonly import("../types").SearchMatch[];
76
+ }> | null;
77
+ activeLockedId: string | null;
78
+ hoveredElementIds: Readonly<{
79
+ [id: string]: true;
80
+ }>;
81
+ shouldCacheIgnoreZoom: boolean;
82
+ exportScale: number;
83
+ bindMode: import("@excalidraw/element/types").BindMode;
84
+ gridSize: number;
85
+ contextMenu: {
86
+ items: import("../components/ContextMenu").ContextMenuItems;
87
+ top: number;
88
+ left: number;
89
+ } | null;
90
+ showWelcomeScreen: boolean;
91
+ isLoading: boolean;
92
+ myocSimplifiedMode: boolean;
93
+ dontResizeLimitMBs: number;
94
+ hideMainMenus: boolean;
95
+ wheelZoomsOnDefault?: boolean | undefined;
96
+ arrangeConfiguration: {
97
+ algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
98
+ gap: number;
99
+ };
100
+ normaliseConfiguration: {
101
+ mode: import("../types").NormaliseMode;
102
+ metric: import("../types").NormaliseMetric;
103
+ };
104
+ errorMessage: React.ReactNode;
105
+ resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
106
+ startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
107
+ editingFrame: string | null;
108
+ activeTool: {
109
+ lastActiveTool: import("../types").ActiveTool | null;
110
+ locked: boolean;
111
+ fromSelection: boolean;
112
+ } & import("../types").ActiveTool;
113
+ preferredSelectionTool: {
114
+ type: "selection" | "lasso";
115
+ initialized: boolean;
116
+ };
117
+ penMode: boolean;
118
+ penDetected: boolean;
119
+ exportBackground: boolean;
120
+ exportEmbedScene: boolean;
121
+ exportWithDarkMode: boolean;
122
+ currentItemStrokeColor: string;
123
+ currentItemBackgroundColor: string;
124
+ currentItemFillStyle: ExcalidrawElement["fillStyle"];
125
+ currentItemStrokeWidth: number;
126
+ currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
127
+ currentItemRoughness: number;
128
+ currentItemOpacity: number;
129
+ currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
130
+ currentItemFontSize: number;
131
+ currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
132
+ currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
133
+ currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
134
+ currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
135
+ currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
136
+ currentItemArrowType: "sharp" | "round" | "elbow";
137
+ cursorButton: "up" | "down";
138
+ scrolledOutside: boolean;
139
+ isResizing: boolean;
140
+ openMenu: "canvas" | null;
141
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
142
+ openSidebar: {
143
+ name: import("../types").SidebarName;
144
+ tab?: import("../types").SidebarTabName;
145
+ } | null;
146
+ defaultSidebarDockedPreference: boolean;
147
+ lastPointerDownWith: import("@excalidraw/element/types").PointerType;
148
+ previousSelectedElementIds: {
149
+ [id: string]: true;
150
+ };
151
+ selectedElementsAreBeingDragged: boolean;
152
+ toast: {
153
+ message: string;
154
+ closable?: boolean;
155
+ duration?: number;
156
+ } | null;
157
+ gridStep: number;
158
+ gridModeEnabled: boolean;
159
+ fileHandle: FileSystemHandle | null;
160
+ stats: {
161
+ open: boolean;
162
+ panels: number;
163
+ };
164
+ currentChartType: import("@excalidraw/element/types").ChartType;
165
+ pasteDialog: {
166
+ shown: false;
167
+ data: null;
168
+ } | {
169
+ shown: true;
170
+ data: import("../charts").Spreadsheet;
171
+ };
172
+ showHyperlinkPopup: false | "info" | "editor";
173
+ originSnapOffset: {
174
+ x: number;
175
+ y: number;
176
+ } | null;
177
+ objectsSnapModeEnabled: boolean;
178
+ userToFollow: import("../types").UserToFollow | null;
179
+ followedBy: Set<import("../types").SocketId>;
180
+ lockedMultiSelections: {
181
+ [groupId: string]: true;
182
+ };
183
+ };
184
+ files: import("../types").BinaryFiles;
185
+ };
186
+ } | {
187
+ type: "application/vnd.excalidrawlib+json";
188
+ data: ImportedLibraryData;
189
+ }>;
190
+ export declare const loadFromBlob: (blob: Blob,
191
+ /** @see restore.localAppState */
192
+ localAppState: AppState | null, localElements: readonly ExcalidrawElement[] | null,
193
+ /** FileSystemHandle. Defaults to `blob.handle` if defined, otherwise null. */
194
+ fileHandle?: FileSystemHandle | null) => Promise<{
195
+ elements: import("@excalidraw/element/types").OrderedExcalidrawElement[];
196
+ appState: {
197
+ viewBackgroundColor: string;
198
+ theme: import("@excalidraw/element/types").Theme;
199
+ frameRendering: {
200
+ enabled: boolean;
201
+ name: boolean;
202
+ outline: boolean;
203
+ clip: boolean;
204
+ };
205
+ name: string | null;
206
+ zoom: import("../types").Zoom;
207
+ scrollX: number;
208
+ scrollY: number;
209
+ viewModeEnabled: boolean;
210
+ openDialog: null | {
211
+ name: "imageExport" | "help" | "jsonExport";
212
+ } | {
213
+ name: "commandPalette";
214
+ } | {
215
+ name: "settings";
216
+ } | {
217
+ name: "elementLinkSelector";
218
+ sourceElementId: ExcalidrawElement["id"];
219
+ };
220
+ editingGroupId: import("@excalidraw/element/types").GroupId | null;
221
+ selectedElementIds: Readonly<{
222
+ [id: string]: true;
223
+ }>;
224
+ frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
225
+ activeEmbeddable: {
226
+ element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
227
+ state: "hover" | "active";
228
+ } | null;
229
+ selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
230
+ selectedGroupIds: {
231
+ [groupId: string]: boolean;
232
+ };
233
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
234
+ multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
235
+ newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
236
+ isBindingEnabled: boolean;
237
+ suggestedBinding: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
238
+ isRotating: boolean;
239
+ elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
240
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
241
+ snapLines: readonly import("../snapping").SnapLine[];
242
+ zenModeEnabled: boolean;
243
+ editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
244
+ isCropping: boolean;
245
+ croppingElementId: ExcalidrawElement["id"] | null;
246
+ searchMatches: Readonly<{
247
+ focusedId: ExcalidrawElement["id"] | null;
248
+ matches: readonly import("../types").SearchMatch[];
249
+ }> | null;
250
+ activeLockedId: string | null;
251
+ hoveredElementIds: Readonly<{
252
+ [id: string]: true;
253
+ }>;
254
+ shouldCacheIgnoreZoom: boolean;
255
+ exportScale: number;
256
+ bindMode: import("@excalidraw/element/types").BindMode;
257
+ gridSize: number;
258
+ contextMenu: {
259
+ items: import("../components/ContextMenu").ContextMenuItems;
260
+ top: number;
261
+ left: number;
262
+ } | null;
263
+ showWelcomeScreen: boolean;
264
+ isLoading: boolean;
265
+ myocSimplifiedMode: boolean;
266
+ dontResizeLimitMBs: number;
267
+ hideMainMenus: boolean;
268
+ wheelZoomsOnDefault?: boolean | undefined;
269
+ arrangeConfiguration: {
270
+ algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
271
+ gap: number;
272
+ };
273
+ normaliseConfiguration: {
274
+ mode: import("../types").NormaliseMode;
275
+ metric: import("../types").NormaliseMetric;
276
+ };
277
+ errorMessage: React.ReactNode;
278
+ resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
279
+ startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
280
+ editingFrame: string | null;
281
+ activeTool: {
282
+ lastActiveTool: import("../types").ActiveTool | null;
283
+ locked: boolean;
284
+ fromSelection: boolean;
285
+ } & import("../types").ActiveTool;
286
+ preferredSelectionTool: {
287
+ type: "selection" | "lasso";
288
+ initialized: boolean;
289
+ };
290
+ penMode: boolean;
291
+ penDetected: boolean;
292
+ exportBackground: boolean;
293
+ exportEmbedScene: boolean;
294
+ exportWithDarkMode: boolean;
295
+ currentItemStrokeColor: string;
296
+ currentItemBackgroundColor: string;
297
+ currentItemFillStyle: ExcalidrawElement["fillStyle"];
298
+ currentItemStrokeWidth: number;
299
+ currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
300
+ currentItemRoughness: number;
301
+ currentItemOpacity: number;
302
+ currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
303
+ currentItemFontSize: number;
304
+ currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
305
+ currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
306
+ currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
307
+ currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
308
+ currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
309
+ currentItemArrowType: "sharp" | "round" | "elbow";
310
+ cursorButton: "up" | "down";
311
+ scrolledOutside: boolean;
312
+ isResizing: boolean;
313
+ openMenu: "canvas" | null;
314
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
315
+ openSidebar: {
316
+ name: import("../types").SidebarName;
317
+ tab?: import("../types").SidebarTabName;
318
+ } | null;
319
+ defaultSidebarDockedPreference: boolean;
320
+ lastPointerDownWith: import("@excalidraw/element/types").PointerType;
321
+ previousSelectedElementIds: {
322
+ [id: string]: true;
323
+ };
324
+ selectedElementsAreBeingDragged: boolean;
325
+ toast: {
326
+ message: string;
327
+ closable?: boolean;
328
+ duration?: number;
329
+ } | null;
330
+ gridStep: number;
331
+ gridModeEnabled: boolean;
332
+ fileHandle: FileSystemHandle | null;
333
+ stats: {
334
+ open: boolean;
335
+ panels: number;
336
+ };
337
+ currentChartType: import("@excalidraw/element/types").ChartType;
338
+ pasteDialog: {
339
+ shown: false;
340
+ data: null;
341
+ } | {
342
+ shown: true;
343
+ data: import("../charts").Spreadsheet;
344
+ };
345
+ showHyperlinkPopup: false | "info" | "editor";
346
+ originSnapOffset: {
347
+ x: number;
348
+ y: number;
349
+ } | null;
350
+ objectsSnapModeEnabled: boolean;
351
+ userToFollow: import("../types").UserToFollow | null;
352
+ followedBy: Set<import("../types").SocketId>;
353
+ lockedMultiSelections: {
354
+ [groupId: string]: true;
355
+ };
356
+ };
357
+ files: import("../types").BinaryFiles;
358
+ }>;
359
+ export declare const parseLibraryJSON: (json: string, defaultStatus?: LibraryItem["status"]) => LibraryItem[];
360
+ export declare const loadLibraryFromBlob: (blob: Blob, defaultStatus?: LibraryItem["status"]) => Promise<LibraryItem[]>;
361
+ export declare const canvasToBlob: (canvas: HTMLCanvasElement | Promise<HTMLCanvasElement>) => Promise<Blob>;
362
+ /** generates SHA-1 digest from supplied file (if not supported, falls back
363
+ to a 40-char base64 random id) */
364
+ export declare const generateIdFromFile: (file: File) => Promise<FileId>;
365
+ /** async. For sync variant, use getDataURL_sync */
366
+ export declare const getDataURL: (file: Blob | File) => Promise<DataURL>;
367
+ export declare const getDataURL_sync: (data: string | Uint8Array | ArrayBuffer, mimeType: ValueOf<typeof MIME_TYPES>) => DataURL;
368
+ export declare const dataURLToFile: (dataURL: DataURL, filename?: string) => File;
369
+ export declare const dataURLToString: (dataURL: DataURL) => string;
370
+ export declare const resizeImageFile: (file: File, opts: {
371
+ /** undefined indicates auto */
372
+ outputType?: (typeof MIME_TYPES)["jpg"];
373
+ maxWidthOrHeight: number;
374
+ }) => Promise<File>;
375
+ export declare const SVGStringToFile: (SVGString: string, filename?: string) => File & {
376
+ type: typeof MIME_TYPES.svg;
377
+ };
378
+ export declare const ImageURLToFile: (imageUrl: string, filename?: string) => Promise<File | undefined>;
379
+ export declare const getFileHandle: (event: DragEvent | React.DragEvent | DataTransferItem) => Promise<FileSystemHandle | null>;
380
+ export declare const createFile: (blob: File | Blob | ArrayBuffer, mimeType: string, name: string | undefined) => File;
381
+ /** attempts to detect correct mimeType if none is set, or if an image
382
+ * has an incorrect extension.
383
+ * Note: doesn't handle missing .excalidraw/.excalidrawlib extension */
384
+ export declare const normalizeFile: (file: File) => Promise<File>;
385
+ export declare const blobToArrayBuffer: (blob: Blob) => Promise<ArrayBuffer>;
@@ -0,0 +1,55 @@
1
+ export declare const toByteString: (data: string | Uint8Array | ArrayBuffer) => string;
2
+ /**
3
+ * @param isByteString set to true if already byte string to prevent bloat
4
+ * due to reencoding
5
+ */
6
+ export declare const stringToBase64: (str: string, isByteString?: boolean) => string;
7
+ export declare const base64ToString: (base64: string, isByteString?: boolean) => string;
8
+ export declare const base64ToArrayBuffer: (base64: string) => ArrayBuffer;
9
+ export declare const base64urlToString: (str: string) => string;
10
+ type EncodedData = {
11
+ encoded: string;
12
+ encoding: "bstring";
13
+ /** whether text is compressed (zlib) */
14
+ compressed: boolean;
15
+ /** version for potential migration purposes */
16
+ version?: string;
17
+ };
18
+ /**
19
+ * Encodes (and potentially compresses via zlib) text to byte string
20
+ */
21
+ export declare const encode: ({ text, compress, }: {
22
+ text: string;
23
+ /** defaults to `true`. If compression fails, falls back to bstring alone. */
24
+ compress?: boolean;
25
+ }) => EncodedData;
26
+ export declare const decode: (data: EncodedData) => string;
27
+ /**
28
+ * The returned buffer has following format:
29
+ * `[]` refers to a buffers wrapper (see `concatBuffers`)
30
+ *
31
+ * [
32
+ * encodingMetadataBuffer,
33
+ * iv,
34
+ * [
35
+ * contentsMetadataBuffer
36
+ * contentsBuffer
37
+ * ]
38
+ * ]
39
+ */
40
+ export declare const compressData: <T extends Record<string, any> = never>(dataBuffer: Uint8Array, options: {
41
+ encryptionKey: string;
42
+ } & ([T] extends [never] ? {
43
+ metadata?: T;
44
+ } : {
45
+ metadata: T;
46
+ })) => Promise<Uint8Array<ArrayBuffer>>;
47
+ export declare const decompressData: <T extends Record<string, any>>(bufferView: Uint8Array, options: {
48
+ decryptionKey: string;
49
+ }) => Promise<{
50
+ /** metadata source is always JSON so we can decode it here */
51
+ metadata: T;
52
+ /** data can be anything so the caller must decode it */
53
+ data: Uint8Array<ArrayBuffer>;
54
+ }>;
55
+ export {};
@@ -0,0 +1,9 @@
1
+ export declare const IV_LENGTH_BYTES = 12;
2
+ export declare const createIV: () => Uint8Array<ArrayBuffer>;
3
+ export declare const generateEncryptionKey: <T extends "string" | "cryptoKey" = "string">(returnAs?: T) => Promise<T extends "cryptoKey" ? CryptoKey : string>;
4
+ export declare const getCryptoKey: (key: string, usage: KeyUsage) => Promise<CryptoKey>;
5
+ export declare const encryptData: (key: string | CryptoKey, data: Uint8Array<ArrayBuffer> | ArrayBuffer | Blob | File | string) => Promise<{
6
+ encryptedBuffer: ArrayBuffer;
7
+ iv: Uint8Array<ArrayBuffer>;
8
+ }>;
9
+ export declare const decryptData: (iv: Uint8Array<ArrayBuffer>, encrypted: Uint8Array<ArrayBuffer> | ArrayBuffer, privateKey: string) => Promise<ArrayBuffer>;
@@ -0,0 +1,21 @@
1
+ import { supported as nativeFileSystemSupported } from "browser-fs-access";
2
+ import { MIME_TYPES } from "@excalidraw/common";
3
+ import type { FileSystemHandle } from "browser-fs-access";
4
+ type FILE_EXTENSION = Exclude<keyof typeof MIME_TYPES, "binary">;
5
+ export declare const fileOpen: <M extends boolean | undefined = false>(opts: {
6
+ extensions?: FILE_EXTENSION[];
7
+ description: string;
8
+ multiple?: M;
9
+ }) => Promise<M extends false | undefined ? File : File[]>;
10
+ export declare const fileSave: (blob: Blob | Promise<Blob>, opts: {
11
+ /** supply without the extension */
12
+ name: string;
13
+ /** file extension */
14
+ extension: FILE_EXTENSION;
15
+ mimeTypes?: string[];
16
+ description: string;
17
+ /** existing FileSystemHandle */
18
+ fileHandle?: FileSystemHandle | null;
19
+ }) => Promise<FileSystemHandle | null>;
20
+ export { nativeFileSystemSupported };
21
+ export type { FileSystemHandle };
@@ -0,0 +1,9 @@
1
+ export declare const getTEXtChunk: (blob: Blob) => Promise<{
2
+ keyword: string;
3
+ text: string;
4
+ } | null>;
5
+ export declare const encodePngMetadata: ({ blob, metadata, }: {
6
+ blob: Blob;
7
+ metadata: string;
8
+ }) => Promise<Blob>;
9
+ export declare const decodePngMetadata: (blob: Blob) => Promise<string>;
@@ -0,0 +1,22 @@
1
+ import type { ExcalidrawElement, ExcalidrawFrameLikeElement, NonDeletedExcalidrawElement } from "@excalidraw/element/types";
2
+ import type { FileSystemHandle } from "./filesystem";
3
+ import type { ExportType } from "../scene/types";
4
+ import type { AppState, BinaryFiles } from "../types";
5
+ export { loadFromBlob } from "./blob";
6
+ export { loadFromJSON, saveAsJSON } from "./json";
7
+ export type ExportedElements = readonly NonDeletedExcalidrawElement[] & {
8
+ _brand: "exportedElements";
9
+ };
10
+ export declare const prepareElementsForExport: (elements: readonly ExcalidrawElement[], { selectedElementIds }: Pick<AppState, "selectedElementIds">, exportSelectionOnly: boolean) => {
11
+ exportingFrame: ExcalidrawFrameLikeElement | null;
12
+ exportedElements: ExportedElements;
13
+ };
14
+ export declare const exportCanvas: (type: Omit<ExportType, "backend">, elements: ExportedElements, appState: AppState, files: BinaryFiles, { exportBackground, exportPadding, viewBackgroundColor, name, fileHandle, exportingFrame, }: {
15
+ exportBackground: boolean;
16
+ exportPadding?: number;
17
+ viewBackgroundColor: string;
18
+ /** filename, if applicable */
19
+ name?: string;
20
+ fileHandle?: FileSystemHandle | null;
21
+ exportingFrame: ExcalidrawFrameLikeElement | null;
22
+ }) => Promise<FileSystemHandle | null | undefined>;