@excalidraw/math 0.18.0-3bdaafe → 0.18.0-43a92e6

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 (371) hide show
  1. package/dist/dev/index.js +363 -163
  2. package/dist/dev/index.js.map +4 -4
  3. package/dist/prod/index.js +1 -1
  4. package/dist/types/common/debug.d.ts +21 -0
  5. package/dist/types/common/src/appEventBus.d.ts +27 -0
  6. package/dist/types/common/src/bounds.d.ts +10 -0
  7. package/dist/types/common/src/colors.d.ts +81 -39
  8. package/dist/types/common/src/constants.d.ts +102 -34
  9. package/dist/types/common/src/editorInterface.d.ts +34 -0
  10. package/dist/types/common/src/font-metadata.d.ts +1 -3
  11. package/dist/types/common/src/index.d.ts +5 -0
  12. package/dist/types/common/src/keys.d.ts +5 -1
  13. package/dist/types/common/src/points.d.ts +1 -1
  14. package/dist/types/common/src/random.d.ts +7 -0
  15. package/dist/types/common/src/utility-types.d.ts +0 -1
  16. package/dist/types/common/src/utils.d.ts +52 -77
  17. package/dist/types/common/src/versionedSnapshotStore.d.ts +17 -0
  18. package/dist/types/element/src/Scene.d.ts +12 -8
  19. package/dist/types/element/src/align.d.ts +2 -2
  20. package/dist/types/element/src/arrowEndpointText.d.ts +49 -0
  21. package/dist/types/element/src/arrowheads.d.ts +3 -0
  22. package/dist/types/element/src/arrows/focus.d.ts +30 -0
  23. package/dist/types/element/src/arrows/helpers.d.ts +5 -0
  24. package/dist/types/element/src/binding.d.ts +85 -51
  25. package/dist/types/element/src/bounds.d.ts +27 -18
  26. package/dist/types/element/src/bucketFill.d.ts +110 -0
  27. package/dist/types/element/src/collision.d.ts +17 -3
  28. package/dist/types/element/src/comparisons.d.ts +10 -7
  29. package/dist/types/element/src/convertToShape.d.ts +23 -0
  30. package/dist/types/element/src/cropElement.d.ts +36 -4
  31. package/dist/types/element/src/delta.d.ts +23 -1
  32. package/dist/types/element/src/distribute.d.ts +3 -2
  33. package/dist/types/element/src/dragElements.d.ts +30 -3
  34. package/dist/types/element/src/duplicate.d.ts +67 -6
  35. package/dist/types/element/src/elbowArrow.d.ts +2 -0
  36. package/dist/types/element/src/embeddable.d.ts +2 -2
  37. package/dist/types/element/src/flowchart.d.ts +11 -7
  38. package/dist/types/element/src/fractionalIndex.d.ts +4 -4
  39. package/dist/types/element/src/frame.d.ts +16 -11
  40. package/dist/types/element/src/groups.d.ts +10 -15
  41. package/dist/types/element/src/heading.d.ts +2 -1
  42. package/dist/types/element/src/image.d.ts +1 -11
  43. package/dist/types/element/src/index.d.ts +10 -4
  44. package/dist/types/element/src/linearElementEditor.d.ts +48 -30
  45. package/dist/types/element/src/listMarker.d.ts +34 -0
  46. package/dist/types/element/src/mutateElement.d.ts +6 -2
  47. package/dist/types/element/src/newElement.d.ts +59 -9
  48. package/dist/types/element/src/renderElement.d.ts +23 -12
  49. package/dist/types/element/src/resizeElements.d.ts +18 -11
  50. package/dist/types/element/src/resizeTest.d.ts +6 -5
  51. package/dist/types/element/src/selection.d.ts +11 -17
  52. package/dist/types/element/src/shape.d.ts +36 -9
  53. package/dist/types/element/src/sizeHelpers.d.ts +6 -0
  54. package/dist/types/element/src/sortElements.d.ts +10 -0
  55. package/dist/types/element/src/stickyNote.d.ts +183 -0
  56. package/dist/types/element/src/textElement.d.ts +21 -10
  57. package/dist/types/element/src/textMeasurements.d.ts +1 -3
  58. package/dist/types/element/src/textWrapping.d.ts +26 -0
  59. package/dist/types/{excalidraw/data → element/src}/transform.d.ts +27 -8
  60. package/dist/types/element/src/transformHandles.d.ts +8 -27
  61. package/dist/types/element/src/typeChecks.d.ts +30 -31
  62. package/dist/types/element/src/types.d.ts +55 -20
  63. package/dist/types/element/src/utils.d.ts +22 -6
  64. package/dist/types/element/src/zindex.d.ts +7 -1
  65. package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +248 -219
  66. package/dist/types/excalidraw/actions/actionAlign.d.ts +12 -13
  67. package/dist/types/excalidraw/actions/actionBoundText.d.ts +116 -272
  68. package/dist/types/excalidraw/actions/actionCanvas.d.ts +549 -1582
  69. package/dist/types/excalidraw/actions/actionClipboard.d.ts +177 -899
  70. package/dist/types/excalidraw/actions/actionCropEditor.d.ts +73 -64
  71. package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +4 -562
  72. package/dist/types/excalidraw/actions/actionDeselect.d.ts +182 -0
  73. package/dist/types/excalidraw/actions/actionDistribute.d.ts +4 -6
  74. package/dist/types/excalidraw/actions/actionDuplicateSelection.d.ts +3 -4
  75. package/dist/types/excalidraw/actions/actionElementLink.d.ts +80 -77
  76. package/dist/types/excalidraw/actions/actionElementLock.d.ts +149 -130
  77. package/dist/types/excalidraw/actions/actionExport.d.ts +230 -1416
  78. package/dist/types/excalidraw/actions/actionFinalize.d.ts +11 -394
  79. package/dist/types/excalidraw/actions/actionFlip.d.ts +2 -3
  80. package/dist/types/excalidraw/actions/actionFrame.d.ts +247 -875
  81. package/dist/types/excalidraw/actions/actionGroup.d.ts +160 -149
  82. package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +220 -197
  83. package/dist/types/excalidraw/actions/actionLink.d.ts +86 -77
  84. package/dist/types/excalidraw/actions/actionMenu.d.ts +75 -438
  85. package/dist/types/excalidraw/actions/actionNavigate.d.ts +18 -359
  86. package/dist/types/excalidraw/actions/actionProperties.d.ts +238 -2533
  87. package/dist/types/excalidraw/actions/actionSelectAll.d.ts +80 -75
  88. package/dist/types/excalidraw/actions/actionStyles.d.ts +74 -64
  89. package/dist/types/excalidraw/actions/actionTextAutoResize.d.ts +4 -4
  90. package/dist/types/excalidraw/actions/actionToggleArrowBinding.d.ts +195 -0
  91. package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +88 -80
  92. package/dist/types/excalidraw/actions/actionToggleMidpointSnapping.d.ts +195 -0
  93. package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +87 -78
  94. package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +76 -74
  95. package/dist/types/excalidraw/actions/actionToggleShapeSwitch.d.ts +2 -2
  96. package/dist/types/excalidraw/actions/actionToggleShowHints.d.ts +197 -0
  97. package/dist/types/excalidraw/actions/actionToggleStats.d.ts +86 -77
  98. package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +87 -78
  99. package/dist/types/excalidraw/actions/actionToggleWrap.d.ts +12 -0
  100. package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +87 -78
  101. package/dist/types/excalidraw/actions/actionZindex.d.ts +8 -9
  102. package/dist/types/excalidraw/actions/colorTargets.d.ts +39 -0
  103. package/dist/types/excalidraw/actions/index.d.ts +7 -3
  104. package/dist/types/excalidraw/actions/manager.d.ts +1 -0
  105. package/dist/types/excalidraw/actions/register.d.ts +2 -2
  106. package/dist/types/excalidraw/actions/shortcuts.d.ts +1 -1
  107. package/dist/types/excalidraw/actions/types.d.ts +11 -7
  108. package/dist/types/excalidraw/{animated-trail.d.ts → animatedTrail.d.ts} +4 -3
  109. package/dist/types/excalidraw/appState.d.ts +59 -28
  110. package/dist/types/excalidraw/charts/charts.bar.d.ts +2 -0
  111. package/dist/types/excalidraw/charts/charts.constants.d.ts +48 -0
  112. package/dist/types/excalidraw/charts/charts.helpers.d.ts +32 -0
  113. package/dist/types/excalidraw/charts/charts.line.d.ts +2 -0
  114. package/dist/types/excalidraw/charts/charts.parse.d.ts +10 -0
  115. package/dist/types/excalidraw/charts/charts.radar.d.ts +2 -0
  116. package/dist/types/excalidraw/charts/charts.types.d.ts +18 -0
  117. package/dist/types/excalidraw/charts/index.d.ts +7 -0
  118. package/dist/types/excalidraw/clipboard.d.ts +56 -19
  119. package/dist/types/excalidraw/components/Actions.d.ts +33 -11
  120. package/dist/types/excalidraw/components/ActiveConfirmDialog.d.ts +1 -1
  121. package/dist/types/excalidraw/components/App.arrowText.d.ts +70 -0
  122. package/dist/types/excalidraw/components/App.bucketFill.d.ts +48 -0
  123. package/dist/types/excalidraw/components/App.clipboard.d.ts +31 -0
  124. package/dist/types/excalidraw/components/App.cursor.d.ts +38 -0
  125. package/dist/types/excalidraw/components/App.d.ts +406 -154
  126. package/dist/types/excalidraw/components/App.drawshape.d.ts +55 -0
  127. package/dist/types/excalidraw/components/App.duplicate.d.ts +101 -0
  128. package/dist/types/excalidraw/components/App.flowchart.d.ts +21 -0
  129. package/dist/types/excalidraw/components/App.modifiers.d.ts +38 -0
  130. package/dist/types/excalidraw/components/App.pan.d.ts +62 -0
  131. package/dist/types/excalidraw/components/App.selection.d.ts +265 -0
  132. package/dist/types/excalidraw/components/App.selectionTool.d.ts +93 -0
  133. package/dist/types/excalidraw/components/App.text.d.ts +146 -0
  134. package/dist/types/excalidraw/components/App.textTool.d.ts +140 -0
  135. package/dist/types/excalidraw/components/App.toolDrag.d.ts +63 -0
  136. package/dist/types/excalidraw/components/App.viewport.d.ts +113 -0
  137. package/dist/types/excalidraw/components/App.wheel.d.ts +26 -0
  138. package/dist/types/excalidraw/components/App.wrap.d.ts +31 -0
  139. package/dist/types/excalidraw/components/AppStateObserver.d.ts +37 -0
  140. package/dist/types/excalidraw/components/Card.d.ts +1 -3
  141. package/dist/types/excalidraw/components/ColorPicker/ColorInput.d.ts +2 -4
  142. package/dist/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +9 -4
  143. package/dist/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +3 -1
  144. package/dist/types/excalidraw/components/ColorPicker/Picker.d.ts +7 -1
  145. package/dist/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +10 -2
  146. package/dist/types/excalidraw/components/ColorPicker/ShadeList.d.ts +5 -2
  147. package/dist/types/excalidraw/components/ColorPicker/TopPicks.d.ts +8 -1
  148. package/dist/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +1 -2
  149. package/dist/types/excalidraw/components/ColorPicker/colorTopPicksDnD.d.ts +11 -0
  150. package/dist/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +2 -2
  151. package/dist/types/excalidraw/components/CommandPalette/CommandPalette.d.ts +1 -0
  152. package/dist/types/excalidraw/components/CommandPalette/defaultCommandPaletteItems.d.ts +1 -2
  153. package/dist/types/excalidraw/components/CommandPalette/types.d.ts +2 -4
  154. package/dist/types/excalidraw/components/ConvertElementTypePopup.d.ts +4 -4
  155. package/dist/types/excalidraw/components/CursorHint.d.ts +46 -0
  156. package/dist/types/excalidraw/components/DarkModeToggle.d.ts +1 -1
  157. package/dist/types/excalidraw/components/DefaultSidebar.d.ts +9 -13
  158. package/dist/types/excalidraw/components/ElementLinkDialog.d.ts +1 -1
  159. package/dist/types/excalidraw/components/Ellipsify.d.ts +1 -2
  160. package/dist/types/excalidraw/components/ErrorDialog.d.ts +1 -1
  161. package/dist/types/excalidraw/components/EyeDropper.d.ts +1 -2
  162. package/dist/types/excalidraw/components/FileDropOverlay.d.ts +2 -0
  163. package/dist/types/excalidraw/components/FilledButton.d.ts +2 -1
  164. package/dist/types/excalidraw/components/FontPicker/FontPicker.d.ts +5 -1
  165. package/dist/types/excalidraw/components/FontPicker/FontPickerList.d.ts +6 -1
  166. package/dist/types/excalidraw/components/FontPicker/FontPickerTrigger.d.ts +3 -1
  167. package/dist/types/excalidraw/components/FontPicker/fontTopPicksDnD.d.ts +12 -0
  168. package/dist/types/excalidraw/components/FontPicker/keyboardNavHandlers.d.ts +0 -1
  169. package/dist/types/excalidraw/components/HelpDialog.d.ts +1 -1
  170. package/dist/types/excalidraw/components/HintViewer.d.ts +4 -3
  171. package/dist/types/excalidraw/components/IconButton.d.ts +48 -0
  172. package/dist/types/excalidraw/components/IconPicker.d.ts +14 -9
  173. package/dist/types/excalidraw/components/InlineIcon.d.ts +3 -1
  174. package/dist/types/excalidraw/components/Island.d.ts +7 -0
  175. package/dist/types/excalidraw/components/LaserPointerButton.d.ts +2 -4
  176. package/dist/types/excalidraw/components/LayerUI.d.ts +6 -2
  177. package/dist/types/excalidraw/components/LibraryMenu.d.ts +1 -1
  178. package/dist/types/excalidraw/components/LibraryMenuControlButtons.d.ts +1 -1
  179. package/dist/types/excalidraw/components/LibraryMenuHeaderContent.d.ts +1 -2
  180. package/dist/types/excalidraw/components/LibraryMenuSection.d.ts +7 -3
  181. package/dist/types/excalidraw/components/LibraryUnit.d.ts +9 -5
  182. package/dist/types/excalidraw/components/LoadingMessage.d.ts +0 -1
  183. package/dist/types/excalidraw/components/LockButton.d.ts +3 -4
  184. package/dist/types/excalidraw/components/MagicButton.d.ts +0 -2
  185. package/dist/types/excalidraw/components/MobileMenu.d.ts +5 -7
  186. package/dist/types/excalidraw/components/MobileToolbar.d.ts +9 -0
  187. package/dist/types/excalidraw/components/Modal.d.ts +0 -1
  188. package/dist/types/excalidraw/components/OverwriteConfirm/OverwriteConfirm.d.ts +1 -1
  189. package/dist/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmState.d.ts +1 -1
  190. package/dist/types/excalidraw/components/PasteChartDialog.d.ts +4 -5
  191. package/dist/types/excalidraw/components/PenModeButton.d.ts +2 -5
  192. package/dist/types/excalidraw/components/Popover.d.ts +2 -3
  193. package/dist/types/excalidraw/components/PropertiesPopover.d.ts +2 -1
  194. package/dist/types/excalidraw/components/{ButtonIcon.d.ts → RadioButton.d.ts} +2 -5
  195. package/dist/types/excalidraw/components/RadioGroup.d.ts +0 -1
  196. package/dist/types/excalidraw/components/RadioSelection.d.ts +4 -4
  197. package/dist/types/excalidraw/components/Range.d.ts +10 -4
  198. package/dist/types/excalidraw/components/SVGLayer.d.ts +1 -1
  199. package/dist/types/excalidraw/components/ScrollableList.d.ts +0 -1
  200. package/dist/types/excalidraw/components/SearchMenu.d.ts +1 -1
  201. package/dist/types/excalidraw/components/Sidebar/Sidebar.d.ts +16 -22
  202. package/dist/types/excalidraw/components/Sidebar/SidebarHeader.d.ts +1 -1
  203. package/dist/types/excalidraw/components/Sidebar/SidebarTab.d.ts +1 -2
  204. package/dist/types/excalidraw/components/Sidebar/SidebarTabTrigger.d.ts +1 -2
  205. package/dist/types/excalidraw/components/Sidebar/SidebarTabTriggers.d.ts +1 -2
  206. package/dist/types/excalidraw/components/Sidebar/SidebarTabs.d.ts +1 -2
  207. package/dist/types/excalidraw/components/Spinner.d.ts +4 -4
  208. package/dist/types/excalidraw/components/Stats/Angle.d.ts +2 -2
  209. package/dist/types/excalidraw/components/Stats/CanvasGrid.d.ts +0 -1
  210. package/dist/types/excalidraw/components/Stats/Collapsible.d.ts +0 -1
  211. package/dist/types/excalidraw/components/Stats/Dimension.d.ts +2 -2
  212. package/dist/types/excalidraw/components/Stats/DragInput.d.ts +2 -3
  213. package/dist/types/excalidraw/components/Stats/MultiAngle.d.ts +2 -2
  214. package/dist/types/excalidraw/components/Stats/MultiDimension.d.ts +2 -2
  215. package/dist/types/excalidraw/components/Stats/MultiPosition.d.ts +2 -2
  216. package/dist/types/excalidraw/components/Stats/Position.d.ts +3 -3
  217. package/dist/types/excalidraw/components/Stats/index.d.ts +7 -8
  218. package/dist/types/excalidraw/components/Stats/utils.d.ts +1 -1
  219. package/dist/types/excalidraw/components/TTDDialog/Chat/ChatHistoryMenu.d.ts +15 -0
  220. package/dist/types/excalidraw/components/TTDDialog/Chat/ChatInterface.d.ts +23 -0
  221. package/dist/types/excalidraw/components/TTDDialog/Chat/ChatMessage.d.ts +14 -0
  222. package/dist/types/excalidraw/components/TTDDialog/Chat/TTDChatPanel.d.ts +27 -0
  223. package/dist/types/excalidraw/components/TTDDialog/Chat/index.d.ts +3 -0
  224. package/dist/types/excalidraw/components/TTDDialog/Chat/useChatAgent.d.ts +8 -0
  225. package/dist/types/excalidraw/components/TTDDialog/CodeMirrorEditor.d.ts +11 -0
  226. package/dist/types/excalidraw/components/TTDDialog/MermaidToExcalidraw.d.ts +3 -2
  227. package/dist/types/excalidraw/components/TTDDialog/TTDContext.d.ts +13 -0
  228. package/dist/types/excalidraw/components/TTDDialog/TTDDialog.d.ts +12 -29
  229. package/dist/types/excalidraw/components/TTDDialog/TTDDialogInput.d.ts +3 -3
  230. package/dist/types/excalidraw/components/TTDDialog/TTDDialogOutput.d.ts +5 -2
  231. package/dist/types/excalidraw/components/TTDDialog/TTDDialogPanel.d.ts +13 -9
  232. package/dist/types/excalidraw/components/TTDDialog/TTDDialogTab.d.ts +1 -2
  233. package/dist/types/excalidraw/components/TTDDialog/TTDDialogTabTrigger.d.ts +1 -2
  234. package/dist/types/excalidraw/components/TTDDialog/TTDDialogTabTriggers.d.ts +1 -2
  235. package/dist/types/excalidraw/components/TTDDialog/TTDPreviewPanel.d.ts +9 -0
  236. package/dist/types/excalidraw/components/TTDDialog/TTDWelcomeMessage.d.ts +1 -0
  237. package/dist/types/excalidraw/components/TTDDialog/TextToDiagram.d.ts +9 -0
  238. package/dist/types/excalidraw/components/TTDDialog/common.d.ts +16 -16
  239. package/dist/types/excalidraw/components/TTDDialog/hooks/useChatManagement.d.ts +13 -0
  240. package/dist/types/excalidraw/components/TTDDialog/hooks/useMermaidRenderer.d.ts +14 -0
  241. package/dist/types/excalidraw/components/TTDDialog/hooks/useTextGeneration.d.ts +7 -0
  242. package/dist/types/excalidraw/components/TTDDialog/mermaid-lang-lite.d.ts +2 -0
  243. package/dist/types/excalidraw/components/TTDDialog/types.d.ts +95 -0
  244. package/dist/types/excalidraw/components/TTDDialog/useTTDChatStorage.d.ts +22 -0
  245. package/dist/types/excalidraw/components/TTDDialog/utils/chat.d.ts +10 -0
  246. package/dist/types/excalidraw/components/TTDDialog/utils/mermaidAutoFix.d.ts +1 -0
  247. package/dist/types/excalidraw/components/TTDDialog/utils/mermaidError.d.ts +10 -0
  248. package/dist/types/excalidraw/components/TTDDialog/utils/mermaidValidation.d.ts +1 -0
  249. package/dist/types/excalidraw/components/TextField.d.ts +1 -0
  250. package/dist/types/excalidraw/components/Toast.d.ts +11 -7
  251. package/dist/types/excalidraw/components/ToolPopover.d.ts +22 -0
  252. package/dist/types/excalidraw/components/Toolbar.d.ts +11 -0
  253. package/dist/types/excalidraw/components/Tools.d.ts +151 -0
  254. package/dist/types/excalidraw/components/Tooltip.d.ts +15 -1
  255. package/dist/types/excalidraw/components/TopPicksDnD/TopPicksContextMenu.d.ts +14 -0
  256. package/dist/types/excalidraw/components/TopPicksDnD/TopPicksTip.d.ts +11 -0
  257. package/dist/types/excalidraw/components/TopPicksDnD/topPicksDnD.d.ts +58 -0
  258. package/dist/types/excalidraw/components/Trans.d.ts +2 -2
  259. package/dist/types/excalidraw/components/UserList.d.ts +3 -2
  260. package/dist/types/excalidraw/components/ViewportStatusFrame/ViewportStatusFrame.d.ts +11 -0
  261. package/dist/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +10 -4
  262. package/dist/types/excalidraw/components/canvases/NewElementCanvas.d.ts +3 -0
  263. package/dist/types/excalidraw/components/canvases/StaticCanvas.d.ts +1 -1
  264. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenu.d.ts +47 -35
  265. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuContent.d.ts +7 -5
  266. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuGroup.d.ts +3 -3
  267. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItem.d.ts +13 -22
  268. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemCheckbox.d.ts +5 -0
  269. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContent.d.ts +5 -4
  270. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContentRadio.d.ts +2 -2
  271. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemCustom.d.ts +2 -2
  272. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemLink.d.ts +6 -6
  273. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuSub.d.ts +23 -0
  274. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuSubContent.d.ts +8 -0
  275. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuSubTrigger.d.ts +12 -0
  276. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuTrigger.d.ts +3 -4
  277. package/dist/types/excalidraw/components/dropdownMenu/common.d.ts +2 -2
  278. package/dist/types/excalidraw/components/dropdownMenu/dropdownMenuUtils.d.ts +2 -0
  279. package/dist/types/excalidraw/components/footer/Footer.d.ts +3 -1
  280. package/dist/types/excalidraw/components/hoc/withInternalFallback.d.ts +1 -1
  281. package/dist/types/excalidraw/components/hyperlink/helpers.d.ts +3 -3
  282. package/dist/types/excalidraw/components/icons.d.ts +56 -22
  283. package/dist/types/excalidraw/components/main-menu/DefaultItems.d.ts +26 -3
  284. package/dist/types/excalidraw/components/main-menu/MainMenu.d.ts +39 -35
  285. package/dist/types/excalidraw/components/positionElementBesideCursor.d.ts +26 -0
  286. package/dist/types/excalidraw/components/shapeActionPredicates.d.ts +39 -0
  287. package/dist/types/excalidraw/data/blob.d.ts +373 -15
  288. package/dist/types/excalidraw/data/encode.d.ts +4 -4
  289. package/dist/types/excalidraw/data/encryption.d.ts +5 -5
  290. package/dist/types/excalidraw/data/filesystem.d.ts +5 -7
  291. package/dist/types/excalidraw/data/index.d.ts +8 -9
  292. package/dist/types/excalidraw/data/json.d.ts +192 -3
  293. package/dist/types/excalidraw/data/library.d.ts +25 -10
  294. package/dist/types/excalidraw/data/resave.d.ts +7 -2
  295. package/dist/types/excalidraw/data/restore.d.ts +25 -10
  296. package/dist/types/excalidraw/data/types.d.ts +4 -1
  297. package/dist/types/excalidraw/drawShapeTrail.d.ts +16 -0
  298. package/dist/types/excalidraw/editor-jotai.d.ts +11 -11
  299. package/dist/types/excalidraw/eraser/index.d.ts +2 -3
  300. package/dist/types/excalidraw/errors.d.ts +14 -0
  301. package/dist/types/excalidraw/fonts/Fonts.d.ts +3 -2
  302. package/dist/types/excalidraw/hooks/useAppStateValue.d.ts +29 -0
  303. package/dist/types/excalidraw/hooks/useLibraryItemSvg.d.ts +2 -2
  304. package/dist/types/excalidraw/hooks/useOutsideClick.d.ts +4 -3
  305. package/dist/types/excalidraw/hooks/useScrollPosition.d.ts +1 -2
  306. package/dist/types/excalidraw/hooks/useTextEditorFocus.d.ts +14 -0
  307. package/dist/types/excalidraw/i18n.d.ts +2 -2
  308. package/dist/types/excalidraw/{laser-trails.d.ts → laserTrails.d.ts} +5 -7
  309. package/dist/types/excalidraw/lasso/index.d.ts +2 -3
  310. package/dist/types/excalidraw/lasso/utils.d.ts +2 -0
  311. package/dist/types/excalidraw/renderOverrides.d.ts +9 -0
  312. package/dist/types/excalidraw/renderer/animation.d.ts +16 -0
  313. package/dist/types/excalidraw/renderer/helpers.d.ts +31 -8
  314. package/dist/types/excalidraw/renderer/interactiveScene.d.ts +7 -15
  315. package/dist/types/excalidraw/scene/Renderer.d.ts +491 -19
  316. package/dist/types/excalidraw/scene/export.d.ts +4 -4
  317. package/dist/types/excalidraw/scene/index.d.ts +2 -2
  318. package/dist/types/excalidraw/scene/types.d.ts +28 -8
  319. package/dist/types/excalidraw/shortcut.d.ts +1 -0
  320. package/dist/types/excalidraw/snapping.d.ts +12 -12
  321. package/dist/types/excalidraw/subset/harfbuzz/harfbuzz-bindings.d.ts +1 -1
  322. package/dist/types/excalidraw/subset/harfbuzz/harfbuzz-loader.d.ts +1 -1
  323. package/dist/types/excalidraw/subset/harfbuzz/harfbuzz-wasm.d.ts +1 -1
  324. package/dist/types/excalidraw/subset/woff2/woff2-loader.d.ts +2 -2
  325. package/dist/types/excalidraw/subset/woff2/woff2-wasm.d.ts +1 -1
  326. package/dist/types/excalidraw/textAutoResizeHandle.d.ts +15 -0
  327. package/dist/types/excalidraw/types.d.ts +672 -61
  328. package/dist/types/excalidraw/viewport.d.ts +302 -0
  329. package/dist/types/excalidraw/wysiwyg/textWysiwyg.d.ts +19 -5
  330. package/dist/types/fractional-indexing/src/index.d.ts +29 -0
  331. package/dist/types/laser-pointer/src/index.d.ts +2 -0
  332. package/dist/types/laser-pointer/src/math.d.ts +16 -0
  333. package/dist/types/laser-pointer/src/simplify.d.ts +2 -0
  334. package/dist/types/laser-pointer/src/state.d.ts +36 -0
  335. package/dist/types/math/src/constants.d.ts +0 -1
  336. package/dist/types/math/src/curve.d.ts +23 -13
  337. package/dist/types/math/src/index.d.ts +1 -0
  338. package/dist/types/math/src/pca.d.ts +79 -0
  339. package/dist/types/math/src/point.d.ts +8 -2
  340. package/dist/types/math/src/polygon.d.ts +26 -2
  341. package/dist/types/math/src/range.d.ts +1 -3
  342. package/dist/types/math/src/segment.d.ts +10 -3
  343. package/dist/types/math/src/types.d.ts +25 -1
  344. package/dist/types/utils/src/export.d.ts +9 -8
  345. package/dist/types/utils/src/index.d.ts +1 -2
  346. package/dist/types/utils/src/shape.d.ts +8 -8
  347. package/package.json +2 -2
  348. package/dist/types/excalidraw/actions/actionEmbeddable.d.ts +0 -185
  349. package/dist/types/excalidraw/animation-frame-handler.d.ts +0 -16
  350. package/dist/types/excalidraw/charts.d.ts +0 -27
  351. package/dist/types/excalidraw/components/DiagramToCodePlugin/DiagramToCodePlugin.d.ts +0 -4
  352. package/dist/types/excalidraw/components/ExcalidrawLogo.d.ts +0 -16
  353. package/dist/types/excalidraw/components/FollowMode/FollowMode.d.ts +0 -10
  354. package/dist/types/excalidraw/components/HandButton.d.ts +0 -10
  355. package/dist/types/excalidraw/components/InitializeApp.d.ts +0 -10
  356. package/dist/types/excalidraw/components/TTDDialog/TTDDialogTrigger.d.ts +0 -9
  357. package/dist/types/excalidraw/components/ToolButton.d.ts +0 -49
  358. package/dist/types/excalidraw/components/footer/FooterCenter.d.ts +0 -8
  359. package/dist/types/excalidraw/components/live-collaboration/LiveCollaborationTrigger.d.ts +0 -10
  360. package/dist/types/excalidraw/components/shapes.d.ts +0 -190
  361. package/dist/types/excalidraw/components/welcome-screen/WelcomeScreen.Center.d.ts +0 -58
  362. package/dist/types/excalidraw/components/welcome-screen/WelcomeScreen.Hints.d.ts +0 -19
  363. package/dist/types/excalidraw/components/welcome-screen/WelcomeScreen.d.ts +0 -85
  364. package/dist/types/excalidraw/cursor.d.ts +0 -5
  365. package/dist/types/excalidraw/data/reconcile.d.ts +0 -7
  366. package/dist/types/excalidraw/index.d.ts +0 -47
  367. package/dist/types/excalidraw/polyfill.d.ts +0 -2
  368. package/dist/types/excalidraw/scene/scroll.d.ts +0 -23
  369. package/dist/types/excalidraw/scene/zoom.d.ts +0 -12
  370. package/dist/types/utils/src/bbox.d.ts +0 -9
  371. package/dist/types/utils/src/withinBounds.d.ts +0 -19
@@ -1,19 +1,6 @@
1
- /// <reference types="react" />
2
- import { type SceneBounds } from "@excalidraw/element";
3
- import type { ExcalidrawElement } from "@excalidraw/element/types";
4
- import type { AppState, Offsets } from "../types";
5
- export declare const actionChangeViewBackgroundColor: {
6
- name: "changeViewBackgroundColor";
7
- label: string;
8
- trackEvent: false;
9
- predicate: (elements: readonly ExcalidrawElement[], appState: AppState, props: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
10
- perform: (_: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, value: any) => {
11
- appState: any;
12
- captureUpdate: "IMMEDIATELY" | "EVENTUALLY";
13
- };
14
- PanelComponent: ({ elements, appState, updateData, appProps }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
15
- } & {
16
- keyTest?: undefined;
1
+ import type { AppState } from "../types";
2
+ export declare const actionChangeViewBackgroundColor: import("./types").Action<Partial<AppState>> & {
3
+ keyTest?: ((event: React.KeyboardEvent | KeyboardEvent, appState: AppState, elements: readonly import("@excalidraw/element/types").ExcalidrawElement[], app: import("../types").AppClassProperties) => boolean) | undefined;
17
4
  };
18
5
  export declare const actionClearCanvas: {
19
6
  name: "clearCanvas";
@@ -22,8 +9,8 @@ export declare const actionClearCanvas: {
22
9
  trackEvent: {
23
10
  category: "canvas";
24
11
  };
25
- predicate: (elements: readonly ExcalidrawElement[], appState: AppState, props: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
26
- perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: any, app: import("../types").AppClassProperties) => {
12
+ predicate: (elements: readonly import("@excalidraw/element/types").ExcalidrawElement[], appState: AppState, props: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
13
+ perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
27
14
  elements: import("@excalidraw/element/types").OrderedExcalidrawElement[];
28
15
  appState: {
29
16
  files: {};
@@ -39,13 +26,14 @@ export declare const actionClearCanvas: {
39
26
  open: boolean;
40
27
  panels: number;
41
28
  };
42
- pasteDialog: {
43
- shown: false;
44
- data: null;
45
- } | {
46
- shown: true;
47
- data: import("../charts").Spreadsheet;
29
+ colorTopPicks: {
30
+ elementStroke: readonly string[] | null;
31
+ elementBackground: readonly string[] | null;
32
+ bucketFill: readonly string[] | null;
33
+ stickyNoteStroke: readonly string[] | null;
34
+ stickyNoteBackground: readonly string[] | null;
48
35
  };
36
+ fontTopPicks: readonly number[] | null;
49
37
  activeTool: {
50
38
  lastActiveTool: import("../types").ActiveTool | null;
51
39
  locked: boolean;
@@ -59,31 +47,37 @@ export declare const actionClearCanvas: {
59
47
  clip: boolean;
60
48
  };
61
49
  name: string | null;
62
- zoom: Readonly<{
63
- value: import("../types").NormalizedZoomValue;
50
+ zoom: import("../types").Zoom;
51
+ isBindingEnabled: boolean;
52
+ isMidpointSnappingEnabled: boolean;
53
+ selectedElementIds: Readonly<{
54
+ [id: string]: true;
64
55
  }>;
65
56
  scrollX: number;
66
57
  scrollY: number;
67
58
  viewModeEnabled: boolean;
68
- openDialog: {
59
+ openDialog: null | {
69
60
  name: "imageExport" | "help" | "jsonExport";
70
61
  } | {
71
62
  name: "ttd";
72
- tab: "mermaid" | "text-to-diagram";
63
+ tab: "text-to-diagram" | "mermaid";
73
64
  } | {
74
65
  name: "commandPalette";
66
+ } | {
67
+ name: "settings";
75
68
  } | {
76
69
  name: "elementLinkSelector";
77
- sourceElementId: string;
78
- } | null;
79
- editingGroupId: string | null;
80
- selectedElementIds: Readonly<{
81
- [id: string]: true;
82
- }>;
70
+ sourceElementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
71
+ } | {
72
+ name: "charts";
73
+ data: import("../charts").Spreadsheet;
74
+ rawText: string;
75
+ };
76
+ editingGroupId: import("@excalidraw/element/types").GroupId | null;
83
77
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
84
78
  activeEmbeddable: {
85
79
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
86
- state: "active" | "hover";
80
+ state: "hover" | "active";
87
81
  } | null;
88
82
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
89
83
  selectedGroupIds: {
@@ -91,40 +85,41 @@ export declare const actionClearCanvas: {
91
85
  };
92
86
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
93
87
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
94
- isBindingEnabled: boolean;
95
- suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
88
+ newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
89
+ suggestedBinding: {
90
+ element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
91
+ midPoint?: import("@excalidraw/math").GlobalPoint;
92
+ } | null;
93
+ textToolHover: {
94
+ type: "text";
95
+ elementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
96
+ } | {
97
+ type: "container";
98
+ elementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
99
+ } | {
100
+ type: "arrow";
101
+ elementId: import("@excalidraw/element/types").ExcalidrawArrowElement["id"];
102
+ anchor: "start" | "end" | "label";
103
+ } | null;
96
104
  isRotating: boolean;
97
- elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
98
- collaborators: Map<import("../types").SocketId, Readonly<{
99
- pointer?: import("../types").CollaboratorPointer | undefined;
100
- button?: "up" | "down" | undefined;
101
- selectedElementIds?: Readonly<{
102
- [id: string]: true;
103
- }> | undefined;
104
- username?: string | null | undefined;
105
- userState?: import("@excalidraw/common").UserIdleState | undefined;
106
- color?: {
107
- background: string;
108
- stroke: string;
109
- } | undefined;
110
- avatarUrl?: string | undefined;
111
- id?: string | undefined;
112
- socketId?: import("../types").SocketId | undefined;
113
- isCurrentUser?: boolean | undefined;
114
- isInCall?: boolean | undefined;
115
- isSpeaking?: boolean | undefined;
116
- isMuted?: boolean | undefined;
117
- }>>;
105
+ elementsToHighlight: readonly import("@excalidraw/element/types").NonDeletedExcalidrawElement[] | null;
106
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
118
107
  snapLines: readonly import("../snapping").SnapLine[];
119
108
  zenModeEnabled: boolean;
120
- editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
109
+ editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null;
121
110
  isCropping: boolean;
122
- croppingElementId: string | null;
111
+ croppingElementId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
123
112
  searchMatches: Readonly<{
124
- focusedId: string | null;
113
+ focusedId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
125
114
  matches: readonly import("../types").SearchMatch[];
126
115
  }> | null;
127
116
  activeLockedId: string | null;
117
+ hoveredElementIds: Readonly<{
118
+ [id: string]: true;
119
+ }>;
120
+ shouldCacheIgnoreZoom: boolean;
121
+ exportScale: number;
122
+ currentItemArrowType: "sharp" | "round" | "elbow";
128
123
  contextMenu: {
129
124
  items: import("../components/ContextMenu").ContextMenuItems;
130
125
  top: number;
@@ -132,66 +127,67 @@ export declare const actionClearCanvas: {
132
127
  } | null;
133
128
  showWelcomeScreen: boolean;
134
129
  isLoading: boolean;
135
- errorMessage: import("react").ReactNode;
136
- newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
130
+ errorMessage: React.ReactNode;
137
131
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
138
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
139
- editingFrame: string | null;
132
+ boxSelectionMode: import("../types").BoxSelectionMode;
133
+ bindingPreference: "enabled" | "disabled";
134
+ showHints: boolean;
135
+ inputDevice: import("../types").InputDevice;
136
+ editingFrame: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["id"] | null;
137
+ preferredSelectionTool: {
138
+ type: "selection" | "lasso";
139
+ initialized: boolean;
140
+ };
140
141
  exportWithDarkMode: boolean;
141
- exportScale: number;
142
142
  currentItemStrokeColor: string;
143
+ currentItemStickynoteStrokeColor: string;
144
+ currentItemStickynoteBackgroundColor: string;
143
145
  currentItemBackgroundColor: string;
144
- currentItemFillStyle: import("@excalidraw/element/types").FillStyle;
145
- currentItemStrokeWidth: number;
146
- currentItemStrokeStyle: import("@excalidraw/element/types").StrokeStyle;
146
+ currentItemFillStyle: import("@excalidraw/element/types").ExcalidrawElement["fillStyle"];
147
+ currentItemStrokeWidthKey: import("@excalidraw/common").StrokeWidthKey;
148
+ currentItemStrokeStyle: import("@excalidraw/element/types").ExcalidrawElement["strokeStyle"];
147
149
  currentItemRoughness: number;
150
+ currentItemStrokeVariability: import("@excalidraw/element/types").StrokeVariability;
148
151
  currentItemOpacity: number;
149
- currentItemFontFamily: number;
152
+ currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
150
153
  currentItemFontSize: number;
151
- currentItemTextAlign: string;
154
+ currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
152
155
  currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
153
156
  currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
154
- currentHoveredFontFamily: number | null;
157
+ currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
155
158
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
156
- currentItemArrowType: "round" | "sharp" | "elbow";
159
+ scrollConstraints: import("../types").ScrollConstraints | null;
157
160
  cursorButton: "up" | "down";
158
161
  scrolledOutside: boolean;
159
162
  isResizing: boolean;
160
- openMenu: "canvas" | "shape" | null;
161
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
163
+ openMenu: "canvas" | null;
164
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
162
165
  openSidebar: {
163
- name: string;
164
- /** zoom content to cover X of the viewport, when fitToViewport=true */
165
- tab?: string | undefined;
166
+ name: import("../types").SidebarName;
167
+ tab?: import("../types").SidebarTabName;
166
168
  } | null;
167
169
  defaultSidebarDockedPreference: boolean;
168
170
  lastPointerDownWith: import("@excalidraw/element/types").PointerType;
169
- hoveredElementIds: Readonly<{
170
- [id: string]: true;
171
- }>;
172
171
  previousSelectedElementIds: {
173
172
  [id: string]: true;
174
173
  };
175
174
  selectedElementsAreBeingDragged: boolean;
176
- shouldCacheIgnoreZoom: boolean;
177
175
  toast: {
178
- message: string;
179
- closable?: boolean | undefined;
180
- duration?: number | undefined;
176
+ message: React.ReactNode;
177
+ closable?: boolean;
178
+ duration?: number;
181
179
  } | null;
182
- fileHandle: import("browser-fs-access").FileSystemHandle | null;
183
- currentChartType: import("@excalidraw/element/types").ChartType;
184
- showHyperlinkPopup: false | "editor" | "info";
180
+ fileHandle: FileSystemFileHandle | null;
181
+ showHyperlinkPopup: false | "info" | "editor";
185
182
  originSnapOffset: {
186
183
  x: number;
187
184
  y: number;
188
185
  } | null;
189
186
  objectsSnapModeEnabled: boolean;
190
- userToFollow: import("../types").UserToFollow | null;
191
- followedBy: Set<import("../types").SocketId>;
192
187
  lockedMultiSelections: {
193
188
  [groupId: string]: true;
194
189
  };
190
+ bindMode: import("@excalidraw/element/types").BindMode;
195
191
  };
196
192
  captureUpdate: "IMMEDIATELY";
197
193
  };
@@ -202,18 +198,17 @@ export declare const actionZoomIn: {
202
198
  name: "zoomIn";
203
199
  label: string;
204
200
  viewMode: true;
201
+ navigation: true;
205
202
  icon: import("react/jsx-runtime").JSX.Element;
206
203
  trackEvent: {
207
204
  category: "canvas";
208
205
  };
209
- perform: (_elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: any, app: import("../types").AppClassProperties) => {
206
+ predicate: (elements: readonly import("@excalidraw/element/types").ExcalidrawElement[], appState: AppState, appProps: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
207
+ perform: (_elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
210
208
  appState: {
211
- userToFollow: null;
209
+ zoom: import("../types").Zoom;
212
210
  scrollX: number;
213
211
  scrollY: number;
214
- zoom: {
215
- value: import("../types").NormalizedZoomValue;
216
- };
217
212
  contextMenu: {
218
213
  items: import("../components/ContextMenu").ContextMenuItems;
219
214
  top: number;
@@ -221,18 +216,36 @@ export declare const actionZoomIn: {
221
216
  } | null;
222
217
  showWelcomeScreen: boolean;
223
218
  isLoading: boolean;
224
- errorMessage: import("react").ReactNode;
219
+ errorMessage: React.ReactNode;
225
220
  activeEmbeddable: {
226
221
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
227
- state: "active" | "hover";
222
+ state: "hover" | "active";
228
223
  } | null;
229
224
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
230
225
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
231
226
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
232
227
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
233
228
  isBindingEnabled: boolean;
234
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
235
- suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
229
+ boxSelectionMode: import("../types").BoxSelectionMode;
230
+ bindingPreference: "enabled" | "disabled";
231
+ isMidpointSnappingEnabled: boolean;
232
+ showHints: boolean;
233
+ inputDevice: import("../types").InputDevice;
234
+ suggestedBinding: {
235
+ element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
236
+ midPoint?: import("@excalidraw/math").GlobalPoint;
237
+ } | null;
238
+ textToolHover: {
239
+ type: "text";
240
+ elementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
241
+ } | {
242
+ type: "container";
243
+ elementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
244
+ } | {
245
+ type: "arrow";
246
+ elementId: import("@excalidraw/element/types").ExcalidrawArrowElement["id"];
247
+ anchor: "start" | "end" | "label";
248
+ } | null;
236
249
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
237
250
  frameRendering: {
238
251
  enabled: boolean;
@@ -240,14 +253,18 @@ export declare const actionZoomIn: {
240
253
  outline: boolean;
241
254
  clip: boolean;
242
255
  };
243
- editingFrame: string | null;
244
- elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
245
- editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
256
+ editingFrame: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["id"] | null;
257
+ elementsToHighlight: readonly import("@excalidraw/element/types").NonDeletedExcalidrawElement[] | null;
258
+ editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null;
246
259
  activeTool: {
247
260
  lastActiveTool: import("../types").ActiveTool | null;
248
261
  locked: boolean;
249
262
  fromSelection: boolean;
250
263
  } & import("../types").ActiveTool;
264
+ preferredSelectionTool: {
265
+ type: "selection" | "lasso";
266
+ initialized: boolean;
267
+ };
251
268
  penMode: boolean;
252
269
  penDetected: boolean;
253
270
  exportBackground: boolean;
@@ -255,44 +272,53 @@ export declare const actionZoomIn: {
255
272
  exportWithDarkMode: boolean;
256
273
  exportScale: number;
257
274
  currentItemStrokeColor: string;
275
+ currentItemStickynoteStrokeColor: string;
276
+ currentItemStickynoteBackgroundColor: string;
258
277
  currentItemBackgroundColor: string;
259
- currentItemFillStyle: import("@excalidraw/element/types").FillStyle;
260
- currentItemStrokeWidth: number;
261
- currentItemStrokeStyle: import("@excalidraw/element/types").StrokeStyle;
278
+ currentItemFillStyle: import("@excalidraw/element/types").ExcalidrawElement["fillStyle"];
279
+ currentItemStrokeWidthKey: import("@excalidraw/common").StrokeWidthKey;
280
+ currentItemStrokeStyle: import("@excalidraw/element/types").ExcalidrawElement["strokeStyle"];
262
281
  currentItemRoughness: number;
282
+ currentItemStrokeVariability: import("@excalidraw/element/types").StrokeVariability;
263
283
  currentItemOpacity: number;
264
- currentItemFontFamily: number;
284
+ currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
265
285
  currentItemFontSize: number;
266
- currentItemTextAlign: string;
286
+ currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
267
287
  currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
268
288
  currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
269
- currentHoveredFontFamily: number | null;
289
+ currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
270
290
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
271
- currentItemArrowType: "round" | "sharp" | "elbow";
291
+ currentItemArrowType: "sharp" | "round" | "elbow";
272
292
  viewBackgroundColor: string;
293
+ scrollConstraints: import("../types").ScrollConstraints | null;
273
294
  cursorButton: "up" | "down";
274
295
  scrolledOutside: boolean;
275
296
  name: string | null;
276
297
  isResizing: boolean;
277
298
  isRotating: boolean;
278
- openMenu: "canvas" | "shape" | null;
279
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
299
+ openMenu: "canvas" | null;
300
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
280
301
  openSidebar: {
281
- name: string;
282
- /** zoom content to cover X of the viewport, when fitToViewport=true */
283
- tab?: string | undefined;
302
+ name: import("../types").SidebarName;
303
+ tab?: import("../types").SidebarTabName;
284
304
  } | null;
285
- openDialog: {
305
+ openDialog: null | {
286
306
  name: "imageExport" | "help" | "jsonExport";
287
307
  } | {
288
308
  name: "ttd";
289
- tab: "mermaid" | "text-to-diagram";
309
+ tab: "text-to-diagram" | "mermaid";
290
310
  } | {
291
311
  name: "commandPalette";
312
+ } | {
313
+ name: "settings";
292
314
  } | {
293
315
  name: "elementLinkSelector";
294
- sourceElementId: string;
295
- } | null;
316
+ sourceElementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
317
+ } | {
318
+ name: "charts";
319
+ data: import("../charts").Spreadsheet;
320
+ rawText: string;
321
+ };
296
322
  defaultSidebarDockedPreference: boolean;
297
323
  lastPointerDownWith: import("@excalidraw/element/types").PointerType;
298
324
  selectedElementIds: Readonly<{
@@ -307,9 +333,9 @@ export declare const actionZoomIn: {
307
333
  selectedElementsAreBeingDragged: boolean;
308
334
  shouldCacheIgnoreZoom: boolean;
309
335
  toast: {
310
- message: string;
311
- closable?: boolean | undefined;
312
- duration?: number | undefined;
336
+ message: React.ReactNode;
337
+ closable?: boolean;
338
+ duration?: number;
313
339
  } | null;
314
340
  zenModeEnabled: boolean;
315
341
  theme: import("@excalidraw/element/types").Theme;
@@ -320,45 +346,18 @@ export declare const actionZoomIn: {
320
346
  selectedGroupIds: {
321
347
  [groupId: string]: boolean;
322
348
  };
323
- editingGroupId: string | null;
349
+ editingGroupId: import("@excalidraw/element/types").GroupId | null;
324
350
  width: number;
325
351
  height: number;
326
352
  offsetTop: number;
327
353
  offsetLeft: number;
328
- fileHandle: import("browser-fs-access").FileSystemHandle | null;
329
- collaborators: Map<import("../types").SocketId, Readonly<{
330
- pointer?: import("../types").CollaboratorPointer | undefined;
331
- button?: "up" | "down" | undefined;
332
- selectedElementIds?: Readonly<{
333
- [id: string]: true;
334
- }> | undefined;
335
- username?: string | null | undefined;
336
- userState?: import("@excalidraw/common").UserIdleState | undefined;
337
- color?: {
338
- background: string;
339
- stroke: string;
340
- } | undefined;
341
- avatarUrl?: string | undefined;
342
- id?: string | undefined;
343
- socketId?: import("../types").SocketId | undefined;
344
- isCurrentUser?: boolean | undefined;
345
- isInCall?: boolean | undefined;
346
- isSpeaking?: boolean | undefined;
347
- isMuted?: boolean | undefined;
348
- }>>;
354
+ fileHandle: FileSystemFileHandle | null;
355
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
349
356
  stats: {
350
357
  open: boolean;
351
358
  panels: number;
352
359
  };
353
- currentChartType: import("@excalidraw/element/types").ChartType;
354
- pasteDialog: {
355
- shown: false;
356
- data: null;
357
- } | {
358
- shown: true;
359
- data: import("../charts").Spreadsheet;
360
- };
361
- showHyperlinkPopup: false | "editor" | "info";
360
+ showHyperlinkPopup: false | "info" | "editor";
362
361
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
363
362
  snapLines: readonly import("../snapping").SnapLine[];
364
363
  originSnapOffset: {
@@ -366,21 +365,29 @@ export declare const actionZoomIn: {
366
365
  y: number;
367
366
  } | null;
368
367
  objectsSnapModeEnabled: boolean;
369
- followedBy: Set<import("../types").SocketId>;
370
368
  isCropping: boolean;
371
- croppingElementId: string | null;
369
+ croppingElementId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
372
370
  searchMatches: Readonly<{
373
- focusedId: string | null;
371
+ focusedId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
374
372
  matches: readonly import("../types").SearchMatch[];
375
373
  }> | null;
376
374
  activeLockedId: string | null;
377
375
  lockedMultiSelections: {
378
376
  [groupId: string]: true;
379
377
  };
378
+ bindMode: import("@excalidraw/element/types").BindMode;
379
+ colorTopPicks: {
380
+ elementStroke: readonly string[] | null;
381
+ elementBackground: readonly string[] | null;
382
+ bucketFill: readonly string[] | null;
383
+ stickyNoteStroke: readonly string[] | null;
384
+ stickyNoteBackground: readonly string[] | null;
385
+ };
386
+ fontTopPicks: readonly import("@excalidraw/element/types").FontFamilyValues[] | null;
380
387
  };
381
388
  captureUpdate: "EVENTUALLY";
382
389
  };
383
- PanelComponent: ({ updateData, appState }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
390
+ PanelComponent: ({ updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
384
391
  keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
385
392
  } & {
386
393
  keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
@@ -390,17 +397,16 @@ export declare const actionZoomOut: {
390
397
  label: string;
391
398
  icon: import("react/jsx-runtime").JSX.Element;
392
399
  viewMode: true;
400
+ navigation: true;
393
401
  trackEvent: {
394
402
  category: "canvas";
395
403
  };
396
- perform: (_elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: any, app: import("../types").AppClassProperties) => {
404
+ predicate: (elements: readonly import("@excalidraw/element/types").ExcalidrawElement[], appState: AppState, appProps: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
405
+ perform: (_elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
397
406
  appState: {
398
- userToFollow: null;
407
+ zoom: import("../types").Zoom;
399
408
  scrollX: number;
400
409
  scrollY: number;
401
- zoom: {
402
- value: import("../types").NormalizedZoomValue;
403
- };
404
410
  contextMenu: {
405
411
  items: import("../components/ContextMenu").ContextMenuItems;
406
412
  top: number;
@@ -408,18 +414,36 @@ export declare const actionZoomOut: {
408
414
  } | null;
409
415
  showWelcomeScreen: boolean;
410
416
  isLoading: boolean;
411
- errorMessage: import("react").ReactNode;
417
+ errorMessage: React.ReactNode;
412
418
  activeEmbeddable: {
413
419
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
414
- state: "active" | "hover";
420
+ state: "hover" | "active";
415
421
  } | null;
416
422
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
417
423
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
418
424
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
419
425
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
420
426
  isBindingEnabled: boolean;
421
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
422
- suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
427
+ boxSelectionMode: import("../types").BoxSelectionMode;
428
+ bindingPreference: "enabled" | "disabled";
429
+ isMidpointSnappingEnabled: boolean;
430
+ showHints: boolean;
431
+ inputDevice: import("../types").InputDevice;
432
+ suggestedBinding: {
433
+ element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
434
+ midPoint?: import("@excalidraw/math").GlobalPoint;
435
+ } | null;
436
+ textToolHover: {
437
+ type: "text";
438
+ elementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
439
+ } | {
440
+ type: "container";
441
+ elementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
442
+ } | {
443
+ type: "arrow";
444
+ elementId: import("@excalidraw/element/types").ExcalidrawArrowElement["id"];
445
+ anchor: "start" | "end" | "label";
446
+ } | null;
423
447
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
424
448
  frameRendering: {
425
449
  enabled: boolean;
@@ -427,14 +451,18 @@ export declare const actionZoomOut: {
427
451
  outline: boolean;
428
452
  clip: boolean;
429
453
  };
430
- editingFrame: string | null;
431
- elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
432
- editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
454
+ editingFrame: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["id"] | null;
455
+ elementsToHighlight: readonly import("@excalidraw/element/types").NonDeletedExcalidrawElement[] | null;
456
+ editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null;
433
457
  activeTool: {
434
458
  lastActiveTool: import("../types").ActiveTool | null;
435
459
  locked: boolean;
436
460
  fromSelection: boolean;
437
461
  } & import("../types").ActiveTool;
462
+ preferredSelectionTool: {
463
+ type: "selection" | "lasso";
464
+ initialized: boolean;
465
+ };
438
466
  penMode: boolean;
439
467
  penDetected: boolean;
440
468
  exportBackground: boolean;
@@ -442,44 +470,53 @@ export declare const actionZoomOut: {
442
470
  exportWithDarkMode: boolean;
443
471
  exportScale: number;
444
472
  currentItemStrokeColor: string;
473
+ currentItemStickynoteStrokeColor: string;
474
+ currentItemStickynoteBackgroundColor: string;
445
475
  currentItemBackgroundColor: string;
446
- currentItemFillStyle: import("@excalidraw/element/types").FillStyle;
447
- currentItemStrokeWidth: number;
448
- currentItemStrokeStyle: import("@excalidraw/element/types").StrokeStyle;
476
+ currentItemFillStyle: import("@excalidraw/element/types").ExcalidrawElement["fillStyle"];
477
+ currentItemStrokeWidthKey: import("@excalidraw/common").StrokeWidthKey;
478
+ currentItemStrokeStyle: import("@excalidraw/element/types").ExcalidrawElement["strokeStyle"];
449
479
  currentItemRoughness: number;
480
+ currentItemStrokeVariability: import("@excalidraw/element/types").StrokeVariability;
450
481
  currentItemOpacity: number;
451
- currentItemFontFamily: number;
482
+ currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
452
483
  currentItemFontSize: number;
453
- currentItemTextAlign: string;
484
+ currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
454
485
  currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
455
486
  currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
456
- currentHoveredFontFamily: number | null;
487
+ currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
457
488
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
458
- currentItemArrowType: "round" | "sharp" | "elbow";
489
+ currentItemArrowType: "sharp" | "round" | "elbow";
459
490
  viewBackgroundColor: string;
491
+ scrollConstraints: import("../types").ScrollConstraints | null;
460
492
  cursorButton: "up" | "down";
461
493
  scrolledOutside: boolean;
462
494
  name: string | null;
463
495
  isResizing: boolean;
464
496
  isRotating: boolean;
465
- openMenu: "canvas" | "shape" | null;
466
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
497
+ openMenu: "canvas" | null;
498
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
467
499
  openSidebar: {
468
- name: string;
469
- /** zoom content to cover X of the viewport, when fitToViewport=true */
470
- tab?: string | undefined;
500
+ name: import("../types").SidebarName;
501
+ tab?: import("../types").SidebarTabName;
471
502
  } | null;
472
- openDialog: {
503
+ openDialog: null | {
473
504
  name: "imageExport" | "help" | "jsonExport";
474
505
  } | {
475
506
  name: "ttd";
476
- tab: "mermaid" | "text-to-diagram";
507
+ tab: "text-to-diagram" | "mermaid";
477
508
  } | {
478
509
  name: "commandPalette";
510
+ } | {
511
+ name: "settings";
479
512
  } | {
480
513
  name: "elementLinkSelector";
481
- sourceElementId: string;
482
- } | null;
514
+ sourceElementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
515
+ } | {
516
+ name: "charts";
517
+ data: import("../charts").Spreadsheet;
518
+ rawText: string;
519
+ };
483
520
  defaultSidebarDockedPreference: boolean;
484
521
  lastPointerDownWith: import("@excalidraw/element/types").PointerType;
485
522
  selectedElementIds: Readonly<{
@@ -494,9 +531,9 @@ export declare const actionZoomOut: {
494
531
  selectedElementsAreBeingDragged: boolean;
495
532
  shouldCacheIgnoreZoom: boolean;
496
533
  toast: {
497
- message: string;
498
- closable?: boolean | undefined;
499
- duration?: number | undefined;
534
+ message: React.ReactNode;
535
+ closable?: boolean;
536
+ duration?: number;
500
537
  } | null;
501
538
  zenModeEnabled: boolean;
502
539
  theme: import("@excalidraw/element/types").Theme;
@@ -507,45 +544,18 @@ export declare const actionZoomOut: {
507
544
  selectedGroupIds: {
508
545
  [groupId: string]: boolean;
509
546
  };
510
- editingGroupId: string | null;
547
+ editingGroupId: import("@excalidraw/element/types").GroupId | null;
511
548
  width: number;
512
549
  height: number;
513
550
  offsetTop: number;
514
551
  offsetLeft: number;
515
- fileHandle: import("browser-fs-access").FileSystemHandle | null;
516
- collaborators: Map<import("../types").SocketId, Readonly<{
517
- pointer?: import("../types").CollaboratorPointer | undefined;
518
- button?: "up" | "down" | undefined;
519
- selectedElementIds?: Readonly<{
520
- [id: string]: true;
521
- }> | undefined;
522
- username?: string | null | undefined;
523
- userState?: import("@excalidraw/common").UserIdleState | undefined;
524
- color?: {
525
- background: string;
526
- stroke: string;
527
- } | undefined;
528
- avatarUrl?: string | undefined;
529
- id?: string | undefined;
530
- socketId?: import("../types").SocketId | undefined;
531
- isCurrentUser?: boolean | undefined;
532
- isInCall?: boolean | undefined;
533
- isSpeaking?: boolean | undefined;
534
- isMuted?: boolean | undefined;
535
- }>>;
552
+ fileHandle: FileSystemFileHandle | null;
553
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
536
554
  stats: {
537
555
  open: boolean;
538
556
  panels: number;
539
557
  };
540
- currentChartType: import("@excalidraw/element/types").ChartType;
541
- pasteDialog: {
542
- shown: false;
543
- data: null;
544
- } | {
545
- shown: true;
546
- data: import("../charts").Spreadsheet;
547
- };
548
- showHyperlinkPopup: false | "editor" | "info";
558
+ showHyperlinkPopup: false | "info" | "editor";
549
559
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
550
560
  snapLines: readonly import("../snapping").SnapLine[];
551
561
  originSnapOffset: {
@@ -553,21 +563,29 @@ export declare const actionZoomOut: {
553
563
  y: number;
554
564
  } | null;
555
565
  objectsSnapModeEnabled: boolean;
556
- followedBy: Set<import("../types").SocketId>;
557
566
  isCropping: boolean;
558
- croppingElementId: string | null;
567
+ croppingElementId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
559
568
  searchMatches: Readonly<{
560
- focusedId: string | null;
569
+ focusedId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
561
570
  matches: readonly import("../types").SearchMatch[];
562
571
  }> | null;
563
572
  activeLockedId: string | null;
564
573
  lockedMultiSelections: {
565
574
  [groupId: string]: true;
566
575
  };
576
+ bindMode: import("@excalidraw/element/types").BindMode;
577
+ colorTopPicks: {
578
+ elementStroke: readonly string[] | null;
579
+ elementBackground: readonly string[] | null;
580
+ bucketFill: readonly string[] | null;
581
+ stickyNoteStroke: readonly string[] | null;
582
+ stickyNoteBackground: readonly string[] | null;
583
+ };
584
+ fontTopPicks: readonly import("@excalidraw/element/types").FontFamilyValues[] | null;
567
585
  };
568
586
  captureUpdate: "EVENTUALLY";
569
587
  };
570
- PanelComponent: ({ updateData, appState }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
588
+ PanelComponent: ({ updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
571
589
  keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
572
590
  } & {
573
591
  keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
@@ -577,17 +595,16 @@ export declare const actionResetZoom: {
577
595
  label: string;
578
596
  icon: import("react/jsx-runtime").JSX.Element;
579
597
  viewMode: true;
598
+ navigation: true;
580
599
  trackEvent: {
581
600
  category: "canvas";
582
601
  };
583
- perform: (_elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: any, app: import("../types").AppClassProperties) => {
602
+ predicate: (elements: readonly import("@excalidraw/element/types").ExcalidrawElement[], appState: AppState, appProps: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
603
+ perform: (_elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
584
604
  appState: {
585
- userToFollow: null;
605
+ zoom: import("../types").Zoom;
586
606
  scrollX: number;
587
607
  scrollY: number;
588
- zoom: {
589
- value: import("../types").NormalizedZoomValue;
590
- };
591
608
  contextMenu: {
592
609
  items: import("../components/ContextMenu").ContextMenuItems;
593
610
  top: number;
@@ -595,18 +612,36 @@ export declare const actionResetZoom: {
595
612
  } | null;
596
613
  showWelcomeScreen: boolean;
597
614
  isLoading: boolean;
598
- errorMessage: import("react").ReactNode;
615
+ errorMessage: React.ReactNode;
599
616
  activeEmbeddable: {
600
617
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
601
- state: "active" | "hover";
618
+ state: "hover" | "active";
602
619
  } | null;
603
620
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
604
621
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
605
622
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
606
623
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
607
624
  isBindingEnabled: boolean;
608
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
609
- suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
625
+ boxSelectionMode: import("../types").BoxSelectionMode;
626
+ bindingPreference: "enabled" | "disabled";
627
+ isMidpointSnappingEnabled: boolean;
628
+ showHints: boolean;
629
+ inputDevice: import("../types").InputDevice;
630
+ suggestedBinding: {
631
+ element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
632
+ midPoint?: import("@excalidraw/math").GlobalPoint;
633
+ } | null;
634
+ textToolHover: {
635
+ type: "text";
636
+ elementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
637
+ } | {
638
+ type: "container";
639
+ elementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
640
+ } | {
641
+ type: "arrow";
642
+ elementId: import("@excalidraw/element/types").ExcalidrawArrowElement["id"];
643
+ anchor: "start" | "end" | "label";
644
+ } | null;
610
645
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
611
646
  frameRendering: {
612
647
  enabled: boolean;
@@ -614,14 +649,18 @@ export declare const actionResetZoom: {
614
649
  outline: boolean;
615
650
  clip: boolean;
616
651
  };
617
- editingFrame: string | null;
618
- elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
619
- editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
652
+ editingFrame: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["id"] | null;
653
+ elementsToHighlight: readonly import("@excalidraw/element/types").NonDeletedExcalidrawElement[] | null;
654
+ editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null;
620
655
  activeTool: {
621
656
  lastActiveTool: import("../types").ActiveTool | null;
622
657
  locked: boolean;
623
658
  fromSelection: boolean;
624
659
  } & import("../types").ActiveTool;
660
+ preferredSelectionTool: {
661
+ type: "selection" | "lasso";
662
+ initialized: boolean;
663
+ };
625
664
  penMode: boolean;
626
665
  penDetected: boolean;
627
666
  exportBackground: boolean;
@@ -629,44 +668,53 @@ export declare const actionResetZoom: {
629
668
  exportWithDarkMode: boolean;
630
669
  exportScale: number;
631
670
  currentItemStrokeColor: string;
671
+ currentItemStickynoteStrokeColor: string;
672
+ currentItemStickynoteBackgroundColor: string;
632
673
  currentItemBackgroundColor: string;
633
- currentItemFillStyle: import("@excalidraw/element/types").FillStyle;
634
- currentItemStrokeWidth: number;
635
- currentItemStrokeStyle: import("@excalidraw/element/types").StrokeStyle;
674
+ currentItemFillStyle: import("@excalidraw/element/types").ExcalidrawElement["fillStyle"];
675
+ currentItemStrokeWidthKey: import("@excalidraw/common").StrokeWidthKey;
676
+ currentItemStrokeStyle: import("@excalidraw/element/types").ExcalidrawElement["strokeStyle"];
636
677
  currentItemRoughness: number;
678
+ currentItemStrokeVariability: import("@excalidraw/element/types").StrokeVariability;
637
679
  currentItemOpacity: number;
638
- currentItemFontFamily: number;
680
+ currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
639
681
  currentItemFontSize: number;
640
- currentItemTextAlign: string;
682
+ currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
641
683
  currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
642
684
  currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
643
- currentHoveredFontFamily: number | null;
685
+ currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
644
686
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
645
- currentItemArrowType: "round" | "sharp" | "elbow";
687
+ currentItemArrowType: "sharp" | "round" | "elbow";
646
688
  viewBackgroundColor: string;
689
+ scrollConstraints: import("../types").ScrollConstraints | null;
647
690
  cursorButton: "up" | "down";
648
691
  scrolledOutside: boolean;
649
692
  name: string | null;
650
693
  isResizing: boolean;
651
694
  isRotating: boolean;
652
- openMenu: "canvas" | "shape" | null;
653
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
695
+ openMenu: "canvas" | null;
696
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
654
697
  openSidebar: {
655
- name: string;
656
- /** zoom content to cover X of the viewport, when fitToViewport=true */
657
- tab?: string | undefined;
698
+ name: import("../types").SidebarName;
699
+ tab?: import("../types").SidebarTabName;
658
700
  } | null;
659
- openDialog: {
701
+ openDialog: null | {
660
702
  name: "imageExport" | "help" | "jsonExport";
661
703
  } | {
662
704
  name: "ttd";
663
- tab: "mermaid" | "text-to-diagram";
705
+ tab: "text-to-diagram" | "mermaid";
664
706
  } | {
665
707
  name: "commandPalette";
708
+ } | {
709
+ name: "settings";
666
710
  } | {
667
711
  name: "elementLinkSelector";
668
- sourceElementId: string;
669
- } | null;
712
+ sourceElementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
713
+ } | {
714
+ name: "charts";
715
+ data: import("../charts").Spreadsheet;
716
+ rawText: string;
717
+ };
670
718
  defaultSidebarDockedPreference: boolean;
671
719
  lastPointerDownWith: import("@excalidraw/element/types").PointerType;
672
720
  selectedElementIds: Readonly<{
@@ -681,9 +729,9 @@ export declare const actionResetZoom: {
681
729
  selectedElementsAreBeingDragged: boolean;
682
730
  shouldCacheIgnoreZoom: boolean;
683
731
  toast: {
684
- message: string;
685
- closable?: boolean | undefined;
686
- duration?: number | undefined;
732
+ message: React.ReactNode;
733
+ closable?: boolean;
734
+ duration?: number;
687
735
  } | null;
688
736
  zenModeEnabled: boolean;
689
737
  theme: import("@excalidraw/element/types").Theme;
@@ -694,45 +742,18 @@ export declare const actionResetZoom: {
694
742
  selectedGroupIds: {
695
743
  [groupId: string]: boolean;
696
744
  };
697
- editingGroupId: string | null;
745
+ editingGroupId: import("@excalidraw/element/types").GroupId | null;
698
746
  width: number;
699
747
  height: number;
700
748
  offsetTop: number;
701
749
  offsetLeft: number;
702
- fileHandle: import("browser-fs-access").FileSystemHandle | null;
703
- collaborators: Map<import("../types").SocketId, Readonly<{
704
- pointer?: import("../types").CollaboratorPointer | undefined;
705
- button?: "up" | "down" | undefined;
706
- selectedElementIds?: Readonly<{
707
- [id: string]: true;
708
- }> | undefined;
709
- username?: string | null | undefined;
710
- userState?: import("@excalidraw/common").UserIdleState | undefined;
711
- color?: {
712
- background: string;
713
- stroke: string;
714
- } | undefined;
715
- avatarUrl?: string | undefined;
716
- id?: string | undefined;
717
- socketId?: import("../types").SocketId | undefined;
718
- isCurrentUser?: boolean | undefined;
719
- isInCall?: boolean | undefined;
720
- isSpeaking?: boolean | undefined;
721
- isMuted?: boolean | undefined;
722
- }>>;
750
+ fileHandle: FileSystemFileHandle | null;
751
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
723
752
  stats: {
724
753
  open: boolean;
725
754
  panels: number;
726
755
  };
727
- currentChartType: import("@excalidraw/element/types").ChartType;
728
- pasteDialog: {
729
- shown: false;
730
- data: null;
731
- } | {
732
- shown: true;
733
- data: import("../charts").Spreadsheet;
734
- };
735
- showHyperlinkPopup: false | "editor" | "info";
756
+ showHyperlinkPopup: false | "info" | "editor";
736
757
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
737
758
  snapLines: readonly import("../snapping").SnapLine[];
738
759
  originSnapOffset: {
@@ -740,417 +761,48 @@ export declare const actionResetZoom: {
740
761
  y: number;
741
762
  } | null;
742
763
  objectsSnapModeEnabled: boolean;
743
- followedBy: Set<import("../types").SocketId>;
744
764
  isCropping: boolean;
745
- croppingElementId: string | null;
765
+ croppingElementId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
746
766
  searchMatches: Readonly<{
747
- focusedId: string | null;
767
+ focusedId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
748
768
  matches: readonly import("../types").SearchMatch[];
749
769
  }> | null;
750
770
  activeLockedId: string | null;
751
771
  lockedMultiSelections: {
752
772
  [groupId: string]: true;
753
773
  };
774
+ bindMode: import("@excalidraw/element/types").BindMode;
775
+ colorTopPicks: {
776
+ elementStroke: readonly string[] | null;
777
+ elementBackground: readonly string[] | null;
778
+ bucketFill: readonly string[] | null;
779
+ stickyNoteStroke: readonly string[] | null;
780
+ stickyNoteBackground: readonly string[] | null;
781
+ };
782
+ fontTopPicks: readonly import("@excalidraw/element/types").FontFamilyValues[] | null;
754
783
  };
755
784
  captureUpdate: "EVENTUALLY";
756
785
  };
757
- PanelComponent: ({ updateData, appState }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
786
+ PanelComponent: ({ updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
758
787
  keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
759
788
  } & {
760
789
  keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
761
790
  };
762
- export declare const zoomToFitBounds: ({ bounds, appState, canvasOffsets, fitToViewport, viewportZoomFactor, minZoom, maxZoom, }: {
763
- bounds: SceneBounds;
764
- canvasOffsets?: Partial<{
765
- top: number;
766
- right: number;
767
- bottom: number;
768
- left: number;
769
- }> | undefined;
770
- appState: Readonly<AppState>;
771
- /** whether to fit content to viewport (beyond >100%) */
772
- fitToViewport: boolean;
773
- /** zoom content to cover X of the viewport, when fitToViewport=true */
774
- viewportZoomFactor?: number | undefined;
775
- minZoom?: number | undefined;
776
- maxZoom?: number | undefined;
777
- }) => {
778
- appState: {
779
- scrollX: number;
780
- scrollY: number;
781
- zoom: {
782
- value: import("../types").NormalizedZoomValue;
783
- };
784
- contextMenu: {
785
- items: import("../components/ContextMenu").ContextMenuItems;
786
- top: number;
787
- left: number;
788
- } | null;
789
- showWelcomeScreen: boolean;
790
- isLoading: boolean;
791
- errorMessage: import("react").ReactNode;
792
- activeEmbeddable: {
793
- element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
794
- state: "active" | "hover";
795
- } | null;
796
- newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
797
- resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
798
- multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
799
- selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
800
- isBindingEnabled: boolean;
801
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
802
- suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
803
- frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
804
- frameRendering: {
805
- enabled: boolean;
806
- name: boolean;
807
- outline: boolean;
808
- clip: boolean;
809
- };
810
- editingFrame: string | null;
811
- elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
812
- editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
813
- activeTool: {
814
- lastActiveTool: import("../types").ActiveTool | null;
815
- locked: boolean;
816
- fromSelection: boolean;
817
- } & import("../types").ActiveTool;
818
- penMode: boolean;
819
- penDetected: boolean;
820
- exportBackground: boolean;
821
- exportEmbedScene: boolean;
822
- exportWithDarkMode: boolean;
823
- exportScale: number;
824
- currentItemStrokeColor: string;
825
- currentItemBackgroundColor: string;
826
- currentItemFillStyle: import("@excalidraw/element/types").FillStyle;
827
- currentItemStrokeWidth: number;
828
- currentItemStrokeStyle: import("@excalidraw/element/types").StrokeStyle;
829
- currentItemRoughness: number;
830
- currentItemOpacity: number;
831
- currentItemFontFamily: number;
832
- currentItemFontSize: number;
833
- currentItemTextAlign: string;
834
- currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
835
- currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
836
- currentHoveredFontFamily: number | null;
837
- currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
838
- currentItemArrowType: "round" | "sharp" | "elbow";
839
- viewBackgroundColor: string;
840
- cursorButton: "up" | "down";
841
- scrolledOutside: boolean;
842
- name: string | null;
843
- isResizing: boolean;
844
- isRotating: boolean;
845
- openMenu: "canvas" | "shape" | null;
846
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
847
- openSidebar: {
848
- name: string;
849
- /** zoom content to cover X of the viewport, when fitToViewport=true */
850
- tab?: string | undefined;
851
- } | null;
852
- openDialog: {
853
- name: "imageExport" | "help" | "jsonExport";
854
- } | {
855
- name: "ttd";
856
- tab: "mermaid" | "text-to-diagram";
857
- } | {
858
- name: "commandPalette";
859
- } | {
860
- name: "elementLinkSelector";
861
- sourceElementId: string;
862
- } | null;
863
- defaultSidebarDockedPreference: boolean;
864
- lastPointerDownWith: import("@excalidraw/element/types").PointerType;
865
- selectedElementIds: Readonly<{
866
- [id: string]: true;
867
- }>;
868
- hoveredElementIds: Readonly<{
869
- [id: string]: true;
870
- }>;
871
- previousSelectedElementIds: {
872
- [id: string]: true;
873
- };
874
- selectedElementsAreBeingDragged: boolean;
875
- shouldCacheIgnoreZoom: boolean;
876
- toast: {
877
- message: string;
878
- closable?: boolean | undefined;
879
- duration?: number | undefined;
880
- } | null;
881
- zenModeEnabled: boolean;
882
- theme: import("@excalidraw/element/types").Theme;
883
- gridSize: number;
884
- gridStep: number;
885
- gridModeEnabled: boolean;
886
- viewModeEnabled: boolean;
887
- selectedGroupIds: {
888
- [groupId: string]: boolean;
889
- };
890
- editingGroupId: string | null;
891
- width: number;
892
- height: number;
893
- offsetTop: number;
894
- offsetLeft: number;
895
- fileHandle: import("browser-fs-access").FileSystemHandle | null;
896
- collaborators: Map<import("../types").SocketId, Readonly<{
897
- pointer?: import("../types").CollaboratorPointer | undefined;
898
- button?: "up" | "down" | undefined;
899
- selectedElementIds?: Readonly<{
900
- [id: string]: true;
901
- }> | undefined;
902
- username?: string | null | undefined;
903
- userState?: import("@excalidraw/common").UserIdleState | undefined;
904
- color?: {
905
- background: string;
906
- stroke: string;
907
- } | undefined;
908
- avatarUrl?: string | undefined;
909
- id?: string | undefined;
910
- socketId?: import("../types").SocketId | undefined;
911
- isCurrentUser?: boolean | undefined;
912
- isInCall?: boolean | undefined;
913
- isSpeaking?: boolean | undefined;
914
- isMuted?: boolean | undefined;
915
- }>>;
916
- stats: {
917
- open: boolean;
918
- panels: number;
919
- };
920
- currentChartType: import("@excalidraw/element/types").ChartType;
921
- pasteDialog: {
922
- shown: false;
923
- data: null;
924
- } | {
925
- shown: true;
926
- data: import("../charts").Spreadsheet;
927
- };
928
- showHyperlinkPopup: false | "editor" | "info";
929
- selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
930
- snapLines: readonly import("../snapping").SnapLine[];
931
- originSnapOffset: {
932
- x: number;
933
- y: number;
934
- } | null;
935
- objectsSnapModeEnabled: boolean;
936
- userToFollow: import("../types").UserToFollow | null;
937
- followedBy: Set<import("../types").SocketId>;
938
- isCropping: boolean;
939
- croppingElementId: string | null;
940
- searchMatches: Readonly<{
941
- focusedId: string | null;
942
- matches: readonly import("../types").SearchMatch[];
943
- }> | null;
944
- activeLockedId: string | null;
945
- lockedMultiSelections: {
946
- [groupId: string]: true;
947
- };
948
- };
949
- captureUpdate: "EVENTUALLY";
950
- };
951
- export declare const zoomToFit: ({ canvasOffsets, targetElements, appState, fitToViewport, viewportZoomFactor, minZoom, maxZoom, }: {
952
- canvasOffsets?: Partial<{
953
- top: number;
954
- right: number;
955
- bottom: number;
956
- left: number;
957
- }> | undefined;
958
- targetElements: readonly ExcalidrawElement[];
959
- appState: Readonly<AppState>;
960
- /** whether to fit content to viewport (beyond >100%) */
961
- fitToViewport: boolean;
962
- /** zoom content to cover X of the viewport, when fitToViewport=true */
963
- viewportZoomFactor?: number | undefined;
964
- minZoom?: number | undefined;
965
- maxZoom?: number | undefined;
966
- }) => {
967
- appState: {
968
- scrollX: number;
969
- scrollY: number;
970
- zoom: {
971
- value: import("../types").NormalizedZoomValue;
972
- };
973
- contextMenu: {
974
- items: import("../components/ContextMenu").ContextMenuItems;
975
- top: number;
976
- left: number;
977
- } | null;
978
- showWelcomeScreen: boolean;
979
- isLoading: boolean;
980
- errorMessage: import("react").ReactNode;
981
- activeEmbeddable: {
982
- element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
983
- state: "active" | "hover";
984
- } | null;
985
- newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
986
- resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
987
- multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
988
- selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
989
- isBindingEnabled: boolean;
990
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
991
- suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
992
- frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
993
- frameRendering: {
994
- enabled: boolean;
995
- name: boolean;
996
- outline: boolean;
997
- clip: boolean;
998
- };
999
- editingFrame: string | null;
1000
- elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
1001
- editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1002
- activeTool: {
1003
- lastActiveTool: import("../types").ActiveTool | null;
1004
- locked: boolean;
1005
- fromSelection: boolean;
1006
- } & import("../types").ActiveTool;
1007
- penMode: boolean;
1008
- penDetected: boolean;
1009
- exportBackground: boolean;
1010
- exportEmbedScene: boolean;
1011
- exportWithDarkMode: boolean;
1012
- exportScale: number;
1013
- currentItemStrokeColor: string;
1014
- currentItemBackgroundColor: string;
1015
- currentItemFillStyle: import("@excalidraw/element/types").FillStyle;
1016
- currentItemStrokeWidth: number;
1017
- currentItemStrokeStyle: import("@excalidraw/element/types").StrokeStyle;
1018
- currentItemRoughness: number;
1019
- currentItemOpacity: number;
1020
- currentItemFontFamily: number;
1021
- currentItemFontSize: number;
1022
- currentItemTextAlign: string;
1023
- currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1024
- currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1025
- currentHoveredFontFamily: number | null;
1026
- currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
1027
- currentItemArrowType: "round" | "sharp" | "elbow";
1028
- viewBackgroundColor: string;
1029
- cursorButton: "up" | "down";
1030
- scrolledOutside: boolean;
1031
- name: string | null;
1032
- isResizing: boolean;
1033
- isRotating: boolean;
1034
- openMenu: "canvas" | "shape" | null;
1035
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
1036
- openSidebar: {
1037
- name: string;
1038
- /** zoom content to cover X of the viewport, when fitToViewport=true */
1039
- tab?: string | undefined;
1040
- } | null;
1041
- openDialog: {
1042
- name: "imageExport" | "help" | "jsonExport";
1043
- } | {
1044
- name: "ttd";
1045
- tab: "mermaid" | "text-to-diagram";
1046
- } | {
1047
- name: "commandPalette";
1048
- } | {
1049
- name: "elementLinkSelector";
1050
- sourceElementId: string;
1051
- } | null;
1052
- defaultSidebarDockedPreference: boolean;
1053
- lastPointerDownWith: import("@excalidraw/element/types").PointerType;
1054
- selectedElementIds: Readonly<{
1055
- [id: string]: true;
1056
- }>;
1057
- hoveredElementIds: Readonly<{
1058
- [id: string]: true;
1059
- }>;
1060
- previousSelectedElementIds: {
1061
- [id: string]: true;
1062
- };
1063
- selectedElementsAreBeingDragged: boolean;
1064
- shouldCacheIgnoreZoom: boolean;
1065
- toast: {
1066
- message: string;
1067
- closable?: boolean | undefined;
1068
- duration?: number | undefined;
1069
- } | null;
1070
- zenModeEnabled: boolean;
1071
- theme: import("@excalidraw/element/types").Theme;
1072
- gridSize: number;
1073
- gridStep: number;
1074
- gridModeEnabled: boolean;
1075
- viewModeEnabled: boolean;
1076
- selectedGroupIds: {
1077
- [groupId: string]: boolean;
1078
- };
1079
- editingGroupId: string | null;
1080
- width: number;
1081
- height: number;
1082
- offsetTop: number;
1083
- offsetLeft: number;
1084
- fileHandle: import("browser-fs-access").FileSystemHandle | null;
1085
- collaborators: Map<import("../types").SocketId, Readonly<{
1086
- pointer?: import("../types").CollaboratorPointer | undefined;
1087
- button?: "up" | "down" | undefined;
1088
- selectedElementIds?: Readonly<{
1089
- [id: string]: true;
1090
- }> | undefined;
1091
- username?: string | null | undefined;
1092
- userState?: import("@excalidraw/common").UserIdleState | undefined;
1093
- color?: {
1094
- background: string;
1095
- stroke: string;
1096
- } | undefined;
1097
- avatarUrl?: string | undefined;
1098
- id?: string | undefined;
1099
- socketId?: import("../types").SocketId | undefined;
1100
- isCurrentUser?: boolean | undefined;
1101
- isInCall?: boolean | undefined;
1102
- isSpeaking?: boolean | undefined;
1103
- isMuted?: boolean | undefined;
1104
- }>>;
1105
- stats: {
1106
- open: boolean;
1107
- panels: number;
1108
- };
1109
- currentChartType: import("@excalidraw/element/types").ChartType;
1110
- pasteDialog: {
1111
- shown: false;
1112
- data: null;
1113
- } | {
1114
- shown: true;
1115
- data: import("../charts").Spreadsheet;
1116
- };
1117
- showHyperlinkPopup: false | "editor" | "info";
1118
- selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
1119
- snapLines: readonly import("../snapping").SnapLine[];
1120
- originSnapOffset: {
1121
- x: number;
1122
- y: number;
1123
- } | null;
1124
- objectsSnapModeEnabled: boolean;
1125
- userToFollow: import("../types").UserToFollow | null;
1126
- followedBy: Set<import("../types").SocketId>;
1127
- isCropping: boolean;
1128
- croppingElementId: string | null;
1129
- searchMatches: Readonly<{
1130
- focusedId: string | null;
1131
- matches: readonly import("../types").SearchMatch[];
1132
- }> | null;
1133
- activeLockedId: string | null;
1134
- lockedMultiSelections: {
1135
- [groupId: string]: true;
1136
- };
1137
- };
1138
- captureUpdate: "EVENTUALLY";
1139
- };
1140
791
  export declare const actionZoomToFitSelectionInViewport: {
1141
792
  name: "zoomToFitSelectionInViewport";
1142
793
  label: string;
1143
794
  icon: import("react/jsx-runtime").JSX.Element;
795
+ viewMode: true;
796
+ navigation: true;
1144
797
  trackEvent: {
1145
798
  category: "canvas";
1146
799
  };
1147
- perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: any, app: import("../types").AppClassProperties) => {
800
+ predicate: (elements: readonly import("@excalidraw/element/types").ExcalidrawElement[], appState: AppState, appProps: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
801
+ perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
1148
802
  appState: {
803
+ zoom: import("../types").Zoom;
1149
804
  scrollX: number;
1150
805
  scrollY: number;
1151
- zoom: {
1152
- value: import("../types").NormalizedZoomValue;
1153
- };
1154
806
  contextMenu: {
1155
807
  items: import("../components/ContextMenu").ContextMenuItems;
1156
808
  top: number;
@@ -1158,18 +810,36 @@ export declare const actionZoomToFitSelectionInViewport: {
1158
810
  } | null;
1159
811
  showWelcomeScreen: boolean;
1160
812
  isLoading: boolean;
1161
- errorMessage: import("react").ReactNode;
813
+ errorMessage: React.ReactNode;
1162
814
  activeEmbeddable: {
1163
815
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
1164
- state: "active" | "hover";
816
+ state: "hover" | "active";
1165
817
  } | null;
1166
818
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
1167
819
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1168
820
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
1169
821
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1170
822
  isBindingEnabled: boolean;
1171
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
1172
- suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
823
+ boxSelectionMode: import("../types").BoxSelectionMode;
824
+ bindingPreference: "enabled" | "disabled";
825
+ isMidpointSnappingEnabled: boolean;
826
+ showHints: boolean;
827
+ inputDevice: import("../types").InputDevice;
828
+ suggestedBinding: {
829
+ element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
830
+ midPoint?: import("@excalidraw/math").GlobalPoint;
831
+ } | null;
832
+ textToolHover: {
833
+ type: "text";
834
+ elementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
835
+ } | {
836
+ type: "container";
837
+ elementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
838
+ } | {
839
+ type: "arrow";
840
+ elementId: import("@excalidraw/element/types").ExcalidrawArrowElement["id"];
841
+ anchor: "start" | "end" | "label";
842
+ } | null;
1173
843
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1174
844
  frameRendering: {
1175
845
  enabled: boolean;
@@ -1177,14 +847,18 @@ export declare const actionZoomToFitSelectionInViewport: {
1177
847
  outline: boolean;
1178
848
  clip: boolean;
1179
849
  };
1180
- editingFrame: string | null;
1181
- elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
1182
- editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
850
+ editingFrame: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["id"] | null;
851
+ elementsToHighlight: readonly import("@excalidraw/element/types").NonDeletedExcalidrawElement[] | null;
852
+ editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null;
1183
853
  activeTool: {
1184
854
  lastActiveTool: import("../types").ActiveTool | null;
1185
855
  locked: boolean;
1186
856
  fromSelection: boolean;
1187
857
  } & import("../types").ActiveTool;
858
+ preferredSelectionTool: {
859
+ type: "selection" | "lasso";
860
+ initialized: boolean;
861
+ };
1188
862
  penMode: boolean;
1189
863
  penDetected: boolean;
1190
864
  exportBackground: boolean;
@@ -1192,44 +866,53 @@ export declare const actionZoomToFitSelectionInViewport: {
1192
866
  exportWithDarkMode: boolean;
1193
867
  exportScale: number;
1194
868
  currentItemStrokeColor: string;
869
+ currentItemStickynoteStrokeColor: string;
870
+ currentItemStickynoteBackgroundColor: string;
1195
871
  currentItemBackgroundColor: string;
1196
- currentItemFillStyle: import("@excalidraw/element/types").FillStyle;
1197
- currentItemStrokeWidth: number;
1198
- currentItemStrokeStyle: import("@excalidraw/element/types").StrokeStyle;
872
+ currentItemFillStyle: import("@excalidraw/element/types").ExcalidrawElement["fillStyle"];
873
+ currentItemStrokeWidthKey: import("@excalidraw/common").StrokeWidthKey;
874
+ currentItemStrokeStyle: import("@excalidraw/element/types").ExcalidrawElement["strokeStyle"];
1199
875
  currentItemRoughness: number;
876
+ currentItemStrokeVariability: import("@excalidraw/element/types").StrokeVariability;
1200
877
  currentItemOpacity: number;
1201
- currentItemFontFamily: number;
878
+ currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
1202
879
  currentItemFontSize: number;
1203
- currentItemTextAlign: string;
880
+ currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
1204
881
  currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1205
882
  currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1206
- currentHoveredFontFamily: number | null;
883
+ currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
1207
884
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
1208
- currentItemArrowType: "round" | "sharp" | "elbow";
885
+ currentItemArrowType: "sharp" | "round" | "elbow";
1209
886
  viewBackgroundColor: string;
887
+ scrollConstraints: import("../types").ScrollConstraints | null;
1210
888
  cursorButton: "up" | "down";
1211
889
  scrolledOutside: boolean;
1212
890
  name: string | null;
1213
891
  isResizing: boolean;
1214
892
  isRotating: boolean;
1215
- openMenu: "canvas" | "shape" | null;
1216
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
893
+ openMenu: "canvas" | null;
894
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
1217
895
  openSidebar: {
1218
- name: string;
1219
- /** zoom content to cover X of the viewport, when fitToViewport=true */
1220
- tab?: string | undefined;
896
+ name: import("../types").SidebarName;
897
+ tab?: import("../types").SidebarTabName;
1221
898
  } | null;
1222
- openDialog: {
899
+ openDialog: null | {
1223
900
  name: "imageExport" | "help" | "jsonExport";
1224
901
  } | {
1225
902
  name: "ttd";
1226
- tab: "mermaid" | "text-to-diagram";
903
+ tab: "text-to-diagram" | "mermaid";
1227
904
  } | {
1228
905
  name: "commandPalette";
906
+ } | {
907
+ name: "settings";
1229
908
  } | {
1230
909
  name: "elementLinkSelector";
1231
- sourceElementId: string;
1232
- } | null;
910
+ sourceElementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
911
+ } | {
912
+ name: "charts";
913
+ data: import("../charts").Spreadsheet;
914
+ rawText: string;
915
+ };
1233
916
  defaultSidebarDockedPreference: boolean;
1234
917
  lastPointerDownWith: import("@excalidraw/element/types").PointerType;
1235
918
  selectedElementIds: Readonly<{
@@ -1244,9 +927,9 @@ export declare const actionZoomToFitSelectionInViewport: {
1244
927
  selectedElementsAreBeingDragged: boolean;
1245
928
  shouldCacheIgnoreZoom: boolean;
1246
929
  toast: {
1247
- message: string;
1248
- closable?: boolean | undefined;
1249
- duration?: number | undefined;
930
+ message: React.ReactNode;
931
+ closable?: boolean;
932
+ duration?: number;
1250
933
  } | null;
1251
934
  zenModeEnabled: boolean;
1252
935
  theme: import("@excalidraw/element/types").Theme;
@@ -1257,45 +940,18 @@ export declare const actionZoomToFitSelectionInViewport: {
1257
940
  selectedGroupIds: {
1258
941
  [groupId: string]: boolean;
1259
942
  };
1260
- editingGroupId: string | null;
943
+ editingGroupId: import("@excalidraw/element/types").GroupId | null;
1261
944
  width: number;
1262
945
  height: number;
1263
946
  offsetTop: number;
1264
947
  offsetLeft: number;
1265
- fileHandle: import("browser-fs-access").FileSystemHandle | null;
1266
- collaborators: Map<import("../types").SocketId, Readonly<{
1267
- pointer?: import("../types").CollaboratorPointer | undefined;
1268
- button?: "up" | "down" | undefined;
1269
- selectedElementIds?: Readonly<{
1270
- [id: string]: true;
1271
- }> | undefined;
1272
- username?: string | null | undefined;
1273
- userState?: import("@excalidraw/common").UserIdleState | undefined;
1274
- color?: {
1275
- background: string;
1276
- stroke: string;
1277
- } | undefined;
1278
- avatarUrl?: string | undefined;
1279
- id?: string | undefined;
1280
- socketId?: import("../types").SocketId | undefined;
1281
- isCurrentUser?: boolean | undefined;
1282
- isInCall?: boolean | undefined;
1283
- isSpeaking?: boolean | undefined;
1284
- isMuted?: boolean | undefined;
1285
- }>>;
948
+ fileHandle: FileSystemFileHandle | null;
949
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
1286
950
  stats: {
1287
951
  open: boolean;
1288
952
  panels: number;
1289
953
  };
1290
- currentChartType: import("@excalidraw/element/types").ChartType;
1291
- pasteDialog: {
1292
- shown: false;
1293
- data: null;
1294
- } | {
1295
- shown: true;
1296
- data: import("../charts").Spreadsheet;
1297
- };
1298
- showHyperlinkPopup: false | "editor" | "info";
954
+ showHyperlinkPopup: false | "info" | "editor";
1299
955
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
1300
956
  snapLines: readonly import("../snapping").SnapLine[];
1301
957
  originSnapOffset: {
@@ -1303,18 +959,25 @@ export declare const actionZoomToFitSelectionInViewport: {
1303
959
  y: number;
1304
960
  } | null;
1305
961
  objectsSnapModeEnabled: boolean;
1306
- userToFollow: import("../types").UserToFollow | null;
1307
- followedBy: Set<import("../types").SocketId>;
1308
962
  isCropping: boolean;
1309
- croppingElementId: string | null;
963
+ croppingElementId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
1310
964
  searchMatches: Readonly<{
1311
- focusedId: string | null;
965
+ focusedId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
1312
966
  matches: readonly import("../types").SearchMatch[];
1313
967
  }> | null;
1314
968
  activeLockedId: string | null;
1315
969
  lockedMultiSelections: {
1316
970
  [groupId: string]: true;
1317
971
  };
972
+ bindMode: import("@excalidraw/element/types").BindMode;
973
+ colorTopPicks: {
974
+ elementStroke: readonly string[] | null;
975
+ elementBackground: readonly string[] | null;
976
+ bucketFill: readonly string[] | null;
977
+ stickyNoteStroke: readonly string[] | null;
978
+ stickyNoteBackground: readonly string[] | null;
979
+ };
980
+ fontTopPicks: readonly import("@excalidraw/element/types").FontFamilyValues[] | null;
1318
981
  };
1319
982
  captureUpdate: "EVENTUALLY";
1320
983
  };
@@ -1326,16 +989,17 @@ export declare const actionZoomToFitSelection: {
1326
989
  name: "zoomToFitSelection";
1327
990
  label: string;
1328
991
  icon: import("react/jsx-runtime").JSX.Element;
992
+ viewMode: true;
993
+ navigation: true;
1329
994
  trackEvent: {
1330
995
  category: "canvas";
1331
996
  };
1332
- perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: any, app: import("../types").AppClassProperties) => {
997
+ predicate: (elements: readonly import("@excalidraw/element/types").ExcalidrawElement[], appState: AppState, appProps: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
998
+ perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
1333
999
  appState: {
1000
+ zoom: import("../types").Zoom;
1334
1001
  scrollX: number;
1335
1002
  scrollY: number;
1336
- zoom: {
1337
- value: import("../types").NormalizedZoomValue;
1338
- };
1339
1003
  contextMenu: {
1340
1004
  items: import("../components/ContextMenu").ContextMenuItems;
1341
1005
  top: number;
@@ -1343,18 +1007,36 @@ export declare const actionZoomToFitSelection: {
1343
1007
  } | null;
1344
1008
  showWelcomeScreen: boolean;
1345
1009
  isLoading: boolean;
1346
- errorMessage: import("react").ReactNode;
1010
+ errorMessage: React.ReactNode;
1347
1011
  activeEmbeddable: {
1348
1012
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
1349
- state: "active" | "hover";
1013
+ state: "hover" | "active";
1350
1014
  } | null;
1351
1015
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
1352
1016
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1353
1017
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
1354
1018
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1355
1019
  isBindingEnabled: boolean;
1356
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
1357
- suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
1020
+ boxSelectionMode: import("../types").BoxSelectionMode;
1021
+ bindingPreference: "enabled" | "disabled";
1022
+ isMidpointSnappingEnabled: boolean;
1023
+ showHints: boolean;
1024
+ inputDevice: import("../types").InputDevice;
1025
+ suggestedBinding: {
1026
+ element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
1027
+ midPoint?: import("@excalidraw/math").GlobalPoint;
1028
+ } | null;
1029
+ textToolHover: {
1030
+ type: "text";
1031
+ elementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
1032
+ } | {
1033
+ type: "container";
1034
+ elementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
1035
+ } | {
1036
+ type: "arrow";
1037
+ elementId: import("@excalidraw/element/types").ExcalidrawArrowElement["id"];
1038
+ anchor: "start" | "end" | "label";
1039
+ } | null;
1358
1040
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1359
1041
  frameRendering: {
1360
1042
  enabled: boolean;
@@ -1362,14 +1044,18 @@ export declare const actionZoomToFitSelection: {
1362
1044
  outline: boolean;
1363
1045
  clip: boolean;
1364
1046
  };
1365
- editingFrame: string | null;
1366
- elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
1367
- editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1047
+ editingFrame: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["id"] | null;
1048
+ elementsToHighlight: readonly import("@excalidraw/element/types").NonDeletedExcalidrawElement[] | null;
1049
+ editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null;
1368
1050
  activeTool: {
1369
1051
  lastActiveTool: import("../types").ActiveTool | null;
1370
1052
  locked: boolean;
1371
1053
  fromSelection: boolean;
1372
1054
  } & import("../types").ActiveTool;
1055
+ preferredSelectionTool: {
1056
+ type: "selection" | "lasso";
1057
+ initialized: boolean;
1058
+ };
1373
1059
  penMode: boolean;
1374
1060
  penDetected: boolean;
1375
1061
  exportBackground: boolean;
@@ -1377,44 +1063,53 @@ export declare const actionZoomToFitSelection: {
1377
1063
  exportWithDarkMode: boolean;
1378
1064
  exportScale: number;
1379
1065
  currentItemStrokeColor: string;
1066
+ currentItemStickynoteStrokeColor: string;
1067
+ currentItemStickynoteBackgroundColor: string;
1380
1068
  currentItemBackgroundColor: string;
1381
- currentItemFillStyle: import("@excalidraw/element/types").FillStyle;
1382
- currentItemStrokeWidth: number;
1383
- currentItemStrokeStyle: import("@excalidraw/element/types").StrokeStyle;
1069
+ currentItemFillStyle: import("@excalidraw/element/types").ExcalidrawElement["fillStyle"];
1070
+ currentItemStrokeWidthKey: import("@excalidraw/common").StrokeWidthKey;
1071
+ currentItemStrokeStyle: import("@excalidraw/element/types").ExcalidrawElement["strokeStyle"];
1384
1072
  currentItemRoughness: number;
1073
+ currentItemStrokeVariability: import("@excalidraw/element/types").StrokeVariability;
1385
1074
  currentItemOpacity: number;
1386
- currentItemFontFamily: number;
1075
+ currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
1387
1076
  currentItemFontSize: number;
1388
- currentItemTextAlign: string;
1077
+ currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
1389
1078
  currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1390
1079
  currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1391
- currentHoveredFontFamily: number | null;
1080
+ currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
1392
1081
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
1393
- currentItemArrowType: "round" | "sharp" | "elbow";
1082
+ currentItemArrowType: "sharp" | "round" | "elbow";
1394
1083
  viewBackgroundColor: string;
1084
+ scrollConstraints: import("../types").ScrollConstraints | null;
1395
1085
  cursorButton: "up" | "down";
1396
1086
  scrolledOutside: boolean;
1397
1087
  name: string | null;
1398
1088
  isResizing: boolean;
1399
1089
  isRotating: boolean;
1400
- openMenu: "canvas" | "shape" | null;
1401
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
1090
+ openMenu: "canvas" | null;
1091
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
1402
1092
  openSidebar: {
1403
- name: string;
1404
- /** zoom content to cover X of the viewport, when fitToViewport=true */
1405
- tab?: string | undefined;
1093
+ name: import("../types").SidebarName;
1094
+ tab?: import("../types").SidebarTabName;
1406
1095
  } | null;
1407
- openDialog: {
1096
+ openDialog: null | {
1408
1097
  name: "imageExport" | "help" | "jsonExport";
1409
1098
  } | {
1410
1099
  name: "ttd";
1411
- tab: "mermaid" | "text-to-diagram";
1100
+ tab: "text-to-diagram" | "mermaid";
1412
1101
  } | {
1413
1102
  name: "commandPalette";
1103
+ } | {
1104
+ name: "settings";
1414
1105
  } | {
1415
1106
  name: "elementLinkSelector";
1416
- sourceElementId: string;
1417
- } | null;
1107
+ sourceElementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
1108
+ } | {
1109
+ name: "charts";
1110
+ data: import("../charts").Spreadsheet;
1111
+ rawText: string;
1112
+ };
1418
1113
  defaultSidebarDockedPreference: boolean;
1419
1114
  lastPointerDownWith: import("@excalidraw/element/types").PointerType;
1420
1115
  selectedElementIds: Readonly<{
@@ -1429,9 +1124,9 @@ export declare const actionZoomToFitSelection: {
1429
1124
  selectedElementsAreBeingDragged: boolean;
1430
1125
  shouldCacheIgnoreZoom: boolean;
1431
1126
  toast: {
1432
- message: string;
1433
- closable?: boolean | undefined;
1434
- duration?: number | undefined;
1127
+ message: React.ReactNode;
1128
+ closable?: boolean;
1129
+ duration?: number;
1435
1130
  } | null;
1436
1131
  zenModeEnabled: boolean;
1437
1132
  theme: import("@excalidraw/element/types").Theme;
@@ -1442,45 +1137,18 @@ export declare const actionZoomToFitSelection: {
1442
1137
  selectedGroupIds: {
1443
1138
  [groupId: string]: boolean;
1444
1139
  };
1445
- editingGroupId: string | null;
1140
+ editingGroupId: import("@excalidraw/element/types").GroupId | null;
1446
1141
  width: number;
1447
1142
  height: number;
1448
1143
  offsetTop: number;
1449
1144
  offsetLeft: number;
1450
- fileHandle: import("browser-fs-access").FileSystemHandle | null;
1451
- collaborators: Map<import("../types").SocketId, Readonly<{
1452
- pointer?: import("../types").CollaboratorPointer | undefined;
1453
- button?: "up" | "down" | undefined;
1454
- selectedElementIds?: Readonly<{
1455
- [id: string]: true;
1456
- }> | undefined;
1457
- username?: string | null | undefined;
1458
- userState?: import("@excalidraw/common").UserIdleState | undefined;
1459
- color?: {
1460
- background: string;
1461
- stroke: string;
1462
- } | undefined;
1463
- avatarUrl?: string | undefined;
1464
- id?: string | undefined;
1465
- socketId?: import("../types").SocketId | undefined;
1466
- isCurrentUser?: boolean | undefined;
1467
- isInCall?: boolean | undefined;
1468
- isSpeaking?: boolean | undefined;
1469
- isMuted?: boolean | undefined;
1470
- }>>;
1145
+ fileHandle: FileSystemFileHandle | null;
1146
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
1471
1147
  stats: {
1472
1148
  open: boolean;
1473
1149
  panels: number;
1474
1150
  };
1475
- currentChartType: import("@excalidraw/element/types").ChartType;
1476
- pasteDialog: {
1477
- shown: false;
1478
- data: null;
1479
- } | {
1480
- shown: true;
1481
- data: import("../charts").Spreadsheet;
1482
- };
1483
- showHyperlinkPopup: false | "editor" | "info";
1151
+ showHyperlinkPopup: false | "info" | "editor";
1484
1152
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
1485
1153
  snapLines: readonly import("../snapping").SnapLine[];
1486
1154
  originSnapOffset: {
@@ -1488,18 +1156,25 @@ export declare const actionZoomToFitSelection: {
1488
1156
  y: number;
1489
1157
  } | null;
1490
1158
  objectsSnapModeEnabled: boolean;
1491
- userToFollow: import("../types").UserToFollow | null;
1492
- followedBy: Set<import("../types").SocketId>;
1493
1159
  isCropping: boolean;
1494
- croppingElementId: string | null;
1160
+ croppingElementId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
1495
1161
  searchMatches: Readonly<{
1496
- focusedId: string | null;
1162
+ focusedId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
1497
1163
  matches: readonly import("../types").SearchMatch[];
1498
1164
  }> | null;
1499
1165
  activeLockedId: string | null;
1500
1166
  lockedMultiSelections: {
1501
1167
  [groupId: string]: true;
1502
1168
  };
1169
+ bindMode: import("@excalidraw/element/types").BindMode;
1170
+ colorTopPicks: {
1171
+ elementStroke: readonly string[] | null;
1172
+ elementBackground: readonly string[] | null;
1173
+ bucketFill: readonly string[] | null;
1174
+ stickyNoteStroke: readonly string[] | null;
1175
+ stickyNoteBackground: readonly string[] | null;
1176
+ };
1177
+ fontTopPicks: readonly import("@excalidraw/element/types").FontFamilyValues[] | null;
1503
1178
  };
1504
1179
  captureUpdate: "EVENTUALLY";
1505
1180
  };
@@ -1512,16 +1187,16 @@ export declare const actionZoomToFit: {
1512
1187
  label: string;
1513
1188
  icon: import("react/jsx-runtime").JSX.Element;
1514
1189
  viewMode: true;
1190
+ navigation: true;
1515
1191
  trackEvent: {
1516
1192
  category: "canvas";
1517
1193
  };
1518
- perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: any, app: import("../types").AppClassProperties) => {
1194
+ predicate: (elements: readonly import("@excalidraw/element/types").ExcalidrawElement[], appState: AppState, appProps: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
1195
+ perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
1519
1196
  appState: {
1197
+ zoom: import("../types").Zoom;
1520
1198
  scrollX: number;
1521
1199
  scrollY: number;
1522
- zoom: {
1523
- value: import("../types").NormalizedZoomValue;
1524
- };
1525
1200
  contextMenu: {
1526
1201
  items: import("../components/ContextMenu").ContextMenuItems;
1527
1202
  top: number;
@@ -1529,18 +1204,36 @@ export declare const actionZoomToFit: {
1529
1204
  } | null;
1530
1205
  showWelcomeScreen: boolean;
1531
1206
  isLoading: boolean;
1532
- errorMessage: import("react").ReactNode;
1207
+ errorMessage: React.ReactNode;
1533
1208
  activeEmbeddable: {
1534
1209
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
1535
- state: "active" | "hover";
1210
+ state: "hover" | "active";
1536
1211
  } | null;
1537
1212
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
1538
1213
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1539
1214
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
1540
1215
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1541
1216
  isBindingEnabled: boolean;
1542
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
1543
- suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
1217
+ boxSelectionMode: import("../types").BoxSelectionMode;
1218
+ bindingPreference: "enabled" | "disabled";
1219
+ isMidpointSnappingEnabled: boolean;
1220
+ showHints: boolean;
1221
+ inputDevice: import("../types").InputDevice;
1222
+ suggestedBinding: {
1223
+ element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
1224
+ midPoint?: import("@excalidraw/math").GlobalPoint;
1225
+ } | null;
1226
+ textToolHover: {
1227
+ type: "text";
1228
+ elementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
1229
+ } | {
1230
+ type: "container";
1231
+ elementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
1232
+ } | {
1233
+ type: "arrow";
1234
+ elementId: import("@excalidraw/element/types").ExcalidrawArrowElement["id"];
1235
+ anchor: "start" | "end" | "label";
1236
+ } | null;
1544
1237
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1545
1238
  frameRendering: {
1546
1239
  enabled: boolean;
@@ -1548,14 +1241,18 @@ export declare const actionZoomToFit: {
1548
1241
  outline: boolean;
1549
1242
  clip: boolean;
1550
1243
  };
1551
- editingFrame: string | null;
1552
- elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
1553
- editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1244
+ editingFrame: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["id"] | null;
1245
+ elementsToHighlight: readonly import("@excalidraw/element/types").NonDeletedExcalidrawElement[] | null;
1246
+ editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null;
1554
1247
  activeTool: {
1555
1248
  lastActiveTool: import("../types").ActiveTool | null;
1556
1249
  locked: boolean;
1557
1250
  fromSelection: boolean;
1558
1251
  } & import("../types").ActiveTool;
1252
+ preferredSelectionTool: {
1253
+ type: "selection" | "lasso";
1254
+ initialized: boolean;
1255
+ };
1559
1256
  penMode: boolean;
1560
1257
  penDetected: boolean;
1561
1258
  exportBackground: boolean;
@@ -1563,44 +1260,53 @@ export declare const actionZoomToFit: {
1563
1260
  exportWithDarkMode: boolean;
1564
1261
  exportScale: number;
1565
1262
  currentItemStrokeColor: string;
1263
+ currentItemStickynoteStrokeColor: string;
1264
+ currentItemStickynoteBackgroundColor: string;
1566
1265
  currentItemBackgroundColor: string;
1567
- currentItemFillStyle: import("@excalidraw/element/types").FillStyle;
1568
- currentItemStrokeWidth: number;
1569
- currentItemStrokeStyle: import("@excalidraw/element/types").StrokeStyle;
1266
+ currentItemFillStyle: import("@excalidraw/element/types").ExcalidrawElement["fillStyle"];
1267
+ currentItemStrokeWidthKey: import("@excalidraw/common").StrokeWidthKey;
1268
+ currentItemStrokeStyle: import("@excalidraw/element/types").ExcalidrawElement["strokeStyle"];
1570
1269
  currentItemRoughness: number;
1270
+ currentItemStrokeVariability: import("@excalidraw/element/types").StrokeVariability;
1571
1271
  currentItemOpacity: number;
1572
- currentItemFontFamily: number;
1272
+ currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
1573
1273
  currentItemFontSize: number;
1574
- currentItemTextAlign: string;
1274
+ currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
1575
1275
  currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1576
1276
  currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1577
- currentHoveredFontFamily: number | null;
1277
+ currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
1578
1278
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
1579
- currentItemArrowType: "round" | "sharp" | "elbow";
1279
+ currentItemArrowType: "sharp" | "round" | "elbow";
1580
1280
  viewBackgroundColor: string;
1281
+ scrollConstraints: import("../types").ScrollConstraints | null;
1581
1282
  cursorButton: "up" | "down";
1582
1283
  scrolledOutside: boolean;
1583
1284
  name: string | null;
1584
1285
  isResizing: boolean;
1585
1286
  isRotating: boolean;
1586
- openMenu: "canvas" | "shape" | null;
1587
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
1287
+ openMenu: "canvas" | null;
1288
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
1588
1289
  openSidebar: {
1589
- name: string;
1590
- /** zoom content to cover X of the viewport, when fitToViewport=true */
1591
- tab?: string | undefined;
1290
+ name: import("../types").SidebarName;
1291
+ tab?: import("../types").SidebarTabName;
1592
1292
  } | null;
1593
- openDialog: {
1293
+ openDialog: null | {
1594
1294
  name: "imageExport" | "help" | "jsonExport";
1595
1295
  } | {
1596
1296
  name: "ttd";
1597
- tab: "mermaid" | "text-to-diagram";
1297
+ tab: "text-to-diagram" | "mermaid";
1598
1298
  } | {
1599
1299
  name: "commandPalette";
1300
+ } | {
1301
+ name: "settings";
1600
1302
  } | {
1601
1303
  name: "elementLinkSelector";
1602
- sourceElementId: string;
1603
- } | null;
1304
+ sourceElementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
1305
+ } | {
1306
+ name: "charts";
1307
+ data: import("../charts").Spreadsheet;
1308
+ rawText: string;
1309
+ };
1604
1310
  defaultSidebarDockedPreference: boolean;
1605
1311
  lastPointerDownWith: import("@excalidraw/element/types").PointerType;
1606
1312
  selectedElementIds: Readonly<{
@@ -1615,9 +1321,9 @@ export declare const actionZoomToFit: {
1615
1321
  selectedElementsAreBeingDragged: boolean;
1616
1322
  shouldCacheIgnoreZoom: boolean;
1617
1323
  toast: {
1618
- message: string;
1619
- closable?: boolean | undefined;
1620
- duration?: number | undefined;
1324
+ message: React.ReactNode;
1325
+ closable?: boolean;
1326
+ duration?: number;
1621
1327
  } | null;
1622
1328
  zenModeEnabled: boolean;
1623
1329
  theme: import("@excalidraw/element/types").Theme;
@@ -1628,45 +1334,18 @@ export declare const actionZoomToFit: {
1628
1334
  selectedGroupIds: {
1629
1335
  [groupId: string]: boolean;
1630
1336
  };
1631
- editingGroupId: string | null;
1337
+ editingGroupId: import("@excalidraw/element/types").GroupId | null;
1632
1338
  width: number;
1633
1339
  height: number;
1634
1340
  offsetTop: number;
1635
1341
  offsetLeft: number;
1636
- fileHandle: import("browser-fs-access").FileSystemHandle | null;
1637
- collaborators: Map<import("../types").SocketId, Readonly<{
1638
- pointer?: import("../types").CollaboratorPointer | undefined;
1639
- button?: "up" | "down" | undefined;
1640
- selectedElementIds?: Readonly<{
1641
- [id: string]: true;
1642
- }> | undefined;
1643
- username?: string | null | undefined;
1644
- userState?: import("@excalidraw/common").UserIdleState | undefined;
1645
- color?: {
1646
- background: string;
1647
- stroke: string;
1648
- } | undefined;
1649
- avatarUrl?: string | undefined;
1650
- id?: string | undefined;
1651
- socketId?: import("../types").SocketId | undefined;
1652
- isCurrentUser?: boolean | undefined;
1653
- isInCall?: boolean | undefined;
1654
- isSpeaking?: boolean | undefined;
1655
- isMuted?: boolean | undefined;
1656
- }>>;
1342
+ fileHandle: FileSystemFileHandle | null;
1343
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
1657
1344
  stats: {
1658
1345
  open: boolean;
1659
1346
  panels: number;
1660
1347
  };
1661
- currentChartType: import("@excalidraw/element/types").ChartType;
1662
- pasteDialog: {
1663
- shown: false;
1664
- data: null;
1665
- } | {
1666
- shown: true;
1667
- data: import("../charts").Spreadsheet;
1668
- };
1669
- showHyperlinkPopup: false | "editor" | "info";
1348
+ showHyperlinkPopup: false | "info" | "editor";
1670
1349
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
1671
1350
  snapLines: readonly import("../snapping").SnapLine[];
1672
1351
  originSnapOffset: {
@@ -1674,18 +1353,25 @@ export declare const actionZoomToFit: {
1674
1353
  y: number;
1675
1354
  } | null;
1676
1355
  objectsSnapModeEnabled: boolean;
1677
- userToFollow: import("../types").UserToFollow | null;
1678
- followedBy: Set<import("../types").SocketId>;
1679
1356
  isCropping: boolean;
1680
- croppingElementId: string | null;
1357
+ croppingElementId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
1681
1358
  searchMatches: Readonly<{
1682
- focusedId: string | null;
1359
+ focusedId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
1683
1360
  matches: readonly import("../types").SearchMatch[];
1684
1361
  }> | null;
1685
1362
  activeLockedId: string | null;
1686
1363
  lockedMultiSelections: {
1687
1364
  [groupId: string]: true;
1688
1365
  };
1366
+ bindMode: import("@excalidraw/element/types").BindMode;
1367
+ colorTopPicks: {
1368
+ elementStroke: readonly string[] | null;
1369
+ elementBackground: readonly string[] | null;
1370
+ bucketFill: readonly string[] | null;
1371
+ stickyNoteStroke: readonly string[] | null;
1372
+ stickyNoteBackground: readonly string[] | null;
1373
+ };
1374
+ fontTopPicks: readonly import("@excalidraw/element/types").FontFamilyValues[] | null;
1689
1375
  };
1690
1376
  captureUpdate: "EVENTUALLY";
1691
1377
  };
@@ -1693,725 +1379,6 @@ export declare const actionZoomToFit: {
1693
1379
  } & {
1694
1380
  keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
1695
1381
  };
1696
- export declare const actionToggleTheme: {
1697
- name: "toggleTheme";
1698
- label: (_: readonly ExcalidrawElement[], appState: Readonly<AppState>) => "buttons.lightMode" | "buttons.darkMode";
1699
- keywords: string[];
1700
- icon: (appState: import("../types").UIAppState) => import("react/jsx-runtime").JSX.Element;
1701
- viewMode: true;
1702
- trackEvent: {
1703
- category: "canvas";
1704
- };
1705
- perform: (_: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, value: any) => {
1706
- appState: {
1707
- theme: any;
1708
- contextMenu: {
1709
- items: import("../components/ContextMenu").ContextMenuItems;
1710
- top: number;
1711
- left: number;
1712
- } | null;
1713
- showWelcomeScreen: boolean;
1714
- isLoading: boolean;
1715
- errorMessage: import("react").ReactNode;
1716
- activeEmbeddable: {
1717
- element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
1718
- state: "active" | "hover";
1719
- } | null;
1720
- newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
1721
- resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1722
- multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
1723
- selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1724
- isBindingEnabled: boolean;
1725
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
1726
- suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
1727
- frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1728
- frameRendering: {
1729
- enabled: boolean;
1730
- name: boolean;
1731
- outline: boolean;
1732
- clip: boolean;
1733
- };
1734
- editingFrame: string | null;
1735
- elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
1736
- editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1737
- activeTool: {
1738
- lastActiveTool: import("../types").ActiveTool | null;
1739
- locked: boolean;
1740
- fromSelection: boolean;
1741
- } & import("../types").ActiveTool;
1742
- penMode: boolean;
1743
- penDetected: boolean;
1744
- exportBackground: boolean;
1745
- exportEmbedScene: boolean;
1746
- exportWithDarkMode: boolean;
1747
- exportScale: number;
1748
- currentItemStrokeColor: string;
1749
- currentItemBackgroundColor: string;
1750
- currentItemFillStyle: import("@excalidraw/element/types").FillStyle;
1751
- currentItemStrokeWidth: number;
1752
- currentItemStrokeStyle: import("@excalidraw/element/types").StrokeStyle;
1753
- currentItemRoughness: number;
1754
- currentItemOpacity: number;
1755
- currentItemFontFamily: number;
1756
- currentItemFontSize: number;
1757
- currentItemTextAlign: string;
1758
- currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1759
- currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1760
- currentHoveredFontFamily: number | null;
1761
- currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
1762
- currentItemArrowType: "round" | "sharp" | "elbow";
1763
- viewBackgroundColor: string;
1764
- scrollX: number;
1765
- scrollY: number;
1766
- cursorButton: "up" | "down";
1767
- scrolledOutside: boolean;
1768
- name: string | null;
1769
- isResizing: boolean;
1770
- isRotating: boolean;
1771
- zoom: Readonly<{
1772
- value: import("../types").NormalizedZoomValue;
1773
- }>;
1774
- openMenu: "canvas" | "shape" | null;
1775
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
1776
- openSidebar: {
1777
- name: string;
1778
- /** zoom content to cover X of the viewport, when fitToViewport=true */
1779
- tab?: string | undefined;
1780
- } | null;
1781
- openDialog: {
1782
- name: "imageExport" | "help" | "jsonExport";
1783
- } | {
1784
- name: "ttd";
1785
- tab: "mermaid" | "text-to-diagram";
1786
- } | {
1787
- name: "commandPalette";
1788
- } | {
1789
- name: "elementLinkSelector";
1790
- sourceElementId: string;
1791
- } | null;
1792
- defaultSidebarDockedPreference: boolean;
1793
- lastPointerDownWith: import("@excalidraw/element/types").PointerType;
1794
- selectedElementIds: Readonly<{
1795
- [id: string]: true;
1796
- }>;
1797
- hoveredElementIds: Readonly<{
1798
- [id: string]: true;
1799
- }>;
1800
- previousSelectedElementIds: {
1801
- [id: string]: true;
1802
- };
1803
- selectedElementsAreBeingDragged: boolean;
1804
- shouldCacheIgnoreZoom: boolean;
1805
- toast: {
1806
- message: string;
1807
- closable?: boolean | undefined;
1808
- duration?: number | undefined;
1809
- } | null;
1810
- zenModeEnabled: boolean;
1811
- gridSize: number;
1812
- gridStep: number;
1813
- gridModeEnabled: boolean;
1814
- viewModeEnabled: boolean;
1815
- selectedGroupIds: {
1816
- [groupId: string]: boolean;
1817
- };
1818
- editingGroupId: string | null;
1819
- width: number;
1820
- height: number;
1821
- offsetTop: number;
1822
- offsetLeft: number;
1823
- fileHandle: import("browser-fs-access").FileSystemHandle | null;
1824
- collaborators: Map<import("../types").SocketId, Readonly<{
1825
- pointer?: import("../types").CollaboratorPointer | undefined;
1826
- button?: "up" | "down" | undefined;
1827
- selectedElementIds?: Readonly<{
1828
- [id: string]: true;
1829
- }> | undefined;
1830
- username?: string | null | undefined;
1831
- userState?: import("@excalidraw/common").UserIdleState | undefined;
1832
- color?: {
1833
- background: string;
1834
- stroke: string;
1835
- } | undefined;
1836
- avatarUrl?: string | undefined;
1837
- id?: string | undefined;
1838
- socketId?: import("../types").SocketId | undefined;
1839
- isCurrentUser?: boolean | undefined;
1840
- isInCall?: boolean | undefined;
1841
- isSpeaking?: boolean | undefined;
1842
- isMuted?: boolean | undefined;
1843
- }>>;
1844
- stats: {
1845
- open: boolean;
1846
- panels: number;
1847
- };
1848
- currentChartType: import("@excalidraw/element/types").ChartType;
1849
- pasteDialog: {
1850
- shown: false;
1851
- data: null;
1852
- } | {
1853
- shown: true;
1854
- data: import("../charts").Spreadsheet;
1855
- };
1856
- showHyperlinkPopup: false | "editor" | "info";
1857
- selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
1858
- snapLines: readonly import("../snapping").SnapLine[];
1859
- originSnapOffset: {
1860
- x: number;
1861
- y: number;
1862
- } | null;
1863
- objectsSnapModeEnabled: boolean;
1864
- userToFollow: import("../types").UserToFollow | null;
1865
- followedBy: Set<import("../types").SocketId>;
1866
- isCropping: boolean;
1867
- croppingElementId: string | null;
1868
- searchMatches: Readonly<{
1869
- focusedId: string | null;
1870
- matches: readonly import("../types").SearchMatch[];
1871
- }> | null;
1872
- activeLockedId: string | null;
1873
- lockedMultiSelections: {
1874
- [groupId: string]: true;
1875
- };
1876
- };
1877
- captureUpdate: "EVENTUALLY";
1878
- };
1879
- keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
1880
- predicate: (elements: readonly ExcalidrawElement[], appState: AppState, props: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
1881
- } & {
1882
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
1883
- };
1884
- export declare const actionToggleEraserTool: {
1885
- name: "toggleEraserTool";
1886
- label: string;
1887
- trackEvent: {
1888
- category: "toolbar";
1889
- };
1890
- perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: any, app: import("../types").AppClassProperties) => {
1891
- appState: {
1892
- selectedElementIds: {};
1893
- selectedGroupIds: {};
1894
- activeEmbeddable: null;
1895
- activeTool: {
1896
- lastActiveTool: import("../types").ActiveTool | null;
1897
- locked: boolean;
1898
- fromSelection: boolean;
1899
- } & import("../types").ActiveTool;
1900
- contextMenu: {
1901
- items: import("../components/ContextMenu").ContextMenuItems;
1902
- top: number;
1903
- left: number;
1904
- } | null;
1905
- showWelcomeScreen: boolean;
1906
- isLoading: boolean;
1907
- errorMessage: import("react").ReactNode;
1908
- newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
1909
- resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1910
- multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
1911
- selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1912
- isBindingEnabled: boolean;
1913
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
1914
- suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
1915
- frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1916
- frameRendering: {
1917
- enabled: boolean;
1918
- name: boolean;
1919
- outline: boolean;
1920
- clip: boolean;
1921
- };
1922
- editingFrame: string | null;
1923
- elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
1924
- editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1925
- penMode: boolean;
1926
- penDetected: boolean;
1927
- exportBackground: boolean;
1928
- exportEmbedScene: boolean;
1929
- exportWithDarkMode: boolean;
1930
- exportScale: number;
1931
- currentItemStrokeColor: string;
1932
- currentItemBackgroundColor: string;
1933
- currentItemFillStyle: import("@excalidraw/element/types").FillStyle;
1934
- currentItemStrokeWidth: number;
1935
- currentItemStrokeStyle: import("@excalidraw/element/types").StrokeStyle;
1936
- currentItemRoughness: number;
1937
- currentItemOpacity: number;
1938
- currentItemFontFamily: number;
1939
- currentItemFontSize: number;
1940
- currentItemTextAlign: string;
1941
- currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1942
- currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1943
- currentHoveredFontFamily: number | null;
1944
- currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
1945
- currentItemArrowType: "round" | "sharp" | "elbow";
1946
- viewBackgroundColor: string;
1947
- scrollX: number;
1948
- scrollY: number;
1949
- cursorButton: "up" | "down";
1950
- scrolledOutside: boolean;
1951
- name: string | null;
1952
- isResizing: boolean;
1953
- isRotating: boolean;
1954
- zoom: Readonly<{
1955
- value: import("../types").NormalizedZoomValue;
1956
- }>;
1957
- openMenu: "canvas" | "shape" | null;
1958
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
1959
- openSidebar: {
1960
- name: string;
1961
- /** zoom content to cover X of the viewport, when fitToViewport=true */
1962
- tab?: string | undefined;
1963
- } | null;
1964
- openDialog: {
1965
- name: "imageExport" | "help" | "jsonExport";
1966
- } | {
1967
- name: "ttd";
1968
- tab: "mermaid" | "text-to-diagram";
1969
- } | {
1970
- name: "commandPalette";
1971
- } | {
1972
- name: "elementLinkSelector";
1973
- sourceElementId: string;
1974
- } | null;
1975
- defaultSidebarDockedPreference: boolean;
1976
- lastPointerDownWith: import("@excalidraw/element/types").PointerType;
1977
- hoveredElementIds: Readonly<{
1978
- [id: string]: true;
1979
- }>;
1980
- previousSelectedElementIds: {
1981
- [id: string]: true;
1982
- };
1983
- selectedElementsAreBeingDragged: boolean;
1984
- shouldCacheIgnoreZoom: boolean;
1985
- toast: {
1986
- message: string;
1987
- closable?: boolean | undefined;
1988
- duration?: number | undefined;
1989
- } | null;
1990
- zenModeEnabled: boolean;
1991
- theme: import("@excalidraw/element/types").Theme;
1992
- gridSize: number;
1993
- gridStep: number;
1994
- gridModeEnabled: boolean;
1995
- viewModeEnabled: boolean;
1996
- editingGroupId: string | null;
1997
- width: number;
1998
- height: number;
1999
- offsetTop: number;
2000
- offsetLeft: number;
2001
- fileHandle: import("browser-fs-access").FileSystemHandle | null;
2002
- collaborators: Map<import("../types").SocketId, Readonly<{
2003
- pointer?: import("../types").CollaboratorPointer | undefined;
2004
- button?: "up" | "down" | undefined;
2005
- selectedElementIds?: Readonly<{
2006
- [id: string]: true;
2007
- }> | undefined;
2008
- username?: string | null | undefined;
2009
- userState?: import("@excalidraw/common").UserIdleState | undefined;
2010
- color?: {
2011
- background: string;
2012
- stroke: string;
2013
- } | undefined;
2014
- avatarUrl?: string | undefined;
2015
- id?: string | undefined;
2016
- socketId?: import("../types").SocketId | undefined;
2017
- isCurrentUser?: boolean | undefined;
2018
- isInCall?: boolean | undefined;
2019
- isSpeaking?: boolean | undefined;
2020
- isMuted?: boolean | undefined;
2021
- }>>;
2022
- stats: {
2023
- open: boolean;
2024
- panels: number;
2025
- };
2026
- currentChartType: import("@excalidraw/element/types").ChartType;
2027
- pasteDialog: {
2028
- shown: false;
2029
- data: null;
2030
- } | {
2031
- shown: true;
2032
- data: import("../charts").Spreadsheet;
2033
- };
2034
- showHyperlinkPopup: false | "editor" | "info";
2035
- selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
2036
- snapLines: readonly import("../snapping").SnapLine[];
2037
- originSnapOffset: {
2038
- x: number;
2039
- y: number;
2040
- } | null;
2041
- objectsSnapModeEnabled: boolean;
2042
- userToFollow: import("../types").UserToFollow | null;
2043
- followedBy: Set<import("../types").SocketId>;
2044
- isCropping: boolean;
2045
- croppingElementId: string | null;
2046
- searchMatches: Readonly<{
2047
- focusedId: string | null;
2048
- matches: readonly import("../types").SearchMatch[];
2049
- }> | null;
2050
- activeLockedId: string | null;
2051
- lockedMultiSelections: {
2052
- [groupId: string]: true;
2053
- };
2054
- };
2055
- captureUpdate: "IMMEDIATELY";
2056
- };
2057
- keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
2058
- } & {
2059
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
2060
- };
2061
- export declare const actionToggleLassoTool: {
2062
- name: "toggleLassoTool";
2063
- label: string;
2064
- icon: import("react/jsx-runtime").JSX.Element;
2065
- trackEvent: {
2066
- category: "toolbar";
2067
- };
2068
- predicate: (elements: readonly ExcalidrawElement[], appState: AppState, props: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
2069
- perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: any, app: import("../types").AppClassProperties) => {
2070
- appState: {
2071
- selectedElementIds: {};
2072
- selectedGroupIds: {};
2073
- activeEmbeddable: null;
2074
- activeTool: {
2075
- lastActiveTool: import("../types").ActiveTool | null;
2076
- locked: boolean;
2077
- fromSelection: boolean;
2078
- } & import("../types").ActiveTool;
2079
- contextMenu: {
2080
- items: import("../components/ContextMenu").ContextMenuItems;
2081
- top: number;
2082
- left: number;
2083
- } | null;
2084
- showWelcomeScreen: boolean;
2085
- isLoading: boolean;
2086
- errorMessage: import("react").ReactNode;
2087
- newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
2088
- resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
2089
- multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
2090
- selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
2091
- isBindingEnabled: boolean;
2092
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
2093
- suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
2094
- frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
2095
- frameRendering: {
2096
- enabled: boolean;
2097
- name: boolean;
2098
- outline: boolean;
2099
- clip: boolean;
2100
- };
2101
- editingFrame: string | null;
2102
- elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
2103
- editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
2104
- penMode: boolean;
2105
- penDetected: boolean;
2106
- exportBackground: boolean;
2107
- exportEmbedScene: boolean;
2108
- exportWithDarkMode: boolean;
2109
- exportScale: number;
2110
- currentItemStrokeColor: string;
2111
- currentItemBackgroundColor: string;
2112
- currentItemFillStyle: import("@excalidraw/element/types").FillStyle;
2113
- currentItemStrokeWidth: number;
2114
- currentItemStrokeStyle: import("@excalidraw/element/types").StrokeStyle;
2115
- currentItemRoughness: number;
2116
- currentItemOpacity: number;
2117
- currentItemFontFamily: number;
2118
- currentItemFontSize: number;
2119
- currentItemTextAlign: string;
2120
- currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
2121
- currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
2122
- currentHoveredFontFamily: number | null;
2123
- currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
2124
- currentItemArrowType: "round" | "sharp" | "elbow";
2125
- viewBackgroundColor: string;
2126
- scrollX: number;
2127
- scrollY: number;
2128
- cursorButton: "up" | "down";
2129
- scrolledOutside: boolean;
2130
- name: string | null;
2131
- isResizing: boolean;
2132
- isRotating: boolean;
2133
- zoom: Readonly<{
2134
- value: import("../types").NormalizedZoomValue;
2135
- }>;
2136
- openMenu: "canvas" | "shape" | null;
2137
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
2138
- openSidebar: {
2139
- name: string;
2140
- /** zoom content to cover X of the viewport, when fitToViewport=true */
2141
- tab?: string | undefined;
2142
- } | null;
2143
- openDialog: {
2144
- name: "imageExport" | "help" | "jsonExport";
2145
- } | {
2146
- name: "ttd";
2147
- tab: "mermaid" | "text-to-diagram";
2148
- } | {
2149
- name: "commandPalette";
2150
- } | {
2151
- name: "elementLinkSelector";
2152
- sourceElementId: string;
2153
- } | null;
2154
- defaultSidebarDockedPreference: boolean;
2155
- lastPointerDownWith: import("@excalidraw/element/types").PointerType;
2156
- hoveredElementIds: Readonly<{
2157
- [id: string]: true;
2158
- }>;
2159
- previousSelectedElementIds: {
2160
- [id: string]: true;
2161
- };
2162
- selectedElementsAreBeingDragged: boolean;
2163
- shouldCacheIgnoreZoom: boolean;
2164
- toast: {
2165
- message: string;
2166
- closable?: boolean | undefined;
2167
- duration?: number | undefined;
2168
- } | null;
2169
- zenModeEnabled: boolean;
2170
- theme: import("@excalidraw/element/types").Theme;
2171
- gridSize: number;
2172
- gridStep: number;
2173
- gridModeEnabled: boolean;
2174
- viewModeEnabled: boolean;
2175
- editingGroupId: string | null;
2176
- width: number;
2177
- height: number;
2178
- offsetTop: number;
2179
- offsetLeft: number;
2180
- fileHandle: import("browser-fs-access").FileSystemHandle | null;
2181
- collaborators: Map<import("../types").SocketId, Readonly<{
2182
- pointer?: import("../types").CollaboratorPointer | undefined;
2183
- button?: "up" | "down" | undefined;
2184
- selectedElementIds?: Readonly<{
2185
- [id: string]: true;
2186
- }> | undefined;
2187
- username?: string | null | undefined;
2188
- userState?: import("@excalidraw/common").UserIdleState | undefined;
2189
- color?: {
2190
- background: string;
2191
- stroke: string;
2192
- } | undefined;
2193
- avatarUrl?: string | undefined;
2194
- id?: string | undefined;
2195
- socketId?: import("../types").SocketId | undefined;
2196
- isCurrentUser?: boolean | undefined;
2197
- isInCall?: boolean | undefined;
2198
- isSpeaking?: boolean | undefined;
2199
- isMuted?: boolean | undefined;
2200
- }>>;
2201
- stats: {
2202
- open: boolean;
2203
- panels: number;
2204
- };
2205
- currentChartType: import("@excalidraw/element/types").ChartType;
2206
- pasteDialog: {
2207
- shown: false;
2208
- data: null;
2209
- } | {
2210
- shown: true;
2211
- data: import("../charts").Spreadsheet;
2212
- };
2213
- showHyperlinkPopup: false | "editor" | "info";
2214
- selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
2215
- snapLines: readonly import("../snapping").SnapLine[];
2216
- originSnapOffset: {
2217
- x: number;
2218
- y: number;
2219
- } | null;
2220
- objectsSnapModeEnabled: boolean;
2221
- userToFollow: import("../types").UserToFollow | null;
2222
- followedBy: Set<import("../types").SocketId>;
2223
- isCropping: boolean;
2224
- croppingElementId: string | null;
2225
- searchMatches: Readonly<{
2226
- focusedId: string | null;
2227
- matches: readonly import("../types").SearchMatch[];
2228
- }> | null;
2229
- activeLockedId: string | null;
2230
- lockedMultiSelections: {
2231
- [groupId: string]: true;
2232
- };
2233
- };
2234
- captureUpdate: "NEVER";
2235
- };
2236
- } & {
2237
- keyTest?: undefined;
2238
- };
2239
- export declare const actionToggleHandTool: {
2240
- name: "toggleHandTool";
2241
- label: string;
2242
- trackEvent: {
2243
- category: "toolbar";
2244
- };
2245
- icon: import("react/jsx-runtime").JSX.Element;
2246
- viewMode: false;
2247
- perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: any, app: import("../types").AppClassProperties) => {
2248
- appState: {
2249
- selectedElementIds: {};
2250
- selectedGroupIds: {};
2251
- activeEmbeddable: null;
2252
- activeTool: {
2253
- lastActiveTool: import("../types").ActiveTool | null;
2254
- locked: boolean;
2255
- fromSelection: boolean;
2256
- } & import("../types").ActiveTool;
2257
- contextMenu: {
2258
- items: import("../components/ContextMenu").ContextMenuItems;
2259
- top: number;
2260
- left: number;
2261
- } | null;
2262
- showWelcomeScreen: boolean;
2263
- isLoading: boolean;
2264
- errorMessage: import("react").ReactNode;
2265
- newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
2266
- resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
2267
- multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
2268
- selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
2269
- isBindingEnabled: boolean;
2270
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
2271
- suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
2272
- frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
2273
- frameRendering: {
2274
- enabled: boolean;
2275
- name: boolean;
2276
- outline: boolean;
2277
- clip: boolean;
2278
- };
2279
- editingFrame: string | null;
2280
- elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
2281
- editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
2282
- penMode: boolean;
2283
- penDetected: boolean;
2284
- exportBackground: boolean;
2285
- exportEmbedScene: boolean;
2286
- exportWithDarkMode: boolean;
2287
- exportScale: number;
2288
- currentItemStrokeColor: string;
2289
- currentItemBackgroundColor: string;
2290
- currentItemFillStyle: import("@excalidraw/element/types").FillStyle;
2291
- currentItemStrokeWidth: number;
2292
- currentItemStrokeStyle: import("@excalidraw/element/types").StrokeStyle;
2293
- currentItemRoughness: number;
2294
- currentItemOpacity: number;
2295
- currentItemFontFamily: number;
2296
- currentItemFontSize: number;
2297
- currentItemTextAlign: string;
2298
- currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
2299
- currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
2300
- currentHoveredFontFamily: number | null;
2301
- currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
2302
- currentItemArrowType: "round" | "sharp" | "elbow";
2303
- viewBackgroundColor: string;
2304
- scrollX: number;
2305
- scrollY: number;
2306
- cursorButton: "up" | "down";
2307
- scrolledOutside: boolean;
2308
- name: string | null;
2309
- isResizing: boolean;
2310
- isRotating: boolean;
2311
- zoom: Readonly<{
2312
- value: import("../types").NormalizedZoomValue;
2313
- }>;
2314
- openMenu: "canvas" | "shape" | null;
2315
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
2316
- openSidebar: {
2317
- name: string;
2318
- /** zoom content to cover X of the viewport, when fitToViewport=true */
2319
- tab?: string | undefined;
2320
- } | null;
2321
- openDialog: {
2322
- name: "imageExport" | "help" | "jsonExport";
2323
- } | {
2324
- name: "ttd";
2325
- tab: "mermaid" | "text-to-diagram";
2326
- } | {
2327
- name: "commandPalette";
2328
- } | {
2329
- name: "elementLinkSelector";
2330
- sourceElementId: string;
2331
- } | null;
2332
- defaultSidebarDockedPreference: boolean;
2333
- lastPointerDownWith: import("@excalidraw/element/types").PointerType;
2334
- hoveredElementIds: Readonly<{
2335
- [id: string]: true;
2336
- }>;
2337
- previousSelectedElementIds: {
2338
- [id: string]: true;
2339
- };
2340
- selectedElementsAreBeingDragged: boolean;
2341
- shouldCacheIgnoreZoom: boolean;
2342
- toast: {
2343
- message: string;
2344
- closable?: boolean | undefined;
2345
- duration?: number | undefined;
2346
- } | null;
2347
- zenModeEnabled: boolean;
2348
- theme: import("@excalidraw/element/types").Theme;
2349
- gridSize: number;
2350
- gridStep: number;
2351
- gridModeEnabled: boolean;
2352
- viewModeEnabled: boolean;
2353
- editingGroupId: string | null;
2354
- width: number;
2355
- height: number;
2356
- offsetTop: number;
2357
- offsetLeft: number;
2358
- fileHandle: import("browser-fs-access").FileSystemHandle | null;
2359
- collaborators: Map<import("../types").SocketId, Readonly<{
2360
- pointer?: import("../types").CollaboratorPointer | undefined;
2361
- button?: "up" | "down" | undefined;
2362
- selectedElementIds?: Readonly<{
2363
- [id: string]: true;
2364
- }> | undefined;
2365
- username?: string | null | undefined;
2366
- userState?: import("@excalidraw/common").UserIdleState | undefined;
2367
- color?: {
2368
- background: string;
2369
- stroke: string;
2370
- } | undefined;
2371
- avatarUrl?: string | undefined;
2372
- id?: string | undefined;
2373
- socketId?: import("../types").SocketId | undefined;
2374
- isCurrentUser?: boolean | undefined;
2375
- isInCall?: boolean | undefined;
2376
- isSpeaking?: boolean | undefined;
2377
- isMuted?: boolean | undefined;
2378
- }>>;
2379
- stats: {
2380
- open: boolean;
2381
- panels: number;
2382
- };
2383
- currentChartType: import("@excalidraw/element/types").ChartType;
2384
- pasteDialog: {
2385
- shown: false;
2386
- data: null;
2387
- } | {
2388
- shown: true;
2389
- data: import("../charts").Spreadsheet;
2390
- };
2391
- showHyperlinkPopup: false | "editor" | "info";
2392
- selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
2393
- snapLines: readonly import("../snapping").SnapLine[];
2394
- originSnapOffset: {
2395
- x: number;
2396
- y: number;
2397
- } | null;
2398
- objectsSnapModeEnabled: boolean;
2399
- userToFollow: import("../types").UserToFollow | null;
2400
- followedBy: Set<import("../types").SocketId>;
2401
- isCropping: boolean;
2402
- croppingElementId: string | null;
2403
- searchMatches: Readonly<{
2404
- focusedId: string | null;
2405
- matches: readonly import("../types").SearchMatch[];
2406
- }> | null;
2407
- activeLockedId: string | null;
2408
- lockedMultiSelections: {
2409
- [groupId: string]: true;
2410
- };
2411
- };
2412
- captureUpdate: "IMMEDIATELY";
2413
- };
2414
- keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
2415
- } & {
2416
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
1382
+ export declare const actionToggleTheme: import("./types").Action<import("@excalidraw/element/types").Theme> & {
1383
+ keyTest?: ((event: React.KeyboardEvent | KeyboardEvent, appState: AppState, elements: readonly import("@excalidraw/element/types").ExcalidrawElement[], app: import("../types").AppClassProperties) => boolean) | undefined;
2417
1384
  };