@wildmio/excalidraw-common 0.18.0-custom.1

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