@misenkashari/excalidraw-common 1.0.0 → 1.0.3

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 (377) hide show
  1. package/dist/dev/index.js +3729 -0
  2. package/dist/dev/index.js.map +7 -0
  3. package/dist/prod/index.js +4 -0
  4. package/dist/types/common/src/binary-heap.d.ts +12 -0
  5. package/dist/types/common/src/bounds.d.ts +10 -0
  6. package/dist/types/common/src/colors.d.ts +65 -0
  7. package/dist/types/common/src/constants.d.ts +355 -0
  8. package/dist/types/common/src/editorInterface.d.ts +34 -0
  9. package/dist/types/common/src/emitter.d.ts +16 -0
  10. package/dist/types/common/src/font-metadata.d.ts +46 -0
  11. package/dist/types/common/src/index.d.ts +15 -0
  12. package/dist/types/common/src/keys.d.ts +191 -0
  13. package/dist/types/common/src/points.d.ts +9 -0
  14. package/dist/types/common/src/promise-pool.d.ts +6 -0
  15. package/dist/types/common/src/queue.d.ts +9 -0
  16. package/dist/types/common/src/random.d.ts +3 -0
  17. package/dist/types/common/src/url.d.ts +7 -0
  18. package/dist/types/common/src/utility-types.d.ts +37 -0
  19. package/dist/types/common/src/utils.d.ts +283 -0
  20. package/dist/types/common/src/visualdebug.d.ts +41 -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/binding.d.ts +124 -0
  24. package/dist/types/element/src/bounds.d.ts +85 -0
  25. package/dist/types/element/src/collision.d.ts +36 -0
  26. package/dist/types/element/src/comparisons.d.ts +8 -0
  27. package/dist/types/element/src/containerCache.d.ts +11 -0
  28. package/dist/types/element/src/cropElement.d.ts +19 -0
  29. package/dist/types/element/src/delta.d.ts +228 -0
  30. package/dist/types/element/src/distance.d.ts +3 -0
  31. package/dist/types/element/src/distribute.d.ts +7 -0
  32. package/dist/types/element/src/dragElements.d.ts +33 -0
  33. package/dist/types/element/src/duplicate.d.ts +63 -0
  34. package/dist/types/element/src/elbowArrow.d.ts +17 -0
  35. package/dist/types/element/src/elementLink.d.ts +13 -0
  36. package/dist/types/element/src/embeddable.d.ts +10 -0
  37. package/dist/types/element/src/flowchart.d.ts +26 -0
  38. package/dist/types/element/src/fractionalIndex.d.ts +57 -0
  39. package/dist/types/element/src/frame.d.ts +74 -0
  40. package/dist/types/element/src/groups.d.ts +34 -0
  41. package/dist/types/element/src/heading.d.ts +16 -0
  42. package/dist/types/element/src/image.d.ts +22 -0
  43. package/dist/types/element/src/index.d.ts +56 -0
  44. package/dist/types/element/src/linearElementEditor.d.ts +113 -0
  45. package/dist/types/element/src/mutateElement.d.ts +23 -0
  46. package/dist/types/element/src/newElement.d.ts +62 -0
  47. package/dist/types/element/src/positionElementsOnGrid.d.ts +2 -0
  48. package/dist/types/element/src/renderElement.d.ts +25 -0
  49. package/dist/types/element/src/resizeElements.d.ts +32 -0
  50. package/dist/types/element/src/resizeTest.d.ts +16 -0
  51. package/dist/types/element/src/selection.d.ts +34 -0
  52. package/dist/types/element/src/shape.d.ts +43 -0
  53. package/dist/types/element/src/showSelectedShapeActions.d.ts +3 -0
  54. package/dist/types/element/src/sizeHelpers.d.ts +35 -0
  55. package/dist/types/element/src/sortElements.d.ts +2 -0
  56. package/dist/types/element/src/store.d.ts +237 -0
  57. package/dist/types/element/src/textElement.d.ts +40 -0
  58. package/dist/types/element/src/textMeasurements.d.ts +39 -0
  59. package/dist/types/element/src/textWrapping.d.ts +13 -0
  60. package/dist/types/element/src/transform.d.ts +81 -0
  61. package/dist/types/element/src/transformHandles.d.ts +36 -0
  62. package/dist/types/element/src/typeChecks.d.ts +54 -0
  63. package/dist/types/element/src/types.d.ts +303 -0
  64. package/dist/types/element/src/utils.d.ts +34 -0
  65. package/dist/types/element/src/zindex.d.ts +13 -0
  66. package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +482 -0
  67. package/dist/types/excalidraw/actions/actionAlign.d.ts +109 -0
  68. package/dist/types/excalidraw/actions/actionBoundText.d.ts +358 -0
  69. package/dist/types/excalidraw/actions/actionCanvas.d.ts +2047 -0
  70. package/dist/types/excalidraw/actions/actionClipboard.d.ts +397 -0
  71. package/dist/types/excalidraw/actions/actionCropEditor.d.ts +173 -0
  72. package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +516 -0
  73. package/dist/types/excalidraw/actions/actionDistribute.d.ts +34 -0
  74. package/dist/types/excalidraw/actions/actionDuplicateSelection.d.ts +17 -0
  75. package/dist/types/excalidraw/actions/actionElementLink.d.ts +193 -0
  76. package/dist/types/excalidraw/actions/actionElementLock.d.ts +344 -0
  77. package/dist/types/excalidraw/actions/actionEmbeddable.d.ts +170 -0
  78. package/dist/types/excalidraw/actions/actionExport.d.ts +679 -0
  79. package/dist/types/excalidraw/actions/actionFinalize.d.ts +13 -0
  80. package/dist/types/excalidraw/actions/actionFlip.d.ts +34 -0
  81. package/dist/types/excalidraw/actions/actionFrame.d.ts +1282 -0
  82. package/dist/types/excalidraw/actions/actionGroup.d.ts +348 -0
  83. package/dist/types/excalidraw/actions/actionHistory.d.ts +6 -0
  84. package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +794 -0
  85. package/dist/types/excalidraw/actions/actionLink.d.ts +174 -0
  86. package/dist/types/excalidraw/actions/actionMenu.d.ts +162 -0
  87. package/dist/types/excalidraw/actions/actionNavigate.d.ts +20 -0
  88. package/dist/types/excalidraw/actions/actionProperties.d.ts +400 -0
  89. package/dist/types/excalidraw/actions/actionSelectAll.d.ts +169 -0
  90. package/dist/types/excalidraw/actions/actionStyles.d.ts +187 -0
  91. package/dist/types/excalidraw/actions/actionTextAutoResize.d.ts +17 -0
  92. package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +176 -0
  93. package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +174 -0
  94. package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +165 -0
  95. package/dist/types/excalidraw/actions/actionToggleShapeSwitch.d.ts +19 -0
  96. package/dist/types/excalidraw/actions/actionToggleStats.d.ts +173 -0
  97. package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +174 -0
  98. package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +174 -0
  99. package/dist/types/excalidraw/actions/actionZindex.d.ts +74 -0
  100. package/dist/types/excalidraw/actions/index.d.ts +28 -0
  101. package/dist/types/excalidraw/actions/manager.d.ts +21 -0
  102. package/dist/types/excalidraw/actions/register.d.ts +5 -0
  103. package/dist/types/excalidraw/actions/shortcuts.d.ts +4 -0
  104. package/dist/types/excalidraw/actions/types.d.ts +47 -0
  105. package/dist/types/excalidraw/analytics.d.ts +1 -0
  106. package/dist/types/excalidraw/animated-trail.d.ts +39 -0
  107. package/dist/types/excalidraw/animation-frame-handler.d.ts +16 -0
  108. package/dist/types/excalidraw/appState.d.ts +101 -0
  109. package/dist/types/excalidraw/charts.d.ts +27 -0
  110. package/dist/types/excalidraw/clients.d.ts +14 -0
  111. package/dist/types/excalidraw/clipboard.d.ts +105 -0
  112. package/dist/types/excalidraw/components/Actions.d.ts +47 -0
  113. package/dist/types/excalidraw/components/ActiveConfirmDialog.d.ts +4 -0
  114. package/dist/types/excalidraw/components/App.d.ts +562 -0
  115. package/dist/types/excalidraw/components/Avatar.d.ts +11 -0
  116. package/dist/types/excalidraw/components/BraveMeasureTextError.d.ts +2 -0
  117. package/dist/types/excalidraw/components/Button.d.ts +17 -0
  118. package/dist/types/excalidraw/components/ButtonIcon.d.ts +16 -0
  119. package/dist/types/excalidraw/components/ButtonSeparator.d.ts +1 -0
  120. package/dist/types/excalidraw/components/Card.d.ts +6 -0
  121. package/dist/types/excalidraw/components/CheckboxItem.d.ts +8 -0
  122. package/dist/types/excalidraw/components/ColorPicker/ColorInput.d.ts +13 -0
  123. package/dist/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +22 -0
  124. package/dist/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +8 -0
  125. package/dist/types/excalidraw/components/ColorPicker/HotkeyLabel.d.ts +7 -0
  126. package/dist/types/excalidraw/components/ColorPicker/Picker.d.ts +19 -0
  127. package/dist/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +10 -0
  128. package/dist/types/excalidraw/components/ColorPicker/PickerHeading.d.ts +5 -0
  129. package/dist/types/excalidraw/components/ColorPicker/ShadeList.d.ts +9 -0
  130. package/dist/types/excalidraw/components/ColorPicker/TopPicks.d.ts +9 -0
  131. package/dist/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +21 -0
  132. package/dist/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +20 -0
  133. package/dist/types/excalidraw/components/CommandPalette/CommandPalette.d.ts +19 -0
  134. package/dist/types/excalidraw/components/CommandPalette/defaultCommandPaletteItems.d.ts +2 -0
  135. package/dist/types/excalidraw/components/CommandPalette/types.d.ts +24 -0
  136. package/dist/types/excalidraw/components/ConfirmDialog.d.ts +10 -0
  137. package/dist/types/excalidraw/components/ContextMenu.d.ts +16 -0
  138. package/dist/types/excalidraw/components/ConvertElementTypePopup.d.ts +23 -0
  139. package/dist/types/excalidraw/components/DarkModeToggle.d.ts +7 -0
  140. package/dist/types/excalidraw/components/DefaultSidebar.d.ts +27 -0
  141. package/dist/types/excalidraw/components/DiagramToCodePlugin/DiagramToCodePlugin.d.ts +4 -0
  142. package/dist/types/excalidraw/components/Dialog.d.ts +13 -0
  143. package/dist/types/excalidraw/components/DialogActionButton.d.ts +10 -0
  144. package/dist/types/excalidraw/components/ElementCanvasButtons.d.ts +7 -0
  145. package/dist/types/excalidraw/components/ElementLinkDialog.d.ts +12 -0
  146. package/dist/types/excalidraw/components/Ellipsify.d.ts +3 -0
  147. package/dist/types/excalidraw/components/ErrorDialog.d.ts +5 -0
  148. package/dist/types/excalidraw/components/ExcalidrawLogo.d.ts +15 -0
  149. package/dist/types/excalidraw/components/EyeDropper.d.ts +27 -0
  150. package/dist/types/excalidraw/components/FilledButton.d.ts +18 -0
  151. package/dist/types/excalidraw/components/FixedSideContainer.d.ts +9 -0
  152. package/dist/types/excalidraw/components/FollowMode/FollowMode.d.ts +10 -0
  153. package/dist/types/excalidraw/components/FontPicker/FontPicker.d.ts +22 -0
  154. package/dist/types/excalidraw/components/FontPicker/FontPickerList.d.ts +26 -0
  155. package/dist/types/excalidraw/components/FontPicker/FontPickerTrigger.d.ts +8 -0
  156. package/dist/types/excalidraw/components/FontPicker/keyboardNavHandlers.d.ts +13 -0
  157. package/dist/types/excalidraw/components/HandButton.d.ts +10 -0
  158. package/dist/types/excalidraw/components/HelpButton.d.ts +7 -0
  159. package/dist/types/excalidraw/components/HelpDialog.d.ts +4 -0
  160. package/dist/types/excalidraw/components/HintViewer.d.ts +11 -0
  161. package/dist/types/excalidraw/components/IconPicker.d.ts +15 -0
  162. package/dist/types/excalidraw/components/ImageExportDialog.d.ts +14 -0
  163. package/dist/types/excalidraw/components/InitializeApp.d.ts +10 -0
  164. package/dist/types/excalidraw/components/InlineIcon.d.ts +5 -0
  165. package/dist/types/excalidraw/components/Island.d.ts +10 -0
  166. package/dist/types/excalidraw/components/JSONExportDialog.d.ts +15 -0
  167. package/dist/types/excalidraw/components/LaserPointerButton.d.ts +10 -0
  168. package/dist/types/excalidraw/components/LayerUI.d.ts +32 -0
  169. package/dist/types/excalidraw/components/LibraryMenu.d.ts +10 -0
  170. package/dist/types/excalidraw/components/LibraryMenuBrowseButton.d.ts +7 -0
  171. package/dist/types/excalidraw/components/LibraryMenuControlButtons.d.ts +9 -0
  172. package/dist/types/excalidraw/components/LibraryMenuHeaderContent.d.ts +17 -0
  173. package/dist/types/excalidraw/components/LibraryMenuItems.d.ts +14 -0
  174. package/dist/types/excalidraw/components/LibraryMenuSection.d.ts +23 -0
  175. package/dist/types/excalidraw/components/LibraryUnit.d.ts +14 -0
  176. package/dist/types/excalidraw/components/LoadingMessage.d.ts +5 -0
  177. package/dist/types/excalidraw/components/LockButton.d.ts +10 -0
  178. package/dist/types/excalidraw/components/MagicButton.d.ts +10 -0
  179. package/dist/types/excalidraw/components/MobileMenu.d.ts +23 -0
  180. package/dist/types/excalidraw/components/MobileToolBar.d.ts +10 -0
  181. package/dist/types/excalidraw/components/Modal.d.ts +11 -0
  182. package/dist/types/excalidraw/components/OverwriteConfirm/OverwriteConfirm.d.ts +17 -0
  183. package/dist/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmActions.d.ts +17 -0
  184. package/dist/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmState.d.ts +22 -0
  185. package/dist/types/excalidraw/components/PasteChartDialog.d.ts +8 -0
  186. package/dist/types/excalidraw/components/PenModeButton.d.ts +12 -0
  187. package/dist/types/excalidraw/components/Popover.d.ts +16 -0
  188. package/dist/types/excalidraw/components/ProjectName.d.ts +10 -0
  189. package/dist/types/excalidraw/components/PropertiesPopover.d.ts +16 -0
  190. package/dist/types/excalidraw/components/PublishLibrary.d.ts +16 -0
  191. package/dist/types/excalidraw/components/QuickSearch.d.ts +9 -0
  192. package/dist/types/excalidraw/components/RadioGroup.d.ts +13 -0
  193. package/dist/types/excalidraw/components/RadioSelection.d.ts +20 -0
  194. package/dist/types/excalidraw/components/Range.d.ts +8 -0
  195. package/dist/types/excalidraw/components/SVGLayer.d.ts +7 -0
  196. package/dist/types/excalidraw/components/ScrollableList.d.ts +8 -0
  197. package/dist/types/excalidraw/components/SearchMenu.d.ts +5 -0
  198. package/dist/types/excalidraw/components/Section.d.ts +6 -0
  199. package/dist/types/excalidraw/components/Sidebar/Sidebar.d.ts +70 -0
  200. package/dist/types/excalidraw/components/Sidebar/SidebarHeader.d.ts +7 -0
  201. package/dist/types/excalidraw/components/Sidebar/SidebarTab.d.ts +8 -0
  202. package/dist/types/excalidraw/components/Sidebar/SidebarTabTrigger.d.ts +9 -0
  203. package/dist/types/excalidraw/components/Sidebar/SidebarTabTriggers.d.ts +6 -0
  204. package/dist/types/excalidraw/components/Sidebar/SidebarTabs.d.ts +6 -0
  205. package/dist/types/excalidraw/components/Sidebar/SidebarTrigger.d.ts +6 -0
  206. package/dist/types/excalidraw/components/Sidebar/common.d.ts +34 -0
  207. package/dist/types/excalidraw/components/Spinner.d.ts +8 -0
  208. package/dist/types/excalidraw/components/Stack.d.ts +15 -0
  209. package/dist/types/excalidraw/components/Stats/Angle.d.ts +11 -0
  210. package/dist/types/excalidraw/components/Stats/CanvasGrid.d.ts +10 -0
  211. package/dist/types/excalidraw/components/Stats/Collapsible.d.ts +10 -0
  212. package/dist/types/excalidraw/components/Stats/Dimension.d.ts +11 -0
  213. package/dist/types/excalidraw/components/Stats/DragInput.d.ts +44 -0
  214. package/dist/types/excalidraw/components/Stats/FontSize.d.ts +11 -0
  215. package/dist/types/excalidraw/components/Stats/MultiAngle.d.ts +11 -0
  216. package/dist/types/excalidraw/components/Stats/MultiDimension.d.ts +14 -0
  217. package/dist/types/excalidraw/components/Stats/MultiFontSize.d.ts +12 -0
  218. package/dist/types/excalidraw/components/Stats/MultiPosition.d.ts +14 -0
  219. package/dist/types/excalidraw/components/Stats/Position.d.ts +12 -0
  220. package/dist/types/excalidraw/components/Stats/index.d.ts +35 -0
  221. package/dist/types/excalidraw/components/Stats/utils.d.ts +19 -0
  222. package/dist/types/excalidraw/components/Switch.d.ts +9 -0
  223. package/dist/types/excalidraw/components/TTDDialog/MermaidToExcalidraw.d.ts +6 -0
  224. package/dist/types/excalidraw/components/TTDDialog/TTDDialog.d.ts +29 -0
  225. package/dist/types/excalidraw/components/TTDDialog/TTDDialogInput.d.ts +9 -0
  226. package/dist/types/excalidraw/components/TTDDialog/TTDDialogOutput.d.ts +7 -0
  227. package/dist/types/excalidraw/components/TTDDialog/TTDDialogPanel.d.ts +17 -0
  228. package/dist/types/excalidraw/components/TTDDialog/TTDDialogPanels.d.ts +4 -0
  229. package/dist/types/excalidraw/components/TTDDialog/TTDDialogSubmitShortcut.d.ts +1 -0
  230. package/dist/types/excalidraw/components/TTDDialog/TTDDialogTab.d.ts +7 -0
  231. package/dist/types/excalidraw/components/TTDDialog/TTDDialogTabTrigger.d.ts +8 -0
  232. package/dist/types/excalidraw/components/TTDDialog/TTDDialogTabTriggers.d.ts +6 -0
  233. package/dist/types/excalidraw/components/TTDDialog/TTDDialogTabs.d.ts +11 -0
  234. package/dist/types/excalidraw/components/TTDDialog/TTDDialogTrigger.d.ts +8 -0
  235. package/dist/types/excalidraw/components/TTDDialog/common.d.ts +32 -0
  236. package/dist/types/excalidraw/components/TextField.d.ts +22 -0
  237. package/dist/types/excalidraw/components/Toast.d.ts +9 -0
  238. package/dist/types/excalidraw/components/ToolButton.d.ts +49 -0
  239. package/dist/types/excalidraw/components/ToolPopover.d.ts +25 -0
  240. package/dist/types/excalidraw/components/Tooltip.d.ts +18 -0
  241. package/dist/types/excalidraw/components/Trans.d.ts +9 -0
  242. package/dist/types/excalidraw/components/UnlockPopup.d.ts +8 -0
  243. package/dist/types/excalidraw/components/UserList.d.ts +18 -0
  244. package/dist/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +33 -0
  245. package/dist/types/excalidraw/components/canvases/NewElementCanvas.d.ts +14 -0
  246. package/dist/types/excalidraw/components/canvases/StaticCanvas.d.ts +19 -0
  247. package/dist/types/excalidraw/components/canvases/index.d.ts +3 -0
  248. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenu.d.ts +84 -0
  249. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuContent.d.ts +16 -0
  250. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuGroup.d.ts +11 -0
  251. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItem.d.ts +38 -0
  252. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContent.d.ts +8 -0
  253. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContentRadio.d.ts +17 -0
  254. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemCustom.d.ts +7 -0
  255. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemLink.d.ts +16 -0
  256. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuSeparator.d.ts +5 -0
  257. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuTrigger.d.ts +10 -0
  258. package/dist/types/excalidraw/components/dropdownMenu/common.d.ts +6 -0
  259. package/dist/types/excalidraw/components/dropdownMenu/dropdownMenuUtils.d.ts +3 -0
  260. package/dist/types/excalidraw/components/footer/Footer.d.ts +12 -0
  261. package/dist/types/excalidraw/components/footer/FooterCenter.d.ts +8 -0
  262. package/dist/types/excalidraw/components/hoc/withInternalFallback.d.ts +4 -0
  263. package/dist/types/excalidraw/components/hyperlink/Hyperlink.d.ts +19 -0
  264. package/dist/types/excalidraw/components/hyperlink/helpers.d.ts +10 -0
  265. package/dist/types/excalidraw/components/icons.d.ts +239 -0
  266. package/dist/types/excalidraw/components/live-collaboration/LiveCollaborationTrigger.d.ts +11 -0
  267. package/dist/types/excalidraw/components/main-menu/DefaultItems.d.ts +64 -0
  268. package/dist/types/excalidraw/components/main-menu/MainMenu.d.ts +78 -0
  269. package/dist/types/excalidraw/components/shapes.d.ts +262 -0
  270. package/dist/types/excalidraw/components/welcome-screen/WelcomeScreen.Center.d.ts +58 -0
  271. package/dist/types/excalidraw/components/welcome-screen/WelcomeScreen.Hints.d.ts +19 -0
  272. package/dist/types/excalidraw/components/welcome-screen/WelcomeScreen.d.ts +84 -0
  273. package/dist/types/excalidraw/context/tunnels.d.ts +21 -0
  274. package/dist/types/excalidraw/context/ui-appState.d.ts +4 -0
  275. package/dist/types/excalidraw/cursor.d.ts +5 -0
  276. package/dist/types/excalidraw/data/EditorLocalStorage.d.ts +8 -0
  277. package/dist/types/excalidraw/data/blob.d.ts +367 -0
  278. package/dist/types/excalidraw/data/encode.d.ts +55 -0
  279. package/dist/types/excalidraw/data/encryption.d.ts +9 -0
  280. package/dist/types/excalidraw/data/filesystem.d.ts +21 -0
  281. package/dist/types/excalidraw/data/image.d.ts +9 -0
  282. package/dist/types/excalidraw/data/index.d.ts +22 -0
  283. package/dist/types/excalidraw/data/json.d.ts +173 -0
  284. package/dist/types/excalidraw/data/library.d.ts +127 -0
  285. package/dist/types/excalidraw/data/reconcile.d.ts +7 -0
  286. package/dist/types/excalidraw/data/resave.d.ts +5 -0
  287. package/dist/types/excalidraw/data/restore.d.ts +41 -0
  288. package/dist/types/excalidraw/data/types.d.ts +48 -0
  289. package/dist/types/excalidraw/deburr.d.ts +1 -0
  290. package/dist/types/excalidraw/editor-jotai.d.ts +56 -0
  291. package/dist/types/excalidraw/eraser/index.d.ts +12 -0
  292. package/dist/types/excalidraw/errors.d.ts +29 -0
  293. package/dist/types/excalidraw/fonts/Cascadia/index.d.ts +2 -0
  294. package/dist/types/excalidraw/fonts/ComicShanns/index.d.ts +2 -0
  295. package/dist/types/excalidraw/fonts/Emoji/index.d.ts +2 -0
  296. package/dist/types/excalidraw/fonts/ExcalidrawFontFace.d.ts +25 -0
  297. package/dist/types/excalidraw/fonts/Excalifont/index.d.ts +2 -0
  298. package/dist/types/excalidraw/fonts/Fonts.d.ts +79 -0
  299. package/dist/types/excalidraw/fonts/Helvetica/index.d.ts +2 -0
  300. package/dist/types/excalidraw/fonts/Liberation/index.d.ts +2 -0
  301. package/dist/types/excalidraw/fonts/Lilita/index.d.ts +2 -0
  302. package/dist/types/excalidraw/fonts/Nunito/index.d.ts +2 -0
  303. package/dist/types/excalidraw/fonts/Virgil/index.d.ts +2 -0
  304. package/dist/types/excalidraw/fonts/Xiaolai/index.d.ts +8 -0
  305. package/dist/types/excalidraw/fonts/index.d.ts +1 -0
  306. package/dist/types/excalidraw/gesture.d.ts +6 -0
  307. package/dist/types/excalidraw/history.d.ts +48 -0
  308. package/dist/types/excalidraw/hooks/useCallbackRefState.d.ts +1 -0
  309. package/dist/types/excalidraw/hooks/useCopiedIndicator.d.ts +5 -0
  310. package/dist/types/excalidraw/hooks/useCreatePortalContainer.d.ts +4 -0
  311. package/dist/types/excalidraw/hooks/useEmitter.d.ts +2 -0
  312. package/dist/types/excalidraw/hooks/useLibraryItemSvg.d.ts +11 -0
  313. package/dist/types/excalidraw/hooks/useOutsideClick.d.ts +21 -0
  314. package/dist/types/excalidraw/hooks/useScrollPosition.d.ts +1 -0
  315. package/dist/types/excalidraw/hooks/useStable.d.ts +1 -0
  316. package/dist/types/excalidraw/hooks/useStableCallback.d.ts +4 -0
  317. package/dist/types/excalidraw/hooks/useTextEditorFocus.d.ts +14 -0
  318. package/dist/types/excalidraw/hooks/useTransition.d.ts +2 -0
  319. package/dist/types/excalidraw/i18n.d.ts +24 -0
  320. package/dist/types/excalidraw/index.d.ts +44 -0
  321. package/dist/types/excalidraw/laser-trails.d.ts +20 -0
  322. package/dist/types/excalidraw/lasso/index.d.ts +16 -0
  323. package/dist/types/excalidraw/lasso/utils.d.ts +13 -0
  324. package/dist/types/excalidraw/mermaid.d.ts +2 -0
  325. package/dist/types/excalidraw/polyfill.d.ts +2 -0
  326. package/dist/types/excalidraw/reactUtils.d.ts +14 -0
  327. package/dist/types/excalidraw/renderer/animation.d.ts +12 -0
  328. package/dist/types/excalidraw/renderer/helpers.d.ts +16 -0
  329. package/dist/types/excalidraw/renderer/interactiveScene.d.ts +14 -0
  330. package/dist/types/excalidraw/renderer/renderNewElementScene.d.ts +7 -0
  331. package/dist/types/excalidraw/renderer/renderSnaps.d.ts +2 -0
  332. package/dist/types/excalidraw/renderer/roundRect.d.ts +11 -0
  333. package/dist/types/excalidraw/renderer/staticScene.d.ts +14 -0
  334. package/dist/types/excalidraw/renderer/staticSvgScene.d.ts +5 -0
  335. package/dist/types/excalidraw/scene/Renderer.d.ts +30 -0
  336. package/dist/types/excalidraw/scene/export.d.ts +36 -0
  337. package/dist/types/excalidraw/scene/index.d.ts +4 -0
  338. package/dist/types/excalidraw/scene/normalize.d.ts +4 -0
  339. package/dist/types/excalidraw/scene/scroll.d.ts +18 -0
  340. package/dist/types/excalidraw/scene/scrollbars.d.ts +11 -0
  341. package/dist/types/excalidraw/scene/types.d.ts +141 -0
  342. package/dist/types/excalidraw/scene/zoom.d.ts +12 -0
  343. package/dist/types/excalidraw/shortcut.d.ts +1 -0
  344. package/dist/types/excalidraw/snapping.d.ts +111 -0
  345. package/dist/types/excalidraw/subset/harfbuzz/harfbuzz-bindings.d.ts +45 -0
  346. package/dist/types/excalidraw/subset/harfbuzz/harfbuzz-loader.d.ts +13 -0
  347. package/dist/types/excalidraw/subset/harfbuzz/harfbuzz-wasm.d.ts +2 -0
  348. package/dist/types/excalidraw/subset/subset-main.d.ts +12 -0
  349. package/dist/types/excalidraw/subset/subset-shared.chunk.d.ts +32 -0
  350. package/dist/types/excalidraw/subset/subset-worker.chunk.d.ts +15 -0
  351. package/dist/types/excalidraw/subset/woff2/woff2-bindings.d.ts +31 -0
  352. package/dist/types/excalidraw/subset/woff2/woff2-loader.d.ts +14 -0
  353. package/dist/types/excalidraw/subset/woff2/woff2-wasm.d.ts +2 -0
  354. package/dist/types/excalidraw/types.d.ts +719 -0
  355. package/dist/types/excalidraw/workers.d.ts +36 -0
  356. package/dist/types/excalidraw/wysiwyg/textWysiwyg.d.ts +24 -0
  357. package/dist/types/math/src/angle.d.ts +19 -0
  358. package/dist/types/math/src/constants.d.ts +3 -0
  359. package/dist/types/math/src/curve.d.ts +74 -0
  360. package/dist/types/math/src/ellipse.d.ts +44 -0
  361. package/dist/types/math/src/index.d.ts +13 -0
  362. package/dist/types/math/src/line.d.ts +17 -0
  363. package/dist/types/math/src/point.d.ts +122 -0
  364. package/dist/types/math/src/polygon.d.ts +6 -0
  365. package/dist/types/math/src/range.d.ts +42 -0
  366. package/dist/types/math/src/rectangle.d.ts +5 -0
  367. package/dist/types/math/src/segment.d.ts +40 -0
  368. package/dist/types/math/src/triangle.d.ts +11 -0
  369. package/dist/types/math/src/types.d.ts +106 -0
  370. package/dist/types/math/src/utils.d.ts +7 -0
  371. package/dist/types/math/src/vector.d.ts +94 -0
  372. package/dist/types/utils/src/bbox.d.ts +9 -0
  373. package/dist/types/utils/src/export.d.ts +35 -0
  374. package/dist/types/utils/src/index.d.ts +4 -0
  375. package/dist/types/utils/src/shape.d.ts +58 -0
  376. package/dist/types/utils/src/withinBounds.d.ts +19 -0
  377. package/package.json +3 -3
@@ -0,0 +1,2047 @@
1
+ import { type SceneBounds } from "@excalidraw/element";
2
+ import type { ExcalidrawElement } from "@excalidraw/element/types";
3
+ import type { AppState, Offsets } from "../types";
4
+ export declare const actionChangeViewBackgroundColor: import("./types").Action<Partial<AppState>> & {
5
+ keyTest?: ((event: React.KeyboardEvent | KeyboardEvent, appState: AppState, elements: readonly ExcalidrawElement[], app: import("../types").AppClassProperties) => boolean) | undefined;
6
+ };
7
+ export declare const actionClearCanvas: {
8
+ name: "clearCanvas";
9
+ label: string;
10
+ icon: import("react/jsx-runtime").JSX.Element;
11
+ trackEvent: {
12
+ category: "canvas";
13
+ };
14
+ predicate: (elements: readonly ExcalidrawElement[], appState: AppState, props: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
15
+ perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
16
+ elements: import("@excalidraw/element/types").OrderedExcalidrawElement[];
17
+ appState: {
18
+ files: {};
19
+ theme: import("@excalidraw/element/types").Theme;
20
+ penMode: boolean;
21
+ penDetected: boolean;
22
+ exportBackground: boolean;
23
+ exportEmbedScene: boolean;
24
+ gridSize: number;
25
+ gridStep: number;
26
+ gridModeEnabled: boolean;
27
+ stats: {
28
+ open: boolean;
29
+ panels: number;
30
+ };
31
+ pasteDialog: {
32
+ shown: false;
33
+ data: null;
34
+ } | {
35
+ shown: true;
36
+ data: import("../charts").Spreadsheet;
37
+ };
38
+ activeTool: {
39
+ lastActiveTool: import("../types").ActiveTool | null;
40
+ locked: boolean;
41
+ fromSelection: boolean;
42
+ } & import("../types").ActiveTool;
43
+ viewBackgroundColor: string;
44
+ frameRendering: {
45
+ enabled: boolean;
46
+ name: boolean;
47
+ outline: boolean;
48
+ clip: boolean;
49
+ };
50
+ name: string | null;
51
+ zoom: import("../types").Zoom;
52
+ scrollX: number;
53
+ scrollY: number;
54
+ viewModeEnabled: boolean;
55
+ openDialog: null | {
56
+ name: "imageExport" | "help" | "jsonExport";
57
+ } | {
58
+ name: "ttd";
59
+ tab: "text-to-diagram" | "mermaid";
60
+ } | {
61
+ name: "commandPalette";
62
+ } | {
63
+ name: "settings";
64
+ } | {
65
+ name: "elementLinkSelector";
66
+ sourceElementId: ExcalidrawElement["id"];
67
+ };
68
+ editingGroupId: import("@excalidraw/element/types").GroupId | null;
69
+ selectedElementIds: Readonly<{
70
+ [id: string]: true;
71
+ }>;
72
+ frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
73
+ activeEmbeddable: {
74
+ element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
75
+ state: "hover" | "active";
76
+ } | null;
77
+ selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
78
+ selectedGroupIds: {
79
+ [groupId: string]: boolean;
80
+ };
81
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
82
+ multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
83
+ newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
84
+ isBindingEnabled: boolean;
85
+ suggestedBinding: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
86
+ isRotating: boolean;
87
+ elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
88
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
89
+ snapLines: readonly import("../snapping").SnapLine[];
90
+ zenModeEnabled: boolean;
91
+ editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
92
+ isCropping: boolean;
93
+ croppingElementId: ExcalidrawElement["id"] | null;
94
+ searchMatches: Readonly<{
95
+ focusedId: ExcalidrawElement["id"] | null;
96
+ matches: readonly import("../types").SearchMatch[];
97
+ }> | null;
98
+ activeLockedId: string | null;
99
+ hoveredElementIds: Readonly<{
100
+ [id: string]: true;
101
+ }>;
102
+ shouldCacheIgnoreZoom: boolean;
103
+ exportScale: number;
104
+ bindMode: import("@excalidraw/element/types").BindMode;
105
+ contextMenu: {
106
+ items: import("../components/ContextMenu").ContextMenuItems;
107
+ top: number;
108
+ left: number;
109
+ } | null;
110
+ showWelcomeScreen: boolean;
111
+ isLoading: boolean;
112
+ errorMessage: React.ReactNode;
113
+ resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
114
+ startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
115
+ editingFrame: string | null;
116
+ preferredSelectionTool: {
117
+ type: "selection" | "lasso";
118
+ initialized: boolean;
119
+ };
120
+ exportWithDarkMode: boolean;
121
+ currentItemStrokeColor: string;
122
+ currentItemBackgroundColor: string;
123
+ currentItemFillStyle: ExcalidrawElement["fillStyle"];
124
+ currentItemStrokeWidth: number;
125
+ currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
126
+ currentItemRoughness: number;
127
+ currentItemOpacity: number;
128
+ currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
129
+ currentItemFontSize: number;
130
+ currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
131
+ currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
132
+ currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
133
+ currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
134
+ currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
135
+ currentItemArrowType: "sharp" | "round" | "elbow";
136
+ cursorButton: "up" | "down";
137
+ scrolledOutside: boolean;
138
+ isResizing: boolean;
139
+ openMenu: "canvas" | null;
140
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
141
+ openSidebar: {
142
+ name: import("../types").SidebarName;
143
+ tab?: import("../types").SidebarTabName;
144
+ } | null;
145
+ defaultSidebarDockedPreference: boolean;
146
+ lastPointerDownWith: import("@excalidraw/element/types").PointerType;
147
+ previousSelectedElementIds: {
148
+ [id: string]: true;
149
+ };
150
+ selectedElementsAreBeingDragged: boolean;
151
+ toast: {
152
+ message: string;
153
+ closable?: boolean;
154
+ duration?: number;
155
+ } | null;
156
+ fileHandle: import("browser-fs-access").FileSystemHandle | null;
157
+ currentChartType: import("@excalidraw/element/types").ChartType;
158
+ showHyperlinkPopup: false | "info" | "editor";
159
+ originSnapOffset: {
160
+ x: number;
161
+ y: number;
162
+ } | null;
163
+ objectsSnapModeEnabled: boolean;
164
+ userToFollow: import("../types").UserToFollow | null;
165
+ followedBy: Set<import("../types").SocketId>;
166
+ lockedMultiSelections: {
167
+ [groupId: string]: true;
168
+ };
169
+ };
170
+ captureUpdate: "IMMEDIATELY";
171
+ };
172
+ } & {
173
+ keyTest?: undefined;
174
+ };
175
+ export declare const actionZoomIn: {
176
+ name: "zoomIn";
177
+ label: string;
178
+ viewMode: true;
179
+ icon: import("react/jsx-runtime").JSX.Element;
180
+ trackEvent: {
181
+ category: "canvas";
182
+ };
183
+ perform: (_elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
184
+ appState: {
185
+ userToFollow: null;
186
+ scrollX: number;
187
+ scrollY: number;
188
+ zoom: {
189
+ value: import("../types").NormalizedZoomValue;
190
+ };
191
+ contextMenu: {
192
+ items: import("../components/ContextMenu").ContextMenuItems;
193
+ top: number;
194
+ left: number;
195
+ } | null;
196
+ showWelcomeScreen: boolean;
197
+ isLoading: boolean;
198
+ errorMessage: React.ReactNode;
199
+ activeEmbeddable: {
200
+ element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
201
+ state: "hover" | "active";
202
+ } | null;
203
+ newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
204
+ resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
205
+ multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
206
+ selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
207
+ isBindingEnabled: boolean;
208
+ startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
209
+ suggestedBinding: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
210
+ frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
211
+ frameRendering: {
212
+ enabled: boolean;
213
+ name: boolean;
214
+ outline: boolean;
215
+ clip: boolean;
216
+ };
217
+ editingFrame: string | null;
218
+ elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
219
+ editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
220
+ activeTool: {
221
+ lastActiveTool: import("../types").ActiveTool | null;
222
+ locked: boolean;
223
+ fromSelection: boolean;
224
+ } & import("../types").ActiveTool;
225
+ preferredSelectionTool: {
226
+ type: "selection" | "lasso";
227
+ initialized: boolean;
228
+ };
229
+ penMode: boolean;
230
+ penDetected: boolean;
231
+ exportBackground: boolean;
232
+ exportEmbedScene: boolean;
233
+ exportWithDarkMode: boolean;
234
+ exportScale: number;
235
+ currentItemStrokeColor: string;
236
+ currentItemBackgroundColor: string;
237
+ currentItemFillStyle: ExcalidrawElement["fillStyle"];
238
+ currentItemStrokeWidth: number;
239
+ currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
240
+ currentItemRoughness: number;
241
+ currentItemOpacity: number;
242
+ currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
243
+ currentItemFontSize: number;
244
+ currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
245
+ currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
246
+ currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
247
+ currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
248
+ currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
249
+ currentItemArrowType: "sharp" | "round" | "elbow";
250
+ viewBackgroundColor: string;
251
+ cursorButton: "up" | "down";
252
+ scrolledOutside: boolean;
253
+ name: string | null;
254
+ isResizing: boolean;
255
+ isRotating: boolean;
256
+ openMenu: "canvas" | null;
257
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
258
+ openSidebar: {
259
+ name: import("../types").SidebarName;
260
+ tab?: import("../types").SidebarTabName;
261
+ } | null;
262
+ openDialog: null | {
263
+ name: "imageExport" | "help" | "jsonExport";
264
+ } | {
265
+ name: "ttd";
266
+ tab: "text-to-diagram" | "mermaid";
267
+ } | {
268
+ name: "commandPalette";
269
+ } | {
270
+ name: "settings";
271
+ } | {
272
+ name: "elementLinkSelector";
273
+ sourceElementId: ExcalidrawElement["id"];
274
+ };
275
+ defaultSidebarDockedPreference: boolean;
276
+ lastPointerDownWith: import("@excalidraw/element/types").PointerType;
277
+ selectedElementIds: Readonly<{
278
+ [id: string]: true;
279
+ }>;
280
+ hoveredElementIds: Readonly<{
281
+ [id: string]: true;
282
+ }>;
283
+ previousSelectedElementIds: {
284
+ [id: string]: true;
285
+ };
286
+ selectedElementsAreBeingDragged: boolean;
287
+ shouldCacheIgnoreZoom: boolean;
288
+ toast: {
289
+ message: string;
290
+ closable?: boolean;
291
+ duration?: number;
292
+ } | null;
293
+ zenModeEnabled: boolean;
294
+ theme: import("@excalidraw/element/types").Theme;
295
+ gridSize: number;
296
+ gridStep: number;
297
+ gridModeEnabled: boolean;
298
+ viewModeEnabled: boolean;
299
+ selectedGroupIds: {
300
+ [groupId: string]: boolean;
301
+ };
302
+ editingGroupId: import("@excalidraw/element/types").GroupId | null;
303
+ width: number;
304
+ height: number;
305
+ offsetTop: number;
306
+ offsetLeft: number;
307
+ fileHandle: import("browser-fs-access").FileSystemHandle | null;
308
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
309
+ stats: {
310
+ open: boolean;
311
+ panels: number;
312
+ };
313
+ currentChartType: import("@excalidraw/element/types").ChartType;
314
+ pasteDialog: {
315
+ shown: false;
316
+ data: null;
317
+ } | {
318
+ shown: true;
319
+ data: import("../charts").Spreadsheet;
320
+ };
321
+ showHyperlinkPopup: false | "info" | "editor";
322
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
323
+ snapLines: readonly import("../snapping").SnapLine[];
324
+ originSnapOffset: {
325
+ x: number;
326
+ y: number;
327
+ } | null;
328
+ objectsSnapModeEnabled: boolean;
329
+ followedBy: Set<import("../types").SocketId>;
330
+ isCropping: boolean;
331
+ croppingElementId: ExcalidrawElement["id"] | null;
332
+ searchMatches: Readonly<{
333
+ focusedId: ExcalidrawElement["id"] | null;
334
+ matches: readonly import("../types").SearchMatch[];
335
+ }> | null;
336
+ activeLockedId: string | null;
337
+ lockedMultiSelections: {
338
+ [groupId: string]: true;
339
+ };
340
+ bindMode: import("@excalidraw/element/types").BindMode;
341
+ };
342
+ captureUpdate: "EVENTUALLY";
343
+ };
344
+ PanelComponent: ({ updateData, appState }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
345
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
346
+ } & {
347
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
348
+ };
349
+ export declare const actionZoomOut: {
350
+ name: "zoomOut";
351
+ label: string;
352
+ icon: import("react/jsx-runtime").JSX.Element;
353
+ viewMode: true;
354
+ trackEvent: {
355
+ category: "canvas";
356
+ };
357
+ perform: (_elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
358
+ appState: {
359
+ userToFollow: null;
360
+ scrollX: number;
361
+ scrollY: number;
362
+ zoom: {
363
+ value: import("../types").NormalizedZoomValue;
364
+ };
365
+ contextMenu: {
366
+ items: import("../components/ContextMenu").ContextMenuItems;
367
+ top: number;
368
+ left: number;
369
+ } | null;
370
+ showWelcomeScreen: boolean;
371
+ isLoading: boolean;
372
+ errorMessage: React.ReactNode;
373
+ activeEmbeddable: {
374
+ element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
375
+ state: "hover" | "active";
376
+ } | null;
377
+ newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
378
+ resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
379
+ multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
380
+ selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
381
+ isBindingEnabled: boolean;
382
+ startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
383
+ suggestedBinding: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
384
+ frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
385
+ frameRendering: {
386
+ enabled: boolean;
387
+ name: boolean;
388
+ outline: boolean;
389
+ clip: boolean;
390
+ };
391
+ editingFrame: string | null;
392
+ elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
393
+ editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
394
+ activeTool: {
395
+ lastActiveTool: import("../types").ActiveTool | null;
396
+ locked: boolean;
397
+ fromSelection: boolean;
398
+ } & import("../types").ActiveTool;
399
+ preferredSelectionTool: {
400
+ type: "selection" | "lasso";
401
+ initialized: boolean;
402
+ };
403
+ penMode: boolean;
404
+ penDetected: boolean;
405
+ exportBackground: boolean;
406
+ exportEmbedScene: boolean;
407
+ exportWithDarkMode: boolean;
408
+ exportScale: number;
409
+ currentItemStrokeColor: string;
410
+ currentItemBackgroundColor: string;
411
+ currentItemFillStyle: ExcalidrawElement["fillStyle"];
412
+ currentItemStrokeWidth: number;
413
+ currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
414
+ currentItemRoughness: number;
415
+ currentItemOpacity: number;
416
+ currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
417
+ currentItemFontSize: number;
418
+ currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
419
+ currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
420
+ currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
421
+ currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
422
+ currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
423
+ currentItemArrowType: "sharp" | "round" | "elbow";
424
+ viewBackgroundColor: string;
425
+ cursorButton: "up" | "down";
426
+ scrolledOutside: boolean;
427
+ name: string | null;
428
+ isResizing: boolean;
429
+ isRotating: boolean;
430
+ openMenu: "canvas" | null;
431
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
432
+ openSidebar: {
433
+ name: import("../types").SidebarName;
434
+ tab?: import("../types").SidebarTabName;
435
+ } | null;
436
+ openDialog: null | {
437
+ name: "imageExport" | "help" | "jsonExport";
438
+ } | {
439
+ name: "ttd";
440
+ tab: "text-to-diagram" | "mermaid";
441
+ } | {
442
+ name: "commandPalette";
443
+ } | {
444
+ name: "settings";
445
+ } | {
446
+ name: "elementLinkSelector";
447
+ sourceElementId: ExcalidrawElement["id"];
448
+ };
449
+ defaultSidebarDockedPreference: boolean;
450
+ lastPointerDownWith: import("@excalidraw/element/types").PointerType;
451
+ selectedElementIds: Readonly<{
452
+ [id: string]: true;
453
+ }>;
454
+ hoveredElementIds: Readonly<{
455
+ [id: string]: true;
456
+ }>;
457
+ previousSelectedElementIds: {
458
+ [id: string]: true;
459
+ };
460
+ selectedElementsAreBeingDragged: boolean;
461
+ shouldCacheIgnoreZoom: boolean;
462
+ toast: {
463
+ message: string;
464
+ closable?: boolean;
465
+ duration?: number;
466
+ } | null;
467
+ zenModeEnabled: boolean;
468
+ theme: import("@excalidraw/element/types").Theme;
469
+ gridSize: number;
470
+ gridStep: number;
471
+ gridModeEnabled: boolean;
472
+ viewModeEnabled: boolean;
473
+ selectedGroupIds: {
474
+ [groupId: string]: boolean;
475
+ };
476
+ editingGroupId: import("@excalidraw/element/types").GroupId | null;
477
+ width: number;
478
+ height: number;
479
+ offsetTop: number;
480
+ offsetLeft: number;
481
+ fileHandle: import("browser-fs-access").FileSystemHandle | null;
482
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
483
+ stats: {
484
+ open: boolean;
485
+ panels: number;
486
+ };
487
+ currentChartType: import("@excalidraw/element/types").ChartType;
488
+ pasteDialog: {
489
+ shown: false;
490
+ data: null;
491
+ } | {
492
+ shown: true;
493
+ data: import("../charts").Spreadsheet;
494
+ };
495
+ showHyperlinkPopup: false | "info" | "editor";
496
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
497
+ snapLines: readonly import("../snapping").SnapLine[];
498
+ originSnapOffset: {
499
+ x: number;
500
+ y: number;
501
+ } | null;
502
+ objectsSnapModeEnabled: boolean;
503
+ followedBy: Set<import("../types").SocketId>;
504
+ isCropping: boolean;
505
+ croppingElementId: ExcalidrawElement["id"] | null;
506
+ searchMatches: Readonly<{
507
+ focusedId: ExcalidrawElement["id"] | null;
508
+ matches: readonly import("../types").SearchMatch[];
509
+ }> | null;
510
+ activeLockedId: string | null;
511
+ lockedMultiSelections: {
512
+ [groupId: string]: true;
513
+ };
514
+ bindMode: import("@excalidraw/element/types").BindMode;
515
+ };
516
+ captureUpdate: "EVENTUALLY";
517
+ };
518
+ PanelComponent: ({ updateData, appState }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
519
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
520
+ } & {
521
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
522
+ };
523
+ export declare const actionResetZoom: {
524
+ name: "resetZoom";
525
+ label: string;
526
+ icon: import("react/jsx-runtime").JSX.Element;
527
+ viewMode: true;
528
+ trackEvent: {
529
+ category: "canvas";
530
+ };
531
+ perform: (_elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
532
+ appState: {
533
+ userToFollow: null;
534
+ scrollX: number;
535
+ scrollY: number;
536
+ zoom: {
537
+ value: import("../types").NormalizedZoomValue;
538
+ };
539
+ contextMenu: {
540
+ items: import("../components/ContextMenu").ContextMenuItems;
541
+ top: number;
542
+ left: number;
543
+ } | null;
544
+ showWelcomeScreen: boolean;
545
+ isLoading: boolean;
546
+ errorMessage: React.ReactNode;
547
+ activeEmbeddable: {
548
+ element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
549
+ state: "hover" | "active";
550
+ } | null;
551
+ newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
552
+ resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
553
+ multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
554
+ selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
555
+ isBindingEnabled: boolean;
556
+ startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
557
+ suggestedBinding: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
558
+ frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
559
+ frameRendering: {
560
+ enabled: boolean;
561
+ name: boolean;
562
+ outline: boolean;
563
+ clip: boolean;
564
+ };
565
+ editingFrame: string | null;
566
+ elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
567
+ editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
568
+ activeTool: {
569
+ lastActiveTool: import("../types").ActiveTool | null;
570
+ locked: boolean;
571
+ fromSelection: boolean;
572
+ } & import("../types").ActiveTool;
573
+ preferredSelectionTool: {
574
+ type: "selection" | "lasso";
575
+ initialized: boolean;
576
+ };
577
+ penMode: boolean;
578
+ penDetected: boolean;
579
+ exportBackground: boolean;
580
+ exportEmbedScene: boolean;
581
+ exportWithDarkMode: boolean;
582
+ exportScale: number;
583
+ currentItemStrokeColor: string;
584
+ currentItemBackgroundColor: string;
585
+ currentItemFillStyle: ExcalidrawElement["fillStyle"];
586
+ currentItemStrokeWidth: number;
587
+ currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
588
+ currentItemRoughness: number;
589
+ currentItemOpacity: number;
590
+ currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
591
+ currentItemFontSize: number;
592
+ currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
593
+ currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
594
+ currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
595
+ currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
596
+ currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
597
+ currentItemArrowType: "sharp" | "round" | "elbow";
598
+ viewBackgroundColor: string;
599
+ cursorButton: "up" | "down";
600
+ scrolledOutside: boolean;
601
+ name: string | null;
602
+ isResizing: boolean;
603
+ isRotating: boolean;
604
+ openMenu: "canvas" | null;
605
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
606
+ openSidebar: {
607
+ name: import("../types").SidebarName;
608
+ tab?: import("../types").SidebarTabName;
609
+ } | null;
610
+ openDialog: null | {
611
+ name: "imageExport" | "help" | "jsonExport";
612
+ } | {
613
+ name: "ttd";
614
+ tab: "text-to-diagram" | "mermaid";
615
+ } | {
616
+ name: "commandPalette";
617
+ } | {
618
+ name: "settings";
619
+ } | {
620
+ name: "elementLinkSelector";
621
+ sourceElementId: ExcalidrawElement["id"];
622
+ };
623
+ defaultSidebarDockedPreference: boolean;
624
+ lastPointerDownWith: import("@excalidraw/element/types").PointerType;
625
+ selectedElementIds: Readonly<{
626
+ [id: string]: true;
627
+ }>;
628
+ hoveredElementIds: Readonly<{
629
+ [id: string]: true;
630
+ }>;
631
+ previousSelectedElementIds: {
632
+ [id: string]: true;
633
+ };
634
+ selectedElementsAreBeingDragged: boolean;
635
+ shouldCacheIgnoreZoom: boolean;
636
+ toast: {
637
+ message: string;
638
+ closable?: boolean;
639
+ duration?: number;
640
+ } | null;
641
+ zenModeEnabled: boolean;
642
+ theme: import("@excalidraw/element/types").Theme;
643
+ gridSize: number;
644
+ gridStep: number;
645
+ gridModeEnabled: boolean;
646
+ viewModeEnabled: boolean;
647
+ selectedGroupIds: {
648
+ [groupId: string]: boolean;
649
+ };
650
+ editingGroupId: import("@excalidraw/element/types").GroupId | null;
651
+ width: number;
652
+ height: number;
653
+ offsetTop: number;
654
+ offsetLeft: number;
655
+ fileHandle: import("browser-fs-access").FileSystemHandle | null;
656
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
657
+ stats: {
658
+ open: boolean;
659
+ panels: number;
660
+ };
661
+ currentChartType: import("@excalidraw/element/types").ChartType;
662
+ pasteDialog: {
663
+ shown: false;
664
+ data: null;
665
+ } | {
666
+ shown: true;
667
+ data: import("../charts").Spreadsheet;
668
+ };
669
+ showHyperlinkPopup: false | "info" | "editor";
670
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
671
+ snapLines: readonly import("../snapping").SnapLine[];
672
+ originSnapOffset: {
673
+ x: number;
674
+ y: number;
675
+ } | null;
676
+ objectsSnapModeEnabled: boolean;
677
+ followedBy: Set<import("../types").SocketId>;
678
+ isCropping: boolean;
679
+ croppingElementId: ExcalidrawElement["id"] | null;
680
+ searchMatches: Readonly<{
681
+ focusedId: ExcalidrawElement["id"] | null;
682
+ matches: readonly import("../types").SearchMatch[];
683
+ }> | null;
684
+ activeLockedId: string | null;
685
+ lockedMultiSelections: {
686
+ [groupId: string]: true;
687
+ };
688
+ bindMode: import("@excalidraw/element/types").BindMode;
689
+ };
690
+ captureUpdate: "EVENTUALLY";
691
+ };
692
+ PanelComponent: ({ updateData, appState }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
693
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
694
+ } & {
695
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
696
+ };
697
+ export declare const zoomToFitBounds: ({ bounds, appState, canvasOffsets, fitToViewport, viewportZoomFactor, minZoom, maxZoom, }: {
698
+ bounds: SceneBounds;
699
+ canvasOffsets?: Offsets;
700
+ appState: Readonly<AppState>;
701
+ /** whether to fit content to viewport (beyond >100%) */
702
+ fitToViewport: boolean;
703
+ /** zoom content to cover X of the viewport, when fitToViewport=true */
704
+ viewportZoomFactor?: number;
705
+ minZoom?: number;
706
+ maxZoom?: number;
707
+ }) => {
708
+ appState: {
709
+ scrollX: number;
710
+ scrollY: number;
711
+ zoom: {
712
+ value: import("../types").NormalizedZoomValue;
713
+ };
714
+ contextMenu: {
715
+ items: import("../components/ContextMenu").ContextMenuItems;
716
+ top: number;
717
+ left: number;
718
+ } | null;
719
+ showWelcomeScreen: boolean;
720
+ isLoading: boolean;
721
+ errorMessage: React.ReactNode;
722
+ activeEmbeddable: {
723
+ element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
724
+ state: "hover" | "active";
725
+ } | null;
726
+ newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
727
+ resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
728
+ multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
729
+ selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
730
+ isBindingEnabled: boolean;
731
+ startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
732
+ suggestedBinding: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
733
+ frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
734
+ frameRendering: {
735
+ enabled: boolean;
736
+ name: boolean;
737
+ outline: boolean;
738
+ clip: boolean;
739
+ };
740
+ editingFrame: string | null;
741
+ elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
742
+ editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
743
+ activeTool: {
744
+ lastActiveTool: import("../types").ActiveTool | null;
745
+ locked: boolean;
746
+ fromSelection: boolean;
747
+ } & import("../types").ActiveTool;
748
+ preferredSelectionTool: {
749
+ type: "selection" | "lasso";
750
+ initialized: boolean;
751
+ };
752
+ penMode: boolean;
753
+ penDetected: boolean;
754
+ exportBackground: boolean;
755
+ exportEmbedScene: boolean;
756
+ exportWithDarkMode: boolean;
757
+ exportScale: number;
758
+ currentItemStrokeColor: string;
759
+ currentItemBackgroundColor: string;
760
+ currentItemFillStyle: ExcalidrawElement["fillStyle"];
761
+ currentItemStrokeWidth: number;
762
+ currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
763
+ currentItemRoughness: number;
764
+ currentItemOpacity: number;
765
+ currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
766
+ currentItemFontSize: number;
767
+ currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
768
+ currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
769
+ currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
770
+ currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
771
+ currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
772
+ currentItemArrowType: "sharp" | "round" | "elbow";
773
+ viewBackgroundColor: string;
774
+ cursorButton: "up" | "down";
775
+ scrolledOutside: boolean;
776
+ name: string | null;
777
+ isResizing: boolean;
778
+ isRotating: boolean;
779
+ openMenu: "canvas" | null;
780
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
781
+ openSidebar: {
782
+ name: import("../types").SidebarName;
783
+ tab?: import("../types").SidebarTabName;
784
+ } | null;
785
+ openDialog: null | {
786
+ name: "imageExport" | "help" | "jsonExport";
787
+ } | {
788
+ name: "ttd";
789
+ tab: "text-to-diagram" | "mermaid";
790
+ } | {
791
+ name: "commandPalette";
792
+ } | {
793
+ name: "settings";
794
+ } | {
795
+ name: "elementLinkSelector";
796
+ sourceElementId: ExcalidrawElement["id"];
797
+ };
798
+ defaultSidebarDockedPreference: boolean;
799
+ lastPointerDownWith: import("@excalidraw/element/types").PointerType;
800
+ selectedElementIds: Readonly<{
801
+ [id: string]: true;
802
+ }>;
803
+ hoveredElementIds: Readonly<{
804
+ [id: string]: true;
805
+ }>;
806
+ previousSelectedElementIds: {
807
+ [id: string]: true;
808
+ };
809
+ selectedElementsAreBeingDragged: boolean;
810
+ shouldCacheIgnoreZoom: boolean;
811
+ toast: {
812
+ message: string;
813
+ closable?: boolean;
814
+ duration?: number;
815
+ } | null;
816
+ zenModeEnabled: boolean;
817
+ theme: import("@excalidraw/element/types").Theme;
818
+ gridSize: number;
819
+ gridStep: number;
820
+ gridModeEnabled: boolean;
821
+ viewModeEnabled: boolean;
822
+ selectedGroupIds: {
823
+ [groupId: string]: boolean;
824
+ };
825
+ editingGroupId: import("@excalidraw/element/types").GroupId | null;
826
+ width: number;
827
+ height: number;
828
+ offsetTop: number;
829
+ offsetLeft: number;
830
+ fileHandle: import("browser-fs-access").FileSystemHandle | null;
831
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
832
+ stats: {
833
+ open: boolean;
834
+ panels: number;
835
+ };
836
+ currentChartType: import("@excalidraw/element/types").ChartType;
837
+ pasteDialog: {
838
+ shown: false;
839
+ data: null;
840
+ } | {
841
+ shown: true;
842
+ data: import("../charts").Spreadsheet;
843
+ };
844
+ showHyperlinkPopup: false | "info" | "editor";
845
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
846
+ snapLines: readonly import("../snapping").SnapLine[];
847
+ originSnapOffset: {
848
+ x: number;
849
+ y: number;
850
+ } | null;
851
+ objectsSnapModeEnabled: boolean;
852
+ userToFollow: import("../types").UserToFollow | null;
853
+ followedBy: Set<import("../types").SocketId>;
854
+ isCropping: boolean;
855
+ croppingElementId: ExcalidrawElement["id"] | null;
856
+ searchMatches: Readonly<{
857
+ focusedId: ExcalidrawElement["id"] | null;
858
+ matches: readonly import("../types").SearchMatch[];
859
+ }> | null;
860
+ activeLockedId: string | null;
861
+ lockedMultiSelections: {
862
+ [groupId: string]: true;
863
+ };
864
+ bindMode: import("@excalidraw/element/types").BindMode;
865
+ };
866
+ captureUpdate: "EVENTUALLY";
867
+ };
868
+ export declare const zoomToFit: ({ canvasOffsets, targetElements, appState, fitToViewport, viewportZoomFactor, minZoom, maxZoom, }: {
869
+ canvasOffsets?: Offsets;
870
+ targetElements: readonly ExcalidrawElement[];
871
+ appState: Readonly<AppState>;
872
+ /** whether to fit content to viewport (beyond >100%) */
873
+ fitToViewport: boolean;
874
+ /** zoom content to cover X of the viewport, when fitToViewport=true */
875
+ viewportZoomFactor?: number;
876
+ minZoom?: number;
877
+ maxZoom?: number;
878
+ }) => {
879
+ appState: {
880
+ scrollX: number;
881
+ scrollY: number;
882
+ zoom: {
883
+ value: import("../types").NormalizedZoomValue;
884
+ };
885
+ contextMenu: {
886
+ items: import("../components/ContextMenu").ContextMenuItems;
887
+ top: number;
888
+ left: number;
889
+ } | null;
890
+ showWelcomeScreen: boolean;
891
+ isLoading: boolean;
892
+ errorMessage: React.ReactNode;
893
+ activeEmbeddable: {
894
+ element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
895
+ state: "hover" | "active";
896
+ } | null;
897
+ newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
898
+ resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
899
+ multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
900
+ selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
901
+ isBindingEnabled: boolean;
902
+ startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
903
+ suggestedBinding: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
904
+ frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
905
+ frameRendering: {
906
+ enabled: boolean;
907
+ name: boolean;
908
+ outline: boolean;
909
+ clip: boolean;
910
+ };
911
+ editingFrame: string | null;
912
+ elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
913
+ editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
914
+ activeTool: {
915
+ lastActiveTool: import("../types").ActiveTool | null;
916
+ locked: boolean;
917
+ fromSelection: boolean;
918
+ } & import("../types").ActiveTool;
919
+ preferredSelectionTool: {
920
+ type: "selection" | "lasso";
921
+ initialized: boolean;
922
+ };
923
+ penMode: boolean;
924
+ penDetected: boolean;
925
+ exportBackground: boolean;
926
+ exportEmbedScene: boolean;
927
+ exportWithDarkMode: boolean;
928
+ exportScale: number;
929
+ currentItemStrokeColor: string;
930
+ currentItemBackgroundColor: string;
931
+ currentItemFillStyle: ExcalidrawElement["fillStyle"];
932
+ currentItemStrokeWidth: number;
933
+ currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
934
+ currentItemRoughness: number;
935
+ currentItemOpacity: number;
936
+ currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
937
+ currentItemFontSize: number;
938
+ currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
939
+ currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
940
+ currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
941
+ currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
942
+ currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
943
+ currentItemArrowType: "sharp" | "round" | "elbow";
944
+ viewBackgroundColor: string;
945
+ cursorButton: "up" | "down";
946
+ scrolledOutside: boolean;
947
+ name: string | null;
948
+ isResizing: boolean;
949
+ isRotating: boolean;
950
+ openMenu: "canvas" | null;
951
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
952
+ openSidebar: {
953
+ name: import("../types").SidebarName;
954
+ tab?: import("../types").SidebarTabName;
955
+ } | null;
956
+ openDialog: null | {
957
+ name: "imageExport" | "help" | "jsonExport";
958
+ } | {
959
+ name: "ttd";
960
+ tab: "text-to-diagram" | "mermaid";
961
+ } | {
962
+ name: "commandPalette";
963
+ } | {
964
+ name: "settings";
965
+ } | {
966
+ name: "elementLinkSelector";
967
+ sourceElementId: ExcalidrawElement["id"];
968
+ };
969
+ defaultSidebarDockedPreference: boolean;
970
+ lastPointerDownWith: import("@excalidraw/element/types").PointerType;
971
+ selectedElementIds: Readonly<{
972
+ [id: string]: true;
973
+ }>;
974
+ hoveredElementIds: Readonly<{
975
+ [id: string]: true;
976
+ }>;
977
+ previousSelectedElementIds: {
978
+ [id: string]: true;
979
+ };
980
+ selectedElementsAreBeingDragged: boolean;
981
+ shouldCacheIgnoreZoom: boolean;
982
+ toast: {
983
+ message: string;
984
+ closable?: boolean;
985
+ duration?: number;
986
+ } | null;
987
+ zenModeEnabled: boolean;
988
+ theme: import("@excalidraw/element/types").Theme;
989
+ gridSize: number;
990
+ gridStep: number;
991
+ gridModeEnabled: boolean;
992
+ viewModeEnabled: boolean;
993
+ selectedGroupIds: {
994
+ [groupId: string]: boolean;
995
+ };
996
+ editingGroupId: import("@excalidraw/element/types").GroupId | null;
997
+ width: number;
998
+ height: number;
999
+ offsetTop: number;
1000
+ offsetLeft: number;
1001
+ fileHandle: import("browser-fs-access").FileSystemHandle | null;
1002
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
1003
+ stats: {
1004
+ open: boolean;
1005
+ panels: number;
1006
+ };
1007
+ currentChartType: import("@excalidraw/element/types").ChartType;
1008
+ pasteDialog: {
1009
+ shown: false;
1010
+ data: null;
1011
+ } | {
1012
+ shown: true;
1013
+ data: import("../charts").Spreadsheet;
1014
+ };
1015
+ showHyperlinkPopup: false | "info" | "editor";
1016
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
1017
+ snapLines: readonly import("../snapping").SnapLine[];
1018
+ originSnapOffset: {
1019
+ x: number;
1020
+ y: number;
1021
+ } | null;
1022
+ objectsSnapModeEnabled: boolean;
1023
+ userToFollow: import("../types").UserToFollow | null;
1024
+ followedBy: Set<import("../types").SocketId>;
1025
+ isCropping: boolean;
1026
+ croppingElementId: ExcalidrawElement["id"] | null;
1027
+ searchMatches: Readonly<{
1028
+ focusedId: ExcalidrawElement["id"] | null;
1029
+ matches: readonly import("../types").SearchMatch[];
1030
+ }> | null;
1031
+ activeLockedId: string | null;
1032
+ lockedMultiSelections: {
1033
+ [groupId: string]: true;
1034
+ };
1035
+ bindMode: import("@excalidraw/element/types").BindMode;
1036
+ };
1037
+ captureUpdate: "EVENTUALLY";
1038
+ };
1039
+ export declare const actionZoomToFitSelectionInViewport: {
1040
+ name: "zoomToFitSelectionInViewport";
1041
+ label: string;
1042
+ icon: import("react/jsx-runtime").JSX.Element;
1043
+ trackEvent: {
1044
+ category: "canvas";
1045
+ };
1046
+ perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
1047
+ appState: {
1048
+ scrollX: number;
1049
+ scrollY: number;
1050
+ zoom: {
1051
+ value: import("../types").NormalizedZoomValue;
1052
+ };
1053
+ contextMenu: {
1054
+ items: import("../components/ContextMenu").ContextMenuItems;
1055
+ top: number;
1056
+ left: number;
1057
+ } | null;
1058
+ showWelcomeScreen: boolean;
1059
+ isLoading: boolean;
1060
+ errorMessage: React.ReactNode;
1061
+ activeEmbeddable: {
1062
+ element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
1063
+ state: "hover" | "active";
1064
+ } | null;
1065
+ newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
1066
+ resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1067
+ multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
1068
+ selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1069
+ isBindingEnabled: boolean;
1070
+ startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
1071
+ suggestedBinding: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
1072
+ frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1073
+ frameRendering: {
1074
+ enabled: boolean;
1075
+ name: boolean;
1076
+ outline: boolean;
1077
+ clip: boolean;
1078
+ };
1079
+ editingFrame: string | null;
1080
+ elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
1081
+ editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1082
+ activeTool: {
1083
+ lastActiveTool: import("../types").ActiveTool | null;
1084
+ locked: boolean;
1085
+ fromSelection: boolean;
1086
+ } & import("../types").ActiveTool;
1087
+ preferredSelectionTool: {
1088
+ type: "selection" | "lasso";
1089
+ initialized: boolean;
1090
+ };
1091
+ penMode: boolean;
1092
+ penDetected: boolean;
1093
+ exportBackground: boolean;
1094
+ exportEmbedScene: boolean;
1095
+ exportWithDarkMode: boolean;
1096
+ exportScale: number;
1097
+ currentItemStrokeColor: string;
1098
+ currentItemBackgroundColor: string;
1099
+ currentItemFillStyle: ExcalidrawElement["fillStyle"];
1100
+ currentItemStrokeWidth: number;
1101
+ currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
1102
+ currentItemRoughness: number;
1103
+ currentItemOpacity: number;
1104
+ currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
1105
+ currentItemFontSize: number;
1106
+ currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
1107
+ currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1108
+ currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1109
+ currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
1110
+ currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
1111
+ currentItemArrowType: "sharp" | "round" | "elbow";
1112
+ viewBackgroundColor: string;
1113
+ cursorButton: "up" | "down";
1114
+ scrolledOutside: boolean;
1115
+ name: string | null;
1116
+ isResizing: boolean;
1117
+ isRotating: boolean;
1118
+ openMenu: "canvas" | null;
1119
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
1120
+ openSidebar: {
1121
+ name: import("../types").SidebarName;
1122
+ tab?: import("../types").SidebarTabName;
1123
+ } | null;
1124
+ openDialog: null | {
1125
+ name: "imageExport" | "help" | "jsonExport";
1126
+ } | {
1127
+ name: "ttd";
1128
+ tab: "text-to-diagram" | "mermaid";
1129
+ } | {
1130
+ name: "commandPalette";
1131
+ } | {
1132
+ name: "settings";
1133
+ } | {
1134
+ name: "elementLinkSelector";
1135
+ sourceElementId: ExcalidrawElement["id"];
1136
+ };
1137
+ defaultSidebarDockedPreference: boolean;
1138
+ lastPointerDownWith: import("@excalidraw/element/types").PointerType;
1139
+ selectedElementIds: Readonly<{
1140
+ [id: string]: true;
1141
+ }>;
1142
+ hoveredElementIds: Readonly<{
1143
+ [id: string]: true;
1144
+ }>;
1145
+ previousSelectedElementIds: {
1146
+ [id: string]: true;
1147
+ };
1148
+ selectedElementsAreBeingDragged: boolean;
1149
+ shouldCacheIgnoreZoom: boolean;
1150
+ toast: {
1151
+ message: string;
1152
+ closable?: boolean;
1153
+ duration?: number;
1154
+ } | null;
1155
+ zenModeEnabled: boolean;
1156
+ theme: import("@excalidraw/element/types").Theme;
1157
+ gridSize: number;
1158
+ gridStep: number;
1159
+ gridModeEnabled: boolean;
1160
+ viewModeEnabled: boolean;
1161
+ selectedGroupIds: {
1162
+ [groupId: string]: boolean;
1163
+ };
1164
+ editingGroupId: import("@excalidraw/element/types").GroupId | null;
1165
+ width: number;
1166
+ height: number;
1167
+ offsetTop: number;
1168
+ offsetLeft: number;
1169
+ fileHandle: import("browser-fs-access").FileSystemHandle | null;
1170
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
1171
+ stats: {
1172
+ open: boolean;
1173
+ panels: number;
1174
+ };
1175
+ currentChartType: import("@excalidraw/element/types").ChartType;
1176
+ pasteDialog: {
1177
+ shown: false;
1178
+ data: null;
1179
+ } | {
1180
+ shown: true;
1181
+ data: import("../charts").Spreadsheet;
1182
+ };
1183
+ showHyperlinkPopup: false | "info" | "editor";
1184
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
1185
+ snapLines: readonly import("../snapping").SnapLine[];
1186
+ originSnapOffset: {
1187
+ x: number;
1188
+ y: number;
1189
+ } | null;
1190
+ objectsSnapModeEnabled: boolean;
1191
+ userToFollow: import("../types").UserToFollow | null;
1192
+ followedBy: Set<import("../types").SocketId>;
1193
+ isCropping: boolean;
1194
+ croppingElementId: ExcalidrawElement["id"] | null;
1195
+ searchMatches: Readonly<{
1196
+ focusedId: ExcalidrawElement["id"] | null;
1197
+ matches: readonly import("../types").SearchMatch[];
1198
+ }> | null;
1199
+ activeLockedId: string | null;
1200
+ lockedMultiSelections: {
1201
+ [groupId: string]: true;
1202
+ };
1203
+ bindMode: import("@excalidraw/element/types").BindMode;
1204
+ };
1205
+ captureUpdate: "EVENTUALLY";
1206
+ };
1207
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
1208
+ } & {
1209
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
1210
+ };
1211
+ export declare const actionZoomToFitSelection: {
1212
+ name: "zoomToFitSelection";
1213
+ label: string;
1214
+ icon: import("react/jsx-runtime").JSX.Element;
1215
+ trackEvent: {
1216
+ category: "canvas";
1217
+ };
1218
+ perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
1219
+ appState: {
1220
+ scrollX: number;
1221
+ scrollY: number;
1222
+ zoom: {
1223
+ value: import("../types").NormalizedZoomValue;
1224
+ };
1225
+ contextMenu: {
1226
+ items: import("../components/ContextMenu").ContextMenuItems;
1227
+ top: number;
1228
+ left: number;
1229
+ } | null;
1230
+ showWelcomeScreen: boolean;
1231
+ isLoading: boolean;
1232
+ errorMessage: React.ReactNode;
1233
+ activeEmbeddable: {
1234
+ element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
1235
+ state: "hover" | "active";
1236
+ } | null;
1237
+ newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
1238
+ resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1239
+ multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
1240
+ selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1241
+ isBindingEnabled: boolean;
1242
+ startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
1243
+ suggestedBinding: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
1244
+ frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1245
+ frameRendering: {
1246
+ enabled: boolean;
1247
+ name: boolean;
1248
+ outline: boolean;
1249
+ clip: boolean;
1250
+ };
1251
+ editingFrame: string | null;
1252
+ elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
1253
+ editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1254
+ activeTool: {
1255
+ lastActiveTool: import("../types").ActiveTool | null;
1256
+ locked: boolean;
1257
+ fromSelection: boolean;
1258
+ } & import("../types").ActiveTool;
1259
+ preferredSelectionTool: {
1260
+ type: "selection" | "lasso";
1261
+ initialized: boolean;
1262
+ };
1263
+ penMode: boolean;
1264
+ penDetected: boolean;
1265
+ exportBackground: boolean;
1266
+ exportEmbedScene: boolean;
1267
+ exportWithDarkMode: boolean;
1268
+ exportScale: number;
1269
+ currentItemStrokeColor: string;
1270
+ currentItemBackgroundColor: string;
1271
+ currentItemFillStyle: ExcalidrawElement["fillStyle"];
1272
+ currentItemStrokeWidth: number;
1273
+ currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
1274
+ currentItemRoughness: number;
1275
+ currentItemOpacity: number;
1276
+ currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
1277
+ currentItemFontSize: number;
1278
+ currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
1279
+ currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1280
+ currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1281
+ currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
1282
+ currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
1283
+ currentItemArrowType: "sharp" | "round" | "elbow";
1284
+ viewBackgroundColor: string;
1285
+ cursorButton: "up" | "down";
1286
+ scrolledOutside: boolean;
1287
+ name: string | null;
1288
+ isResizing: boolean;
1289
+ isRotating: boolean;
1290
+ openMenu: "canvas" | null;
1291
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
1292
+ openSidebar: {
1293
+ name: import("../types").SidebarName;
1294
+ tab?: import("../types").SidebarTabName;
1295
+ } | null;
1296
+ openDialog: null | {
1297
+ name: "imageExport" | "help" | "jsonExport";
1298
+ } | {
1299
+ name: "ttd";
1300
+ tab: "text-to-diagram" | "mermaid";
1301
+ } | {
1302
+ name: "commandPalette";
1303
+ } | {
1304
+ name: "settings";
1305
+ } | {
1306
+ name: "elementLinkSelector";
1307
+ sourceElementId: ExcalidrawElement["id"];
1308
+ };
1309
+ defaultSidebarDockedPreference: boolean;
1310
+ lastPointerDownWith: import("@excalidraw/element/types").PointerType;
1311
+ selectedElementIds: Readonly<{
1312
+ [id: string]: true;
1313
+ }>;
1314
+ hoveredElementIds: Readonly<{
1315
+ [id: string]: true;
1316
+ }>;
1317
+ previousSelectedElementIds: {
1318
+ [id: string]: true;
1319
+ };
1320
+ selectedElementsAreBeingDragged: boolean;
1321
+ shouldCacheIgnoreZoom: boolean;
1322
+ toast: {
1323
+ message: string;
1324
+ closable?: boolean;
1325
+ duration?: number;
1326
+ } | null;
1327
+ zenModeEnabled: boolean;
1328
+ theme: import("@excalidraw/element/types").Theme;
1329
+ gridSize: number;
1330
+ gridStep: number;
1331
+ gridModeEnabled: boolean;
1332
+ viewModeEnabled: boolean;
1333
+ selectedGroupIds: {
1334
+ [groupId: string]: boolean;
1335
+ };
1336
+ editingGroupId: import("@excalidraw/element/types").GroupId | null;
1337
+ width: number;
1338
+ height: number;
1339
+ offsetTop: number;
1340
+ offsetLeft: number;
1341
+ fileHandle: import("browser-fs-access").FileSystemHandle | null;
1342
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
1343
+ stats: {
1344
+ open: boolean;
1345
+ panels: number;
1346
+ };
1347
+ currentChartType: import("@excalidraw/element/types").ChartType;
1348
+ pasteDialog: {
1349
+ shown: false;
1350
+ data: null;
1351
+ } | {
1352
+ shown: true;
1353
+ data: import("../charts").Spreadsheet;
1354
+ };
1355
+ showHyperlinkPopup: false | "info" | "editor";
1356
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
1357
+ snapLines: readonly import("../snapping").SnapLine[];
1358
+ originSnapOffset: {
1359
+ x: number;
1360
+ y: number;
1361
+ } | null;
1362
+ objectsSnapModeEnabled: boolean;
1363
+ userToFollow: import("../types").UserToFollow | null;
1364
+ followedBy: Set<import("../types").SocketId>;
1365
+ isCropping: boolean;
1366
+ croppingElementId: ExcalidrawElement["id"] | null;
1367
+ searchMatches: Readonly<{
1368
+ focusedId: ExcalidrawElement["id"] | null;
1369
+ matches: readonly import("../types").SearchMatch[];
1370
+ }> | null;
1371
+ activeLockedId: string | null;
1372
+ lockedMultiSelections: {
1373
+ [groupId: string]: true;
1374
+ };
1375
+ bindMode: import("@excalidraw/element/types").BindMode;
1376
+ };
1377
+ captureUpdate: "EVENTUALLY";
1378
+ };
1379
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
1380
+ } & {
1381
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
1382
+ };
1383
+ export declare const actionZoomToFit: {
1384
+ name: "zoomToFit";
1385
+ label: string;
1386
+ icon: import("react/jsx-runtime").JSX.Element;
1387
+ viewMode: true;
1388
+ trackEvent: {
1389
+ category: "canvas";
1390
+ };
1391
+ perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
1392
+ appState: {
1393
+ scrollX: number;
1394
+ scrollY: number;
1395
+ zoom: {
1396
+ value: import("../types").NormalizedZoomValue;
1397
+ };
1398
+ contextMenu: {
1399
+ items: import("../components/ContextMenu").ContextMenuItems;
1400
+ top: number;
1401
+ left: number;
1402
+ } | null;
1403
+ showWelcomeScreen: boolean;
1404
+ isLoading: boolean;
1405
+ errorMessage: React.ReactNode;
1406
+ activeEmbeddable: {
1407
+ element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
1408
+ state: "hover" | "active";
1409
+ } | null;
1410
+ newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
1411
+ resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1412
+ multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
1413
+ selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1414
+ isBindingEnabled: boolean;
1415
+ startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
1416
+ suggestedBinding: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
1417
+ frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1418
+ frameRendering: {
1419
+ enabled: boolean;
1420
+ name: boolean;
1421
+ outline: boolean;
1422
+ clip: boolean;
1423
+ };
1424
+ editingFrame: string | null;
1425
+ elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
1426
+ editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1427
+ activeTool: {
1428
+ lastActiveTool: import("../types").ActiveTool | null;
1429
+ locked: boolean;
1430
+ fromSelection: boolean;
1431
+ } & import("../types").ActiveTool;
1432
+ preferredSelectionTool: {
1433
+ type: "selection" | "lasso";
1434
+ initialized: boolean;
1435
+ };
1436
+ penMode: boolean;
1437
+ penDetected: boolean;
1438
+ exportBackground: boolean;
1439
+ exportEmbedScene: boolean;
1440
+ exportWithDarkMode: boolean;
1441
+ exportScale: number;
1442
+ currentItemStrokeColor: string;
1443
+ currentItemBackgroundColor: string;
1444
+ currentItemFillStyle: ExcalidrawElement["fillStyle"];
1445
+ currentItemStrokeWidth: number;
1446
+ currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
1447
+ currentItemRoughness: number;
1448
+ currentItemOpacity: number;
1449
+ currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
1450
+ currentItemFontSize: number;
1451
+ currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
1452
+ currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1453
+ currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1454
+ currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
1455
+ currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
1456
+ currentItemArrowType: "sharp" | "round" | "elbow";
1457
+ viewBackgroundColor: string;
1458
+ cursorButton: "up" | "down";
1459
+ scrolledOutside: boolean;
1460
+ name: string | null;
1461
+ isResizing: boolean;
1462
+ isRotating: boolean;
1463
+ openMenu: "canvas" | null;
1464
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
1465
+ openSidebar: {
1466
+ name: import("../types").SidebarName;
1467
+ tab?: import("../types").SidebarTabName;
1468
+ } | null;
1469
+ openDialog: null | {
1470
+ name: "imageExport" | "help" | "jsonExport";
1471
+ } | {
1472
+ name: "ttd";
1473
+ tab: "text-to-diagram" | "mermaid";
1474
+ } | {
1475
+ name: "commandPalette";
1476
+ } | {
1477
+ name: "settings";
1478
+ } | {
1479
+ name: "elementLinkSelector";
1480
+ sourceElementId: ExcalidrawElement["id"];
1481
+ };
1482
+ defaultSidebarDockedPreference: boolean;
1483
+ lastPointerDownWith: import("@excalidraw/element/types").PointerType;
1484
+ selectedElementIds: Readonly<{
1485
+ [id: string]: true;
1486
+ }>;
1487
+ hoveredElementIds: Readonly<{
1488
+ [id: string]: true;
1489
+ }>;
1490
+ previousSelectedElementIds: {
1491
+ [id: string]: true;
1492
+ };
1493
+ selectedElementsAreBeingDragged: boolean;
1494
+ shouldCacheIgnoreZoom: boolean;
1495
+ toast: {
1496
+ message: string;
1497
+ closable?: boolean;
1498
+ duration?: number;
1499
+ } | null;
1500
+ zenModeEnabled: boolean;
1501
+ theme: import("@excalidraw/element/types").Theme;
1502
+ gridSize: number;
1503
+ gridStep: number;
1504
+ gridModeEnabled: boolean;
1505
+ viewModeEnabled: boolean;
1506
+ selectedGroupIds: {
1507
+ [groupId: string]: boolean;
1508
+ };
1509
+ editingGroupId: import("@excalidraw/element/types").GroupId | null;
1510
+ width: number;
1511
+ height: number;
1512
+ offsetTop: number;
1513
+ offsetLeft: number;
1514
+ fileHandle: import("browser-fs-access").FileSystemHandle | null;
1515
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
1516
+ stats: {
1517
+ open: boolean;
1518
+ panels: number;
1519
+ };
1520
+ currentChartType: import("@excalidraw/element/types").ChartType;
1521
+ pasteDialog: {
1522
+ shown: false;
1523
+ data: null;
1524
+ } | {
1525
+ shown: true;
1526
+ data: import("../charts").Spreadsheet;
1527
+ };
1528
+ showHyperlinkPopup: false | "info" | "editor";
1529
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
1530
+ snapLines: readonly import("../snapping").SnapLine[];
1531
+ originSnapOffset: {
1532
+ x: number;
1533
+ y: number;
1534
+ } | null;
1535
+ objectsSnapModeEnabled: boolean;
1536
+ userToFollow: import("../types").UserToFollow | null;
1537
+ followedBy: Set<import("../types").SocketId>;
1538
+ isCropping: boolean;
1539
+ croppingElementId: ExcalidrawElement["id"] | null;
1540
+ searchMatches: Readonly<{
1541
+ focusedId: ExcalidrawElement["id"] | null;
1542
+ matches: readonly import("../types").SearchMatch[];
1543
+ }> | null;
1544
+ activeLockedId: string | null;
1545
+ lockedMultiSelections: {
1546
+ [groupId: string]: true;
1547
+ };
1548
+ bindMode: import("@excalidraw/element/types").BindMode;
1549
+ };
1550
+ captureUpdate: "EVENTUALLY";
1551
+ };
1552
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
1553
+ } & {
1554
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
1555
+ };
1556
+ export declare const actionToggleTheme: import("./types").Action<import("@excalidraw/element/types").Theme> & {
1557
+ keyTest?: ((event: React.KeyboardEvent | KeyboardEvent, appState: AppState, elements: readonly ExcalidrawElement[], app: import("../types").AppClassProperties) => boolean) | undefined;
1558
+ };
1559
+ export declare const actionToggleEraserTool: {
1560
+ name: "toggleEraserTool";
1561
+ label: string;
1562
+ trackEvent: {
1563
+ category: "toolbar";
1564
+ };
1565
+ perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
1566
+ appState: {
1567
+ selectedElementIds: {};
1568
+ selectedGroupIds: {};
1569
+ activeEmbeddable: null;
1570
+ activeTool: {
1571
+ lastActiveTool: import("../types").ActiveTool | null;
1572
+ locked: boolean;
1573
+ fromSelection: boolean;
1574
+ } & import("../types").ActiveTool;
1575
+ contextMenu: {
1576
+ items: import("../components/ContextMenu").ContextMenuItems;
1577
+ top: number;
1578
+ left: number;
1579
+ } | null;
1580
+ showWelcomeScreen: boolean;
1581
+ isLoading: boolean;
1582
+ errorMessage: React.ReactNode;
1583
+ newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
1584
+ resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1585
+ multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
1586
+ selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1587
+ isBindingEnabled: boolean;
1588
+ startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
1589
+ suggestedBinding: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
1590
+ frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1591
+ frameRendering: {
1592
+ enabled: boolean;
1593
+ name: boolean;
1594
+ outline: boolean;
1595
+ clip: boolean;
1596
+ };
1597
+ editingFrame: string | null;
1598
+ elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
1599
+ editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1600
+ preferredSelectionTool: {
1601
+ type: "selection" | "lasso";
1602
+ initialized: boolean;
1603
+ };
1604
+ penMode: boolean;
1605
+ penDetected: boolean;
1606
+ exportBackground: boolean;
1607
+ exportEmbedScene: boolean;
1608
+ exportWithDarkMode: boolean;
1609
+ exportScale: number;
1610
+ currentItemStrokeColor: string;
1611
+ currentItemBackgroundColor: string;
1612
+ currentItemFillStyle: ExcalidrawElement["fillStyle"];
1613
+ currentItemStrokeWidth: number;
1614
+ currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
1615
+ currentItemRoughness: number;
1616
+ currentItemOpacity: number;
1617
+ currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
1618
+ currentItemFontSize: number;
1619
+ currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
1620
+ currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1621
+ currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1622
+ currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
1623
+ currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
1624
+ currentItemArrowType: "sharp" | "round" | "elbow";
1625
+ viewBackgroundColor: string;
1626
+ scrollX: number;
1627
+ scrollY: number;
1628
+ cursorButton: "up" | "down";
1629
+ scrolledOutside: boolean;
1630
+ name: string | null;
1631
+ isResizing: boolean;
1632
+ isRotating: boolean;
1633
+ zoom: import("../types").Zoom;
1634
+ openMenu: "canvas" | null;
1635
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
1636
+ openSidebar: {
1637
+ name: import("../types").SidebarName;
1638
+ tab?: import("../types").SidebarTabName;
1639
+ } | null;
1640
+ openDialog: null | {
1641
+ name: "imageExport" | "help" | "jsonExport";
1642
+ } | {
1643
+ name: "ttd";
1644
+ tab: "text-to-diagram" | "mermaid";
1645
+ } | {
1646
+ name: "commandPalette";
1647
+ } | {
1648
+ name: "settings";
1649
+ } | {
1650
+ name: "elementLinkSelector";
1651
+ sourceElementId: ExcalidrawElement["id"];
1652
+ };
1653
+ defaultSidebarDockedPreference: boolean;
1654
+ lastPointerDownWith: import("@excalidraw/element/types").PointerType;
1655
+ hoveredElementIds: Readonly<{
1656
+ [id: string]: true;
1657
+ }>;
1658
+ previousSelectedElementIds: {
1659
+ [id: string]: true;
1660
+ };
1661
+ selectedElementsAreBeingDragged: boolean;
1662
+ shouldCacheIgnoreZoom: boolean;
1663
+ toast: {
1664
+ message: string;
1665
+ closable?: boolean;
1666
+ duration?: number;
1667
+ } | null;
1668
+ zenModeEnabled: boolean;
1669
+ theme: import("@excalidraw/element/types").Theme;
1670
+ gridSize: number;
1671
+ gridStep: number;
1672
+ gridModeEnabled: boolean;
1673
+ viewModeEnabled: boolean;
1674
+ editingGroupId: import("@excalidraw/element/types").GroupId | null;
1675
+ width: number;
1676
+ height: number;
1677
+ offsetTop: number;
1678
+ offsetLeft: number;
1679
+ fileHandle: import("browser-fs-access").FileSystemHandle | null;
1680
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
1681
+ stats: {
1682
+ open: boolean;
1683
+ panels: number;
1684
+ };
1685
+ currentChartType: import("@excalidraw/element/types").ChartType;
1686
+ pasteDialog: {
1687
+ shown: false;
1688
+ data: null;
1689
+ } | {
1690
+ shown: true;
1691
+ data: import("../charts").Spreadsheet;
1692
+ };
1693
+ showHyperlinkPopup: false | "info" | "editor";
1694
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
1695
+ snapLines: readonly import("../snapping").SnapLine[];
1696
+ originSnapOffset: {
1697
+ x: number;
1698
+ y: number;
1699
+ } | null;
1700
+ objectsSnapModeEnabled: boolean;
1701
+ userToFollow: import("../types").UserToFollow | null;
1702
+ followedBy: Set<import("../types").SocketId>;
1703
+ isCropping: boolean;
1704
+ croppingElementId: ExcalidrawElement["id"] | null;
1705
+ searchMatches: Readonly<{
1706
+ focusedId: ExcalidrawElement["id"] | null;
1707
+ matches: readonly import("../types").SearchMatch[];
1708
+ }> | null;
1709
+ activeLockedId: string | null;
1710
+ lockedMultiSelections: {
1711
+ [groupId: string]: true;
1712
+ };
1713
+ bindMode: import("@excalidraw/element/types").BindMode;
1714
+ };
1715
+ captureUpdate: "IMMEDIATELY";
1716
+ };
1717
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
1718
+ } & {
1719
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
1720
+ };
1721
+ export declare const actionToggleLassoTool: {
1722
+ name: "toggleLassoTool";
1723
+ label: string;
1724
+ icon: import("react/jsx-runtime").JSX.Element;
1725
+ trackEvent: {
1726
+ category: "toolbar";
1727
+ };
1728
+ predicate: (elements: readonly ExcalidrawElement[], appState: AppState, props: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
1729
+ perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
1730
+ appState: {
1731
+ selectedElementIds: {};
1732
+ selectedGroupIds: {};
1733
+ activeEmbeddable: null;
1734
+ activeTool: {
1735
+ lastActiveTool: import("../types").ActiveTool | null;
1736
+ locked: boolean;
1737
+ fromSelection: boolean;
1738
+ } & import("../types").ActiveTool;
1739
+ contextMenu: {
1740
+ items: import("../components/ContextMenu").ContextMenuItems;
1741
+ top: number;
1742
+ left: number;
1743
+ } | null;
1744
+ showWelcomeScreen: boolean;
1745
+ isLoading: boolean;
1746
+ errorMessage: React.ReactNode;
1747
+ newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
1748
+ resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1749
+ multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
1750
+ selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1751
+ isBindingEnabled: boolean;
1752
+ startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
1753
+ suggestedBinding: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
1754
+ frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1755
+ frameRendering: {
1756
+ enabled: boolean;
1757
+ name: boolean;
1758
+ outline: boolean;
1759
+ clip: boolean;
1760
+ };
1761
+ editingFrame: string | null;
1762
+ elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
1763
+ editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1764
+ preferredSelectionTool: {
1765
+ type: "selection" | "lasso";
1766
+ initialized: boolean;
1767
+ };
1768
+ penMode: boolean;
1769
+ penDetected: boolean;
1770
+ exportBackground: boolean;
1771
+ exportEmbedScene: boolean;
1772
+ exportWithDarkMode: boolean;
1773
+ exportScale: number;
1774
+ currentItemStrokeColor: string;
1775
+ currentItemBackgroundColor: string;
1776
+ currentItemFillStyle: ExcalidrawElement["fillStyle"];
1777
+ currentItemStrokeWidth: number;
1778
+ currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
1779
+ currentItemRoughness: number;
1780
+ currentItemOpacity: number;
1781
+ currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
1782
+ currentItemFontSize: number;
1783
+ currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
1784
+ currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1785
+ currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1786
+ currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
1787
+ currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
1788
+ currentItemArrowType: "sharp" | "round" | "elbow";
1789
+ viewBackgroundColor: string;
1790
+ scrollX: number;
1791
+ scrollY: number;
1792
+ cursorButton: "up" | "down";
1793
+ scrolledOutside: boolean;
1794
+ name: string | null;
1795
+ isResizing: boolean;
1796
+ isRotating: boolean;
1797
+ zoom: import("../types").Zoom;
1798
+ openMenu: "canvas" | null;
1799
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
1800
+ openSidebar: {
1801
+ name: import("../types").SidebarName;
1802
+ tab?: import("../types").SidebarTabName;
1803
+ } | null;
1804
+ openDialog: null | {
1805
+ name: "imageExport" | "help" | "jsonExport";
1806
+ } | {
1807
+ name: "ttd";
1808
+ tab: "text-to-diagram" | "mermaid";
1809
+ } | {
1810
+ name: "commandPalette";
1811
+ } | {
1812
+ name: "settings";
1813
+ } | {
1814
+ name: "elementLinkSelector";
1815
+ sourceElementId: ExcalidrawElement["id"];
1816
+ };
1817
+ defaultSidebarDockedPreference: boolean;
1818
+ lastPointerDownWith: import("@excalidraw/element/types").PointerType;
1819
+ hoveredElementIds: Readonly<{
1820
+ [id: string]: true;
1821
+ }>;
1822
+ previousSelectedElementIds: {
1823
+ [id: string]: true;
1824
+ };
1825
+ selectedElementsAreBeingDragged: boolean;
1826
+ shouldCacheIgnoreZoom: boolean;
1827
+ toast: {
1828
+ message: string;
1829
+ closable?: boolean;
1830
+ duration?: number;
1831
+ } | null;
1832
+ zenModeEnabled: boolean;
1833
+ theme: import("@excalidraw/element/types").Theme;
1834
+ gridSize: number;
1835
+ gridStep: number;
1836
+ gridModeEnabled: boolean;
1837
+ viewModeEnabled: boolean;
1838
+ editingGroupId: import("@excalidraw/element/types").GroupId | null;
1839
+ width: number;
1840
+ height: number;
1841
+ offsetTop: number;
1842
+ offsetLeft: number;
1843
+ fileHandle: import("browser-fs-access").FileSystemHandle | null;
1844
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
1845
+ stats: {
1846
+ open: boolean;
1847
+ panels: number;
1848
+ };
1849
+ currentChartType: import("@excalidraw/element/types").ChartType;
1850
+ pasteDialog: {
1851
+ shown: false;
1852
+ data: null;
1853
+ } | {
1854
+ shown: true;
1855
+ data: import("../charts").Spreadsheet;
1856
+ };
1857
+ showHyperlinkPopup: false | "info" | "editor";
1858
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
1859
+ snapLines: readonly import("../snapping").SnapLine[];
1860
+ originSnapOffset: {
1861
+ x: number;
1862
+ y: number;
1863
+ } | null;
1864
+ objectsSnapModeEnabled: boolean;
1865
+ userToFollow: import("../types").UserToFollow | null;
1866
+ followedBy: Set<import("../types").SocketId>;
1867
+ isCropping: boolean;
1868
+ croppingElementId: ExcalidrawElement["id"] | null;
1869
+ searchMatches: Readonly<{
1870
+ focusedId: ExcalidrawElement["id"] | null;
1871
+ matches: readonly import("../types").SearchMatch[];
1872
+ }> | null;
1873
+ activeLockedId: string | null;
1874
+ lockedMultiSelections: {
1875
+ [groupId: string]: true;
1876
+ };
1877
+ bindMode: import("@excalidraw/element/types").BindMode;
1878
+ };
1879
+ captureUpdate: "NEVER";
1880
+ };
1881
+ } & {
1882
+ keyTest?: undefined;
1883
+ };
1884
+ export declare const actionToggleHandTool: {
1885
+ name: "toggleHandTool";
1886
+ label: string;
1887
+ trackEvent: {
1888
+ category: "toolbar";
1889
+ };
1890
+ icon: import("react/jsx-runtime").JSX.Element;
1891
+ viewMode: false;
1892
+ perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
1893
+ appState: {
1894
+ selectedElementIds: {};
1895
+ selectedGroupIds: {};
1896
+ activeEmbeddable: null;
1897
+ activeTool: {
1898
+ lastActiveTool: import("../types").ActiveTool | null;
1899
+ locked: boolean;
1900
+ fromSelection: boolean;
1901
+ } & import("../types").ActiveTool;
1902
+ contextMenu: {
1903
+ items: import("../components/ContextMenu").ContextMenuItems;
1904
+ top: number;
1905
+ left: number;
1906
+ } | null;
1907
+ showWelcomeScreen: boolean;
1908
+ isLoading: boolean;
1909
+ errorMessage: React.ReactNode;
1910
+ newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
1911
+ resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1912
+ multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
1913
+ selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1914
+ isBindingEnabled: boolean;
1915
+ startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
1916
+ suggestedBinding: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
1917
+ frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1918
+ frameRendering: {
1919
+ enabled: boolean;
1920
+ name: boolean;
1921
+ outline: boolean;
1922
+ clip: boolean;
1923
+ };
1924
+ editingFrame: string | null;
1925
+ elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
1926
+ editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1927
+ preferredSelectionTool: {
1928
+ type: "selection" | "lasso";
1929
+ initialized: boolean;
1930
+ };
1931
+ penMode: boolean;
1932
+ penDetected: boolean;
1933
+ exportBackground: boolean;
1934
+ exportEmbedScene: boolean;
1935
+ exportWithDarkMode: boolean;
1936
+ exportScale: number;
1937
+ currentItemStrokeColor: string;
1938
+ currentItemBackgroundColor: string;
1939
+ currentItemFillStyle: ExcalidrawElement["fillStyle"];
1940
+ currentItemStrokeWidth: number;
1941
+ currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
1942
+ currentItemRoughness: number;
1943
+ currentItemOpacity: number;
1944
+ currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
1945
+ currentItemFontSize: number;
1946
+ currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
1947
+ currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1948
+ currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1949
+ currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
1950
+ currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
1951
+ currentItemArrowType: "sharp" | "round" | "elbow";
1952
+ viewBackgroundColor: string;
1953
+ scrollX: number;
1954
+ scrollY: number;
1955
+ cursorButton: "up" | "down";
1956
+ scrolledOutside: boolean;
1957
+ name: string | null;
1958
+ isResizing: boolean;
1959
+ isRotating: boolean;
1960
+ zoom: import("../types").Zoom;
1961
+ openMenu: "canvas" | null;
1962
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
1963
+ openSidebar: {
1964
+ name: import("../types").SidebarName;
1965
+ tab?: import("../types").SidebarTabName;
1966
+ } | null;
1967
+ openDialog: null | {
1968
+ name: "imageExport" | "help" | "jsonExport";
1969
+ } | {
1970
+ name: "ttd";
1971
+ tab: "text-to-diagram" | "mermaid";
1972
+ } | {
1973
+ name: "commandPalette";
1974
+ } | {
1975
+ name: "settings";
1976
+ } | {
1977
+ name: "elementLinkSelector";
1978
+ sourceElementId: ExcalidrawElement["id"];
1979
+ };
1980
+ defaultSidebarDockedPreference: boolean;
1981
+ lastPointerDownWith: import("@excalidraw/element/types").PointerType;
1982
+ hoveredElementIds: Readonly<{
1983
+ [id: string]: true;
1984
+ }>;
1985
+ previousSelectedElementIds: {
1986
+ [id: string]: true;
1987
+ };
1988
+ selectedElementsAreBeingDragged: boolean;
1989
+ shouldCacheIgnoreZoom: boolean;
1990
+ toast: {
1991
+ message: string;
1992
+ closable?: boolean;
1993
+ duration?: number;
1994
+ } | null;
1995
+ zenModeEnabled: boolean;
1996
+ theme: import("@excalidraw/element/types").Theme;
1997
+ gridSize: number;
1998
+ gridStep: number;
1999
+ gridModeEnabled: boolean;
2000
+ viewModeEnabled: boolean;
2001
+ editingGroupId: import("@excalidraw/element/types").GroupId | null;
2002
+ width: number;
2003
+ height: number;
2004
+ offsetTop: number;
2005
+ offsetLeft: number;
2006
+ fileHandle: import("browser-fs-access").FileSystemHandle | null;
2007
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
2008
+ stats: {
2009
+ open: boolean;
2010
+ panels: number;
2011
+ };
2012
+ currentChartType: import("@excalidraw/element/types").ChartType;
2013
+ pasteDialog: {
2014
+ shown: false;
2015
+ data: null;
2016
+ } | {
2017
+ shown: true;
2018
+ data: import("../charts").Spreadsheet;
2019
+ };
2020
+ showHyperlinkPopup: false | "info" | "editor";
2021
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
2022
+ snapLines: readonly import("../snapping").SnapLine[];
2023
+ originSnapOffset: {
2024
+ x: number;
2025
+ y: number;
2026
+ } | null;
2027
+ objectsSnapModeEnabled: boolean;
2028
+ userToFollow: import("../types").UserToFollow | null;
2029
+ followedBy: Set<import("../types").SocketId>;
2030
+ isCropping: boolean;
2031
+ croppingElementId: ExcalidrawElement["id"] | null;
2032
+ searchMatches: Readonly<{
2033
+ focusedId: ExcalidrawElement["id"] | null;
2034
+ matches: readonly import("../types").SearchMatch[];
2035
+ }> | null;
2036
+ activeLockedId: string | null;
2037
+ lockedMultiSelections: {
2038
+ [groupId: string]: true;
2039
+ };
2040
+ bindMode: import("@excalidraw/element/types").BindMode;
2041
+ };
2042
+ captureUpdate: "IMMEDIATELY";
2043
+ };
2044
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
2045
+ } & {
2046
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
2047
+ };