@excalidraw/math 0.18.0-4e471c107 → 0.18.0-4f68076

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 (370) 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 +104 -33
  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 +18 -10
  19. package/dist/types/element/src/align.d.ts +3 -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 +26 -19
  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/delta.d.ts +39 -5
  31. package/dist/types/element/src/distribute.d.ts +4 -2
  32. package/dist/types/element/src/dragElements.d.ts +30 -3
  33. package/dist/types/element/src/duplicate.d.ts +67 -6
  34. package/dist/types/element/src/elbowArrow.d.ts +2 -0
  35. package/dist/types/element/src/embeddable.d.ts +2 -2
  36. package/dist/types/element/src/flowchart.d.ts +11 -7
  37. package/dist/types/element/src/fractionalIndex.d.ts +4 -4
  38. package/dist/types/element/src/frame.d.ts +16 -11
  39. package/dist/types/element/src/groups.d.ts +9 -8
  40. package/dist/types/element/src/heading.d.ts +2 -1
  41. package/dist/types/element/src/image.d.ts +1 -11
  42. package/dist/types/element/src/index.d.ts +11 -4
  43. package/dist/types/element/src/linearElementEditor.d.ts +50 -31
  44. package/dist/types/element/src/listMarker.d.ts +34 -0
  45. package/dist/types/element/src/mutateElement.d.ts +6 -2
  46. package/dist/types/element/src/newElement.d.ts +59 -9
  47. package/dist/types/element/src/positionElementsOnGrid.d.ts +2 -0
  48. package/dist/types/element/src/renderElement.d.ts +23 -12
  49. package/dist/types/element/src/resizeElements.d.ts +12 -12
  50. package/dist/types/element/src/resizeTest.d.ts +6 -5
  51. package/dist/types/element/src/selection.d.ts +14 -14
  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/store.d.ts +6 -1
  57. package/dist/types/element/src/textElement.d.ts +22 -11
  58. package/dist/types/element/src/textMeasurements.d.ts +1 -3
  59. package/dist/types/element/src/textWrapping.d.ts +26 -0
  60. package/dist/types/{excalidraw/data → element/src}/transform.d.ts +27 -8
  61. package/dist/types/element/src/transformHandles.d.ts +8 -27
  62. package/dist/types/element/src/typeChecks.d.ts +30 -31
  63. package/dist/types/element/src/types.d.ts +55 -20
  64. package/dist/types/element/src/utils.d.ts +22 -6
  65. package/dist/types/element/src/zindex.d.ts +7 -1
  66. package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +248 -222
  67. package/dist/types/excalidraw/actions/actionAlign.d.ts +12 -13
  68. package/dist/types/excalidraw/actions/actionBoundText.d.ts +150 -133
  69. package/dist/types/excalidraw/actions/actionCanvas.d.ts +543 -1575
  70. package/dist/types/excalidraw/actions/actionClipboard.d.ts +177 -904
  71. package/dist/types/excalidraw/actions/actionCropEditor.d.ts +73 -65
  72. package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +237 -214
  73. package/dist/types/excalidraw/actions/actionDeselect.d.ts +182 -0
  74. package/dist/types/excalidraw/actions/actionDistribute.d.ts +4 -6
  75. package/dist/types/excalidraw/actions/actionDuplicateSelection.d.ts +3 -4
  76. package/dist/types/excalidraw/actions/actionElementLink.d.ts +80 -78
  77. package/dist/types/excalidraw/actions/actionElementLock.d.ts +149 -132
  78. package/dist/types/excalidraw/actions/actionExport.d.ts +228 -1423
  79. package/dist/types/excalidraw/actions/actionFinalize.d.ts +11 -395
  80. package/dist/types/excalidraw/actions/actionFlip.d.ts +2 -3
  81. package/dist/types/excalidraw/actions/actionFrame.d.ts +359 -507
  82. package/dist/types/excalidraw/actions/actionGroup.d.ts +160 -151
  83. package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +244 -191
  84. package/dist/types/excalidraw/actions/actionLink.d.ts +86 -78
  85. package/dist/types/excalidraw/actions/actionMenu.d.ts +75 -441
  86. package/dist/types/excalidraw/actions/actionNavigate.d.ts +18 -361
  87. package/dist/types/excalidraw/actions/actionProperties.d.ts +238 -2548
  88. package/dist/types/excalidraw/actions/actionSelectAll.d.ts +80 -76
  89. package/dist/types/excalidraw/actions/actionStyles.d.ts +74 -65
  90. package/dist/types/excalidraw/actions/actionTextAutoResize.d.ts +4 -4
  91. package/dist/types/excalidraw/actions/actionToggleArrowBinding.d.ts +195 -0
  92. package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +88 -81
  93. package/dist/types/excalidraw/actions/actionToggleMidpointSnapping.d.ts +195 -0
  94. package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +87 -79
  95. package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +76 -75
  96. package/dist/types/excalidraw/actions/actionToggleShapeSwitch.d.ts +2 -2
  97. package/dist/types/excalidraw/actions/actionToggleShowHints.d.ts +197 -0
  98. package/dist/types/excalidraw/actions/actionToggleStats.d.ts +86 -78
  99. package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +87 -79
  100. package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +87 -79
  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 +6 -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 +57 -26
  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 +57 -19
  119. package/dist/types/excalidraw/components/Actions.d.ts +32 -14
  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 +404 -155
  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.selectionTool.d.ts +57 -0
  132. package/dist/types/excalidraw/components/App.text.d.ts +146 -0
  133. package/dist/types/excalidraw/components/App.textTool.d.ts +140 -0
  134. package/dist/types/excalidraw/components/App.toolDrag.d.ts +63 -0
  135. package/dist/types/excalidraw/components/App.viewport.d.ts +113 -0
  136. package/dist/types/excalidraw/components/App.wheel.d.ts +26 -0
  137. package/dist/types/excalidraw/components/AppStateObserver.d.ts +37 -0
  138. package/dist/types/excalidraw/components/Card.d.ts +1 -3
  139. package/dist/types/excalidraw/components/ColorPicker/ColorInput.d.ts +2 -4
  140. package/dist/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +9 -4
  141. package/dist/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +3 -1
  142. package/dist/types/excalidraw/components/ColorPicker/Picker.d.ts +7 -1
  143. package/dist/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +10 -2
  144. package/dist/types/excalidraw/components/ColorPicker/ShadeList.d.ts +5 -2
  145. package/dist/types/excalidraw/components/ColorPicker/TopPicks.d.ts +8 -1
  146. package/dist/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +1 -2
  147. package/dist/types/excalidraw/components/ColorPicker/colorTopPicksDnD.d.ts +11 -0
  148. package/dist/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +2 -2
  149. package/dist/types/excalidraw/components/CommandPalette/CommandPalette.d.ts +1 -0
  150. package/dist/types/excalidraw/components/CommandPalette/defaultCommandPaletteItems.d.ts +1 -2
  151. package/dist/types/excalidraw/components/CommandPalette/types.d.ts +2 -4
  152. package/dist/types/excalidraw/components/ConvertElementTypePopup.d.ts +4 -4
  153. package/dist/types/excalidraw/components/CursorHint.d.ts +46 -0
  154. package/dist/types/excalidraw/components/DarkModeToggle.d.ts +1 -1
  155. package/dist/types/excalidraw/components/DefaultSidebar.d.ts +9 -13
  156. package/dist/types/excalidraw/components/ElementLinkDialog.d.ts +1 -1
  157. package/dist/types/excalidraw/components/Ellipsify.d.ts +3 -0
  158. package/dist/types/excalidraw/components/ErrorDialog.d.ts +1 -1
  159. package/dist/types/excalidraw/components/EyeDropper.d.ts +1 -2
  160. package/dist/types/excalidraw/components/FileDropOverlay.d.ts +2 -0
  161. package/dist/types/excalidraw/components/FilledButton.d.ts +2 -1
  162. package/dist/types/excalidraw/components/FontPicker/FontPicker.d.ts +5 -1
  163. package/dist/types/excalidraw/components/FontPicker/FontPickerList.d.ts +6 -1
  164. package/dist/types/excalidraw/components/FontPicker/FontPickerTrigger.d.ts +3 -1
  165. package/dist/types/excalidraw/components/FontPicker/fontTopPicksDnD.d.ts +12 -0
  166. package/dist/types/excalidraw/components/FontPicker/keyboardNavHandlers.d.ts +0 -1
  167. package/dist/types/excalidraw/components/HelpDialog.d.ts +1 -1
  168. package/dist/types/excalidraw/components/HintViewer.d.ts +4 -3
  169. package/dist/types/excalidraw/components/IconButton.d.ts +48 -0
  170. package/dist/types/excalidraw/components/IconPicker.d.ts +14 -9
  171. package/dist/types/excalidraw/components/InlineIcon.d.ts +3 -1
  172. package/dist/types/excalidraw/components/Island.d.ts +7 -0
  173. package/dist/types/excalidraw/components/LaserPointerButton.d.ts +2 -4
  174. package/dist/types/excalidraw/components/LayerUI.d.ts +6 -2
  175. package/dist/types/excalidraw/components/LibraryMenu.d.ts +1 -1
  176. package/dist/types/excalidraw/components/LibraryMenuControlButtons.d.ts +1 -1
  177. package/dist/types/excalidraw/components/LibraryMenuHeaderContent.d.ts +1 -2
  178. package/dist/types/excalidraw/components/LibraryMenuSection.d.ts +7 -3
  179. package/dist/types/excalidraw/components/LibraryUnit.d.ts +9 -5
  180. package/dist/types/excalidraw/components/LoadingMessage.d.ts +0 -1
  181. package/dist/types/excalidraw/components/LockButton.d.ts +3 -4
  182. package/dist/types/excalidraw/components/MagicButton.d.ts +0 -2
  183. package/dist/types/excalidraw/components/MobileMenu.d.ts +5 -7
  184. package/dist/types/excalidraw/components/MobileToolbar.d.ts +9 -0
  185. package/dist/types/excalidraw/components/Modal.d.ts +0 -1
  186. package/dist/types/excalidraw/components/OverwriteConfirm/OverwriteConfirm.d.ts +1 -1
  187. package/dist/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmState.d.ts +1 -1
  188. package/dist/types/excalidraw/components/PasteChartDialog.d.ts +4 -5
  189. package/dist/types/excalidraw/components/PenModeButton.d.ts +2 -5
  190. package/dist/types/excalidraw/components/Popover.d.ts +2 -3
  191. package/dist/types/excalidraw/components/PropertiesPopover.d.ts +2 -1
  192. package/dist/types/excalidraw/components/{ButtonIcon.d.ts → RadioButton.d.ts} +2 -5
  193. package/dist/types/excalidraw/components/RadioGroup.d.ts +0 -1
  194. package/dist/types/excalidraw/components/RadioSelection.d.ts +4 -4
  195. package/dist/types/excalidraw/components/Range.d.ts +10 -4
  196. package/dist/types/excalidraw/components/SVGLayer.d.ts +1 -1
  197. package/dist/types/excalidraw/components/ScrollableList.d.ts +0 -1
  198. package/dist/types/excalidraw/components/SearchMenu.d.ts +1 -1
  199. package/dist/types/excalidraw/components/Sidebar/Sidebar.d.ts +16 -22
  200. package/dist/types/excalidraw/components/Sidebar/SidebarHeader.d.ts +1 -1
  201. package/dist/types/excalidraw/components/Sidebar/SidebarTab.d.ts +1 -2
  202. package/dist/types/excalidraw/components/Sidebar/SidebarTabTrigger.d.ts +1 -2
  203. package/dist/types/excalidraw/components/Sidebar/SidebarTabTriggers.d.ts +1 -2
  204. package/dist/types/excalidraw/components/Sidebar/SidebarTabs.d.ts +1 -2
  205. package/dist/types/excalidraw/components/Spinner.d.ts +4 -4
  206. package/dist/types/excalidraw/components/Stats/Angle.d.ts +2 -2
  207. package/dist/types/excalidraw/components/Stats/CanvasGrid.d.ts +0 -1
  208. package/dist/types/excalidraw/components/Stats/Collapsible.d.ts +0 -1
  209. package/dist/types/excalidraw/components/Stats/Dimension.d.ts +2 -2
  210. package/dist/types/excalidraw/components/Stats/DragInput.d.ts +2 -3
  211. package/dist/types/excalidraw/components/Stats/MultiAngle.d.ts +2 -2
  212. package/dist/types/excalidraw/components/Stats/MultiDimension.d.ts +2 -2
  213. package/dist/types/excalidraw/components/Stats/MultiPosition.d.ts +2 -2
  214. package/dist/types/excalidraw/components/Stats/Position.d.ts +3 -3
  215. package/dist/types/excalidraw/components/Stats/index.d.ts +7 -8
  216. package/dist/types/excalidraw/components/Stats/utils.d.ts +1 -1
  217. package/dist/types/excalidraw/components/TTDDialog/Chat/ChatHistoryMenu.d.ts +15 -0
  218. package/dist/types/excalidraw/components/TTDDialog/Chat/ChatInterface.d.ts +23 -0
  219. package/dist/types/excalidraw/components/TTDDialog/Chat/ChatMessage.d.ts +14 -0
  220. package/dist/types/excalidraw/components/TTDDialog/Chat/TTDChatPanel.d.ts +27 -0
  221. package/dist/types/excalidraw/components/TTDDialog/Chat/index.d.ts +3 -0
  222. package/dist/types/excalidraw/components/TTDDialog/Chat/useChatAgent.d.ts +8 -0
  223. package/dist/types/excalidraw/components/TTDDialog/CodeMirrorEditor.d.ts +11 -0
  224. package/dist/types/excalidraw/components/TTDDialog/MermaidToExcalidraw.d.ts +3 -2
  225. package/dist/types/excalidraw/components/TTDDialog/TTDContext.d.ts +13 -0
  226. package/dist/types/excalidraw/components/TTDDialog/TTDDialog.d.ts +12 -29
  227. package/dist/types/excalidraw/components/TTDDialog/TTDDialogInput.d.ts +3 -3
  228. package/dist/types/excalidraw/components/TTDDialog/TTDDialogOutput.d.ts +5 -2
  229. package/dist/types/excalidraw/components/TTDDialog/TTDDialogPanel.d.ts +13 -9
  230. package/dist/types/excalidraw/components/TTDDialog/TTDDialogTab.d.ts +1 -2
  231. package/dist/types/excalidraw/components/TTDDialog/TTDDialogTabTrigger.d.ts +1 -2
  232. package/dist/types/excalidraw/components/TTDDialog/TTDDialogTabTriggers.d.ts +1 -2
  233. package/dist/types/excalidraw/components/TTDDialog/TTDPreviewPanel.d.ts +9 -0
  234. package/dist/types/excalidraw/components/TTDDialog/TTDWelcomeMessage.d.ts +1 -0
  235. package/dist/types/excalidraw/components/TTDDialog/TextToDiagram.d.ts +9 -0
  236. package/dist/types/excalidraw/components/TTDDialog/common.d.ts +16 -16
  237. package/dist/types/excalidraw/components/TTDDialog/hooks/useChatManagement.d.ts +13 -0
  238. package/dist/types/excalidraw/components/TTDDialog/hooks/useMermaidRenderer.d.ts +14 -0
  239. package/dist/types/excalidraw/components/TTDDialog/hooks/useTextGeneration.d.ts +7 -0
  240. package/dist/types/excalidraw/components/TTDDialog/mermaid-lang-lite.d.ts +2 -0
  241. package/dist/types/excalidraw/components/TTDDialog/types.d.ts +95 -0
  242. package/dist/types/excalidraw/components/TTDDialog/useTTDChatStorage.d.ts +22 -0
  243. package/dist/types/excalidraw/components/TTDDialog/utils/chat.d.ts +10 -0
  244. package/dist/types/excalidraw/components/TTDDialog/utils/mermaidAutoFix.d.ts +1 -0
  245. package/dist/types/excalidraw/components/TTDDialog/utils/mermaidError.d.ts +10 -0
  246. package/dist/types/excalidraw/components/TTDDialog/utils/mermaidValidation.d.ts +1 -0
  247. package/dist/types/excalidraw/components/TextField.d.ts +1 -0
  248. package/dist/types/excalidraw/components/Toast.d.ts +11 -7
  249. package/dist/types/excalidraw/components/ToolPopover.d.ts +22 -0
  250. package/dist/types/excalidraw/components/Toolbar.d.ts +11 -0
  251. package/dist/types/excalidraw/components/Tools.d.ts +151 -0
  252. package/dist/types/excalidraw/components/Tooltip.d.ts +15 -1
  253. package/dist/types/excalidraw/components/TopPicksDnD/TopPicksContextMenu.d.ts +14 -0
  254. package/dist/types/excalidraw/components/TopPicksDnD/TopPicksTip.d.ts +11 -0
  255. package/dist/types/excalidraw/components/TopPicksDnD/topPicksDnD.d.ts +58 -0
  256. package/dist/types/excalidraw/components/Trans.d.ts +2 -2
  257. package/dist/types/excalidraw/components/UserList.d.ts +3 -2
  258. package/dist/types/excalidraw/components/ViewportStatusFrame/ViewportStatusFrame.d.ts +11 -0
  259. package/dist/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +10 -4
  260. package/dist/types/excalidraw/components/canvases/NewElementCanvas.d.ts +3 -0
  261. package/dist/types/excalidraw/components/canvases/StaticCanvas.d.ts +1 -1
  262. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenu.d.ts +47 -35
  263. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuContent.d.ts +7 -5
  264. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuGroup.d.ts +3 -3
  265. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItem.d.ts +13 -22
  266. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemCheckbox.d.ts +5 -0
  267. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContent.d.ts +5 -4
  268. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContentRadio.d.ts +2 -2
  269. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemCustom.d.ts +2 -2
  270. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemLink.d.ts +6 -6
  271. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuSub.d.ts +23 -0
  272. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuSubContent.d.ts +8 -0
  273. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuSubTrigger.d.ts +12 -0
  274. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuTrigger.d.ts +3 -4
  275. package/dist/types/excalidraw/components/dropdownMenu/common.d.ts +2 -2
  276. package/dist/types/excalidraw/components/dropdownMenu/dropdownMenuUtils.d.ts +2 -0
  277. package/dist/types/excalidraw/components/footer/Footer.d.ts +3 -1
  278. package/dist/types/excalidraw/components/hoc/withInternalFallback.d.ts +1 -1
  279. package/dist/types/excalidraw/components/hyperlink/helpers.d.ts +3 -3
  280. package/dist/types/excalidraw/components/icons.d.ts +56 -22
  281. package/dist/types/excalidraw/components/main-menu/DefaultItems.d.ts +26 -3
  282. package/dist/types/excalidraw/components/main-menu/MainMenu.d.ts +39 -35
  283. package/dist/types/excalidraw/components/positionElementBesideCursor.d.ts +26 -0
  284. package/dist/types/excalidraw/components/shapeActionPredicates.d.ts +39 -0
  285. package/dist/types/excalidraw/data/blob.d.ts +373 -12
  286. package/dist/types/excalidraw/data/encode.d.ts +4 -4
  287. package/dist/types/excalidraw/data/encryption.d.ts +5 -5
  288. package/dist/types/excalidraw/data/filesystem.d.ts +5 -7
  289. package/dist/types/excalidraw/data/index.d.ts +8 -9
  290. package/dist/types/excalidraw/data/json.d.ts +192 -3
  291. package/dist/types/excalidraw/data/library.d.ts +25 -10
  292. package/dist/types/excalidraw/data/resave.d.ts +7 -2
  293. package/dist/types/excalidraw/data/restore.d.ts +27 -7
  294. package/dist/types/excalidraw/data/types.d.ts +4 -1
  295. package/dist/types/excalidraw/drawShapeTrail.d.ts +16 -0
  296. package/dist/types/excalidraw/editor-jotai.d.ts +11 -11
  297. package/dist/types/excalidraw/eraser/index.d.ts +2 -3
  298. package/dist/types/excalidraw/errors.d.ts +14 -0
  299. package/dist/types/excalidraw/fonts/Fonts.d.ts +3 -2
  300. package/dist/types/excalidraw/hooks/useAppStateValue.d.ts +29 -0
  301. package/dist/types/excalidraw/hooks/useLibraryItemSvg.d.ts +2 -2
  302. package/dist/types/excalidraw/hooks/useOutsideClick.d.ts +4 -3
  303. package/dist/types/excalidraw/hooks/useScrollPosition.d.ts +1 -2
  304. package/dist/types/excalidraw/hooks/useTextEditorFocus.d.ts +14 -0
  305. package/dist/types/excalidraw/i18n.d.ts +2 -2
  306. package/dist/types/excalidraw/{laser-trails.d.ts → laserTrails.d.ts} +5 -7
  307. package/dist/types/excalidraw/lasso/index.d.ts +2 -3
  308. package/dist/types/excalidraw/lasso/utils.d.ts +2 -0
  309. package/dist/types/excalidraw/renderOverrides.d.ts +9 -0
  310. package/dist/types/excalidraw/renderer/animation.d.ts +16 -0
  311. package/dist/types/excalidraw/renderer/helpers.d.ts +31 -8
  312. package/dist/types/excalidraw/renderer/interactiveScene.d.ts +7 -15
  313. package/dist/types/excalidraw/renderer/staticScene.d.ts +4 -1
  314. package/dist/types/excalidraw/scene/Renderer.d.ts +491 -19
  315. package/dist/types/excalidraw/scene/export.d.ts +4 -4
  316. package/dist/types/excalidraw/scene/index.d.ts +2 -2
  317. package/dist/types/excalidraw/scene/types.d.ts +28 -8
  318. package/dist/types/excalidraw/shortcut.d.ts +1 -0
  319. package/dist/types/excalidraw/snapping.d.ts +12 -12
  320. package/dist/types/excalidraw/subset/harfbuzz/harfbuzz-bindings.d.ts +1 -1
  321. package/dist/types/excalidraw/subset/harfbuzz/harfbuzz-loader.d.ts +1 -1
  322. package/dist/types/excalidraw/subset/harfbuzz/harfbuzz-wasm.d.ts +1 -1
  323. package/dist/types/excalidraw/subset/woff2/woff2-loader.d.ts +2 -2
  324. package/dist/types/excalidraw/subset/woff2/woff2-wasm.d.ts +1 -1
  325. package/dist/types/excalidraw/textAutoResizeHandle.d.ts +15 -0
  326. package/dist/types/excalidraw/types.d.ts +658 -64
  327. package/dist/types/excalidraw/viewport.d.ts +302 -0
  328. package/dist/types/excalidraw/wysiwyg/textWysiwyg.d.ts +19 -5
  329. package/dist/types/fractional-indexing/src/index.d.ts +29 -0
  330. package/dist/types/laser-pointer/src/index.d.ts +2 -0
  331. package/dist/types/laser-pointer/src/math.d.ts +16 -0
  332. package/dist/types/laser-pointer/src/simplify.d.ts +2 -0
  333. package/dist/types/laser-pointer/src/state.d.ts +36 -0
  334. package/dist/types/math/src/constants.d.ts +0 -1
  335. package/dist/types/math/src/curve.d.ts +23 -13
  336. package/dist/types/math/src/index.d.ts +1 -0
  337. package/dist/types/math/src/pca.d.ts +79 -0
  338. package/dist/types/math/src/point.d.ts +8 -2
  339. package/dist/types/math/src/polygon.d.ts +26 -2
  340. package/dist/types/math/src/range.d.ts +1 -3
  341. package/dist/types/math/src/segment.d.ts +10 -3
  342. package/dist/types/math/src/types.d.ts +25 -1
  343. package/dist/types/utils/src/export.d.ts +9 -8
  344. package/dist/types/utils/src/index.d.ts +1 -2
  345. package/dist/types/utils/src/shape.d.ts +8 -8
  346. package/package.json +2 -2
  347. package/dist/types/excalidraw/actions/actionEmbeddable.d.ts +0 -186
  348. package/dist/types/excalidraw/animation-frame-handler.d.ts +0 -16
  349. package/dist/types/excalidraw/charts.d.ts +0 -27
  350. package/dist/types/excalidraw/components/DiagramToCodePlugin/DiagramToCodePlugin.d.ts +0 -4
  351. package/dist/types/excalidraw/components/ExcalidrawLogo.d.ts +0 -16
  352. package/dist/types/excalidraw/components/FollowMode/FollowMode.d.ts +0 -10
  353. package/dist/types/excalidraw/components/HandButton.d.ts +0 -10
  354. package/dist/types/excalidraw/components/InitializeApp.d.ts +0 -10
  355. package/dist/types/excalidraw/components/TTDDialog/TTDDialogTrigger.d.ts +0 -9
  356. package/dist/types/excalidraw/components/ToolButton.d.ts +0 -49
  357. package/dist/types/excalidraw/components/footer/FooterCenter.d.ts +0 -8
  358. package/dist/types/excalidraw/components/live-collaboration/LiveCollaborationTrigger.d.ts +0 -10
  359. package/dist/types/excalidraw/components/shapes.d.ts +0 -62
  360. package/dist/types/excalidraw/components/welcome-screen/WelcomeScreen.Center.d.ts +0 -58
  361. package/dist/types/excalidraw/components/welcome-screen/WelcomeScreen.Hints.d.ts +0 -19
  362. package/dist/types/excalidraw/components/welcome-screen/WelcomeScreen.d.ts +0 -85
  363. package/dist/types/excalidraw/cursor.d.ts +0 -5
  364. package/dist/types/excalidraw/data/reconcile.d.ts +0 -6
  365. package/dist/types/excalidraw/index.d.ts +0 -46
  366. package/dist/types/excalidraw/polyfill.d.ts +0 -2
  367. package/dist/types/excalidraw/scene/scroll.d.ts +0 -23
  368. package/dist/types/excalidraw/scene/zoom.d.ts +0 -12
  369. package/dist/types/utils/src/bbox.d.ts +0 -9
  370. 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,73 +47,80 @@ export declare const actionClearCanvas: {
59
47
  clip: boolean;
60
48
  };
61
49
  name: string | null;
62
- zoom: Readonly<{
63
- value: import("../types").NormalizedZoomValue;
64
- }>;
50
+ zoom: import("../types").Zoom;
65
51
  scrollX: number;
66
52
  scrollY: number;
67
53
  viewModeEnabled: boolean;
68
- openDialog: {
54
+ openDialog: null | {
69
55
  name: "imageExport" | "help" | "jsonExport";
70
56
  } | {
71
57
  name: "ttd";
72
- tab: "mermaid" | "text-to-diagram";
58
+ tab: "text-to-diagram" | "mermaid";
73
59
  } | {
74
60
  name: "commandPalette";
61
+ } | {
62
+ name: "settings";
75
63
  } | {
76
64
  name: "elementLinkSelector";
77
- sourceElementId: string;
78
- } | null;
79
- editingGroupId: string | null;
65
+ sourceElementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
66
+ } | {
67
+ name: "charts";
68
+ data: import("../charts").Spreadsheet;
69
+ rawText: string;
70
+ };
71
+ editingGroupId: import("@excalidraw/element/types").GroupId | null;
80
72
  selectedElementIds: Readonly<{
81
73
  [id: string]: true;
82
74
  }>;
83
75
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
84
76
  activeEmbeddable: {
85
77
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
86
- state: "active" | "hover";
78
+ state: "hover" | "active";
87
79
  } | null;
88
- editingLinearElement: import("@excalidraw/element").LinearElementEditor | null;
89
80
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
90
81
  selectedGroupIds: {
91
82
  [groupId: string]: boolean;
92
83
  };
93
84
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
94
85
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
86
+ newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
95
87
  isBindingEnabled: boolean;
96
- suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
88
+ isMidpointSnappingEnabled: boolean;
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;
97
104
  isRotating: boolean;
98
- elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
99
- collaborators: Map<import("../types").SocketId, Readonly<{
100
- pointer?: import("../types").CollaboratorPointer | undefined;
101
- button?: "up" | "down" | undefined;
102
- selectedElementIds?: Readonly<{
103
- [id: string]: true;
104
- }> | undefined;
105
- username?: string | null | undefined;
106
- userState?: import("@excalidraw/common").UserIdleState | undefined;
107
- color?: {
108
- background: string;
109
- stroke: string;
110
- } | undefined;
111
- avatarUrl?: string | undefined;
112
- id?: string | undefined;
113
- socketId?: import("../types").SocketId | undefined;
114
- isCurrentUser?: boolean | undefined;
115
- isInCall?: boolean | undefined;
116
- isSpeaking?: boolean | undefined;
117
- isMuted?: boolean | undefined;
118
- }>>;
105
+ elementsToHighlight: readonly import("@excalidraw/element/types").NonDeletedExcalidrawElement[] | null;
106
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
119
107
  snapLines: readonly import("../snapping").SnapLine[];
120
108
  zenModeEnabled: boolean;
121
- editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
109
+ editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null;
122
110
  isCropping: boolean;
123
- croppingElementId: string | null;
111
+ croppingElementId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
124
112
  searchMatches: Readonly<{
125
- focusedId: string | null;
113
+ focusedId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
126
114
  matches: readonly import("../types").SearchMatch[];
127
115
  }> | null;
128
116
  activeLockedId: string | null;
117
+ hoveredElementIds: Readonly<{
118
+ [id: string]: true;
119
+ }>;
120
+ shouldCacheIgnoreZoom: boolean;
121
+ exportScale: number;
122
+ currentItemArrowType: "sharp" | "round" | "elbow";
123
+ bindMode: import("@excalidraw/element/types").BindMode;
129
124
  contextMenu: {
130
125
  items: import("../components/ContextMenu").ContextMenuItems;
131
126
  top: number;
@@ -133,62 +128,63 @@ export declare const actionClearCanvas: {
133
128
  } | null;
134
129
  showWelcomeScreen: boolean;
135
130
  isLoading: boolean;
136
- errorMessage: import("react").ReactNode;
137
- newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
131
+ errorMessage: React.ReactNode;
138
132
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
139
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
140
- editingFrame: string | null;
133
+ boxSelectionMode: import("../types").BoxSelectionMode;
134
+ bindingPreference: "enabled" | "disabled";
135
+ showHints: boolean;
136
+ inputDevice: import("../types").InputDevice;
137
+ editingFrame: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["id"] | null;
138
+ preferredSelectionTool: {
139
+ type: "selection" | "lasso";
140
+ initialized: boolean;
141
+ };
141
142
  exportWithDarkMode: boolean;
142
- exportScale: number;
143
143
  currentItemStrokeColor: string;
144
+ currentItemStickynoteStrokeColor: string;
145
+ currentItemStickynoteBackgroundColor: string;
144
146
  currentItemBackgroundColor: string;
145
- currentItemFillStyle: import("@excalidraw/element/types").FillStyle;
146
- currentItemStrokeWidth: number;
147
- currentItemStrokeStyle: import("@excalidraw/element/types").StrokeStyle;
147
+ currentItemFillStyle: import("@excalidraw/element/types").ExcalidrawElement["fillStyle"];
148
+ currentItemStrokeWidthKey: import("@excalidraw/common").StrokeWidthKey;
149
+ currentItemStrokeStyle: import("@excalidraw/element/types").ExcalidrawElement["strokeStyle"];
148
150
  currentItemRoughness: number;
151
+ currentItemStrokeVariability: import("@excalidraw/element/types").StrokeVariability;
149
152
  currentItemOpacity: number;
150
- currentItemFontFamily: number;
153
+ currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
151
154
  currentItemFontSize: number;
152
- currentItemTextAlign: string;
155
+ currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
153
156
  currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
154
157
  currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
155
- currentHoveredFontFamily: number | null;
158
+ currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
156
159
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
157
- currentItemArrowType: "round" | "sharp" | "elbow";
160
+ scrollConstraints: import("../types").ScrollConstraints | null;
158
161
  cursorButton: "up" | "down";
159
162
  scrolledOutside: boolean;
160
163
  isResizing: boolean;
161
- openMenu: "canvas" | "shape" | null;
162
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
164
+ openMenu: "canvas" | null;
165
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
163
166
  openSidebar: {
164
- name: string;
165
- tab?: string | undefined;
167
+ name: import("../types").SidebarName;
168
+ tab?: import("../types").SidebarTabName;
166
169
  } | null;
167
170
  defaultSidebarDockedPreference: boolean;
168
171
  lastPointerDownWith: import("@excalidraw/element/types").PointerType;
169
- hoveredElementIds: Readonly<{
170
- [id: string]: true;
171
- }>;
172
172
  previousSelectedElementIds: {
173
173
  [id: string]: true;
174
174
  };
175
175
  selectedElementsAreBeingDragged: boolean;
176
- shouldCacheIgnoreZoom: boolean;
177
176
  toast: {
178
- message: string;
179
- closable?: boolean | undefined;
180
- duration?: number | undefined;
177
+ message: React.ReactNode;
178
+ closable?: boolean;
179
+ duration?: number;
181
180
  } | null;
182
- fileHandle: import("browser-fs-access").FileSystemHandle | null;
183
- currentChartType: import("@excalidraw/element/types").ChartType;
184
- showHyperlinkPopup: false | "editor" | "info";
181
+ fileHandle: FileSystemFileHandle | null;
182
+ showHyperlinkPopup: false | "info" | "editor";
185
183
  originSnapOffset: {
186
184
  x: number;
187
185
  y: number;
188
186
  } | null;
189
187
  objectsSnapModeEnabled: boolean;
190
- userToFollow: import("../types").UserToFollow | null;
191
- followedBy: Set<import("../types").SocketId>;
192
188
  lockedMultiSelections: {
193
189
  [groupId: string]: true;
194
190
  };
@@ -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,15 +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;
246
- editingLinearElement: import("@excalidraw/element").LinearElementEditor | 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;
247
259
  activeTool: {
248
260
  lastActiveTool: import("../types").ActiveTool | null;
249
261
  locked: boolean;
250
262
  fromSelection: boolean;
251
263
  } & import("../types").ActiveTool;
264
+ preferredSelectionTool: {
265
+ type: "selection" | "lasso";
266
+ initialized: boolean;
267
+ };
252
268
  penMode: boolean;
253
269
  penDetected: boolean;
254
270
  exportBackground: boolean;
@@ -256,43 +272,53 @@ export declare const actionZoomIn: {
256
272
  exportWithDarkMode: boolean;
257
273
  exportScale: number;
258
274
  currentItemStrokeColor: string;
275
+ currentItemStickynoteStrokeColor: string;
276
+ currentItemStickynoteBackgroundColor: string;
259
277
  currentItemBackgroundColor: string;
260
- currentItemFillStyle: import("@excalidraw/element/types").FillStyle;
261
- currentItemStrokeWidth: number;
262
- 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"];
263
281
  currentItemRoughness: number;
282
+ currentItemStrokeVariability: import("@excalidraw/element/types").StrokeVariability;
264
283
  currentItemOpacity: number;
265
- currentItemFontFamily: number;
284
+ currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
266
285
  currentItemFontSize: number;
267
- currentItemTextAlign: string;
286
+ currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
268
287
  currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
269
288
  currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
270
- currentHoveredFontFamily: number | null;
289
+ currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
271
290
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
272
- currentItemArrowType: "round" | "sharp" | "elbow";
291
+ currentItemArrowType: "sharp" | "round" | "elbow";
273
292
  viewBackgroundColor: string;
293
+ scrollConstraints: import("../types").ScrollConstraints | null;
274
294
  cursorButton: "up" | "down";
275
295
  scrolledOutside: boolean;
276
296
  name: string | null;
277
297
  isResizing: boolean;
278
298
  isRotating: boolean;
279
- openMenu: "canvas" | "shape" | null;
280
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
299
+ openMenu: "canvas" | null;
300
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
281
301
  openSidebar: {
282
- name: string;
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,15 +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;
433
- editingLinearElement: import("@excalidraw/element").LinearElementEditor | 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;
434
457
  activeTool: {
435
458
  lastActiveTool: import("../types").ActiveTool | null;
436
459
  locked: boolean;
437
460
  fromSelection: boolean;
438
461
  } & import("../types").ActiveTool;
462
+ preferredSelectionTool: {
463
+ type: "selection" | "lasso";
464
+ initialized: boolean;
465
+ };
439
466
  penMode: boolean;
440
467
  penDetected: boolean;
441
468
  exportBackground: boolean;
@@ -443,43 +470,53 @@ export declare const actionZoomOut: {
443
470
  exportWithDarkMode: boolean;
444
471
  exportScale: number;
445
472
  currentItemStrokeColor: string;
473
+ currentItemStickynoteStrokeColor: string;
474
+ currentItemStickynoteBackgroundColor: string;
446
475
  currentItemBackgroundColor: string;
447
- currentItemFillStyle: import("@excalidraw/element/types").FillStyle;
448
- currentItemStrokeWidth: number;
449
- 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"];
450
479
  currentItemRoughness: number;
480
+ currentItemStrokeVariability: import("@excalidraw/element/types").StrokeVariability;
451
481
  currentItemOpacity: number;
452
- currentItemFontFamily: number;
482
+ currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
453
483
  currentItemFontSize: number;
454
- currentItemTextAlign: string;
484
+ currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
455
485
  currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
456
486
  currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
457
- currentHoveredFontFamily: number | null;
487
+ currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
458
488
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
459
- currentItemArrowType: "round" | "sharp" | "elbow";
489
+ currentItemArrowType: "sharp" | "round" | "elbow";
460
490
  viewBackgroundColor: string;
491
+ scrollConstraints: import("../types").ScrollConstraints | null;
461
492
  cursorButton: "up" | "down";
462
493
  scrolledOutside: boolean;
463
494
  name: string | null;
464
495
  isResizing: boolean;
465
496
  isRotating: boolean;
466
- openMenu: "canvas" | "shape" | null;
467
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
497
+ openMenu: "canvas" | null;
498
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
468
499
  openSidebar: {
469
- name: string;
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,15 +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;
620
- editingLinearElement: import("@excalidraw/element").LinearElementEditor | 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;
621
655
  activeTool: {
622
656
  lastActiveTool: import("../types").ActiveTool | null;
623
657
  locked: boolean;
624
658
  fromSelection: boolean;
625
659
  } & import("../types").ActiveTool;
660
+ preferredSelectionTool: {
661
+ type: "selection" | "lasso";
662
+ initialized: boolean;
663
+ };
626
664
  penMode: boolean;
627
665
  penDetected: boolean;
628
666
  exportBackground: boolean;
@@ -630,43 +668,53 @@ export declare const actionResetZoom: {
630
668
  exportWithDarkMode: boolean;
631
669
  exportScale: number;
632
670
  currentItemStrokeColor: string;
671
+ currentItemStickynoteStrokeColor: string;
672
+ currentItemStickynoteBackgroundColor: string;
633
673
  currentItemBackgroundColor: string;
634
- currentItemFillStyle: import("@excalidraw/element/types").FillStyle;
635
- currentItemStrokeWidth: number;
636
- 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"];
637
677
  currentItemRoughness: number;
678
+ currentItemStrokeVariability: import("@excalidraw/element/types").StrokeVariability;
638
679
  currentItemOpacity: number;
639
- currentItemFontFamily: number;
680
+ currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
640
681
  currentItemFontSize: number;
641
- currentItemTextAlign: string;
682
+ currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
642
683
  currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
643
684
  currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
644
- currentHoveredFontFamily: number | null;
685
+ currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
645
686
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
646
- currentItemArrowType: "round" | "sharp" | "elbow";
687
+ currentItemArrowType: "sharp" | "round" | "elbow";
647
688
  viewBackgroundColor: string;
689
+ scrollConstraints: import("../types").ScrollConstraints | null;
648
690
  cursorButton: "up" | "down";
649
691
  scrolledOutside: boolean;
650
692
  name: string | null;
651
693
  isResizing: boolean;
652
694
  isRotating: boolean;
653
- openMenu: "canvas" | "shape" | null;
654
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
695
+ openMenu: "canvas" | null;
696
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
655
697
  openSidebar: {
656
- name: string;
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
- editingLinearElement: import("@excalidraw/element").LinearElementEditor | null;
814
- activeTool: {
815
- lastActiveTool: import("../types").ActiveTool | null;
816
- locked: boolean;
817
- fromSelection: boolean;
818
- } & import("../types").ActiveTool;
819
- penMode: boolean;
820
- penDetected: boolean;
821
- exportBackground: boolean;
822
- exportEmbedScene: boolean;
823
- exportWithDarkMode: boolean;
824
- exportScale: number;
825
- currentItemStrokeColor: string;
826
- currentItemBackgroundColor: string;
827
- currentItemFillStyle: import("@excalidraw/element/types").FillStyle;
828
- currentItemStrokeWidth: number;
829
- currentItemStrokeStyle: import("@excalidraw/element/types").StrokeStyle;
830
- currentItemRoughness: number;
831
- currentItemOpacity: number;
832
- currentItemFontFamily: number;
833
- currentItemFontSize: number;
834
- currentItemTextAlign: string;
835
- currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
836
- currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
837
- currentHoveredFontFamily: number | null;
838
- currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
839
- currentItemArrowType: "round" | "sharp" | "elbow";
840
- viewBackgroundColor: string;
841
- cursorButton: "up" | "down";
842
- scrolledOutside: boolean;
843
- name: string | null;
844
- isResizing: boolean;
845
- isRotating: boolean;
846
- openMenu: "canvas" | "shape" | null;
847
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
848
- openSidebar: {
849
- name: string;
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
- editingLinearElement: import("@excalidraw/element").LinearElementEditor | null;
1003
- activeTool: {
1004
- lastActiveTool: import("../types").ActiveTool | null;
1005
- locked: boolean;
1006
- fromSelection: boolean;
1007
- } & import("../types").ActiveTool;
1008
- penMode: boolean;
1009
- penDetected: boolean;
1010
- exportBackground: boolean;
1011
- exportEmbedScene: boolean;
1012
- exportWithDarkMode: boolean;
1013
- exportScale: number;
1014
- currentItemStrokeColor: string;
1015
- currentItemBackgroundColor: string;
1016
- currentItemFillStyle: import("@excalidraw/element/types").FillStyle;
1017
- currentItemStrokeWidth: number;
1018
- currentItemStrokeStyle: import("@excalidraw/element/types").StrokeStyle;
1019
- currentItemRoughness: number;
1020
- currentItemOpacity: number;
1021
- currentItemFontFamily: number;
1022
- currentItemFontSize: number;
1023
- currentItemTextAlign: string;
1024
- currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1025
- currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1026
- currentHoveredFontFamily: number | null;
1027
- currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
1028
- currentItemArrowType: "round" | "sharp" | "elbow";
1029
- viewBackgroundColor: string;
1030
- cursorButton: "up" | "down";
1031
- scrolledOutside: boolean;
1032
- name: string | null;
1033
- isResizing: boolean;
1034
- isRotating: boolean;
1035
- openMenu: "canvas" | "shape" | null;
1036
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
1037
- openSidebar: {
1038
- name: string;
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,15 +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;
1183
- editingLinearElement: import("@excalidraw/element").LinearElementEditor | 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;
1184
853
  activeTool: {
1185
854
  lastActiveTool: import("../types").ActiveTool | null;
1186
855
  locked: boolean;
1187
856
  fromSelection: boolean;
1188
857
  } & import("../types").ActiveTool;
858
+ preferredSelectionTool: {
859
+ type: "selection" | "lasso";
860
+ initialized: boolean;
861
+ };
1189
862
  penMode: boolean;
1190
863
  penDetected: boolean;
1191
864
  exportBackground: boolean;
@@ -1193,43 +866,53 @@ export declare const actionZoomToFitSelectionInViewport: {
1193
866
  exportWithDarkMode: boolean;
1194
867
  exportScale: number;
1195
868
  currentItemStrokeColor: string;
869
+ currentItemStickynoteStrokeColor: string;
870
+ currentItemStickynoteBackgroundColor: string;
1196
871
  currentItemBackgroundColor: string;
1197
- currentItemFillStyle: import("@excalidraw/element/types").FillStyle;
1198
- currentItemStrokeWidth: number;
1199
- 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"];
1200
875
  currentItemRoughness: number;
876
+ currentItemStrokeVariability: import("@excalidraw/element/types").StrokeVariability;
1201
877
  currentItemOpacity: number;
1202
- currentItemFontFamily: number;
878
+ currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
1203
879
  currentItemFontSize: number;
1204
- currentItemTextAlign: string;
880
+ currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
1205
881
  currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1206
882
  currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1207
- currentHoveredFontFamily: number | null;
883
+ currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
1208
884
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
1209
- currentItemArrowType: "round" | "sharp" | "elbow";
885
+ currentItemArrowType: "sharp" | "round" | "elbow";
1210
886
  viewBackgroundColor: string;
887
+ scrollConstraints: import("../types").ScrollConstraints | null;
1211
888
  cursorButton: "up" | "down";
1212
889
  scrolledOutside: boolean;
1213
890
  name: string | null;
1214
891
  isResizing: boolean;
1215
892
  isRotating: boolean;
1216
- openMenu: "canvas" | "shape" | null;
1217
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
893
+ openMenu: "canvas" | null;
894
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
1218
895
  openSidebar: {
1219
- name: string;
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,15 +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;
1368
- editingLinearElement: import("@excalidraw/element").LinearElementEditor | 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;
1369
1050
  activeTool: {
1370
1051
  lastActiveTool: import("../types").ActiveTool | null;
1371
1052
  locked: boolean;
1372
1053
  fromSelection: boolean;
1373
1054
  } & import("../types").ActiveTool;
1055
+ preferredSelectionTool: {
1056
+ type: "selection" | "lasso";
1057
+ initialized: boolean;
1058
+ };
1374
1059
  penMode: boolean;
1375
1060
  penDetected: boolean;
1376
1061
  exportBackground: boolean;
@@ -1378,43 +1063,53 @@ export declare const actionZoomToFitSelection: {
1378
1063
  exportWithDarkMode: boolean;
1379
1064
  exportScale: number;
1380
1065
  currentItemStrokeColor: string;
1066
+ currentItemStickynoteStrokeColor: string;
1067
+ currentItemStickynoteBackgroundColor: string;
1381
1068
  currentItemBackgroundColor: string;
1382
- currentItemFillStyle: import("@excalidraw/element/types").FillStyle;
1383
- currentItemStrokeWidth: number;
1384
- 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"];
1385
1072
  currentItemRoughness: number;
1073
+ currentItemStrokeVariability: import("@excalidraw/element/types").StrokeVariability;
1386
1074
  currentItemOpacity: number;
1387
- currentItemFontFamily: number;
1075
+ currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
1388
1076
  currentItemFontSize: number;
1389
- currentItemTextAlign: string;
1077
+ currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
1390
1078
  currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1391
1079
  currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1392
- currentHoveredFontFamily: number | null;
1080
+ currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
1393
1081
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
1394
- currentItemArrowType: "round" | "sharp" | "elbow";
1082
+ currentItemArrowType: "sharp" | "round" | "elbow";
1395
1083
  viewBackgroundColor: string;
1084
+ scrollConstraints: import("../types").ScrollConstraints | null;
1396
1085
  cursorButton: "up" | "down";
1397
1086
  scrolledOutside: boolean;
1398
1087
  name: string | null;
1399
1088
  isResizing: boolean;
1400
1089
  isRotating: boolean;
1401
- openMenu: "canvas" | "shape" | null;
1402
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
1090
+ openMenu: "canvas" | null;
1091
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
1403
1092
  openSidebar: {
1404
- name: string;
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,201 +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[];
1544
- frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1545
- frameRendering: {
1546
- enabled: boolean;
1547
- name: boolean;
1548
- outline: boolean;
1549
- clip: boolean;
1550
- };
1551
- editingFrame: string | null;
1552
- elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
1553
- editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1554
- editingLinearElement: import("@excalidraw/element").LinearElementEditor | null;
1555
- activeTool: {
1556
- lastActiveTool: import("../types").ActiveTool | null;
1557
- locked: boolean;
1558
- fromSelection: boolean;
1559
- } & import("../types").ActiveTool;
1560
- penMode: boolean;
1561
- penDetected: boolean;
1562
- exportBackground: boolean;
1563
- exportEmbedScene: boolean;
1564
- exportWithDarkMode: boolean;
1565
- exportScale: number;
1566
- currentItemStrokeColor: string;
1567
- currentItemBackgroundColor: string;
1568
- currentItemFillStyle: import("@excalidraw/element/types").FillStyle;
1569
- currentItemStrokeWidth: number;
1570
- currentItemStrokeStyle: import("@excalidraw/element/types").StrokeStyle;
1571
- currentItemRoughness: number;
1572
- currentItemOpacity: number;
1573
- currentItemFontFamily: number;
1574
- currentItemFontSize: number;
1575
- currentItemTextAlign: string;
1576
- currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1577
- currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1578
- currentHoveredFontFamily: number | null;
1579
- currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
1580
- currentItemArrowType: "round" | "sharp" | "elbow";
1581
- viewBackgroundColor: string;
1582
- cursorButton: "up" | "down";
1583
- scrolledOutside: boolean;
1584
- name: string | null;
1585
- isResizing: boolean;
1586
- isRotating: boolean;
1587
- openMenu: "canvas" | "shape" | null;
1588
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
1589
- openSidebar: {
1590
- name: string;
1591
- tab?: string | undefined;
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;
1592
1225
  } | null;
1593
- openDialog: {
1594
- name: "imageExport" | "help" | "jsonExport";
1595
- } | {
1596
- name: "ttd";
1597
- tab: "mermaid" | "text-to-diagram";
1598
- } | {
1599
- name: "commandPalette";
1226
+ textToolHover: {
1227
+ type: "text";
1228
+ elementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
1600
1229
  } | {
1601
- name: "elementLinkSelector";
1602
- sourceElementId: string;
1603
- } | null;
1604
- defaultSidebarDockedPreference: boolean;
1605
- lastPointerDownWith: import("@excalidraw/element/types").PointerType;
1606
- selectedElementIds: Readonly<{
1607
- [id: string]: true;
1608
- }>;
1609
- hoveredElementIds: Readonly<{
1610
- [id: string]: true;
1611
- }>;
1612
- previousSelectedElementIds: {
1613
- [id: string]: true;
1614
- };
1615
- selectedElementsAreBeingDragged: boolean;
1616
- shouldCacheIgnoreZoom: boolean;
1617
- toast: {
1618
- message: string;
1619
- closable?: boolean | undefined;
1620
- duration?: number | undefined;
1621
- } | null;
1622
- zenModeEnabled: boolean;
1623
- theme: import("@excalidraw/element/types").Theme;
1624
- gridSize: number;
1625
- gridStep: number;
1626
- gridModeEnabled: boolean;
1627
- viewModeEnabled: boolean;
1628
- selectedGroupIds: {
1629
- [groupId: string]: boolean;
1630
- };
1631
- editingGroupId: string | null;
1632
- width: number;
1633
- height: number;
1634
- offsetTop: number;
1635
- 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
- }>>;
1657
- stats: {
1658
- open: boolean;
1659
- panels: number;
1660
- };
1661
- currentChartType: import("@excalidraw/element/types").ChartType;
1662
- pasteDialog: {
1663
- shown: false;
1664
- data: null;
1230
+ type: "container";
1231
+ elementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
1665
1232
  } | {
1666
- shown: true;
1667
- data: import("../charts").Spreadsheet;
1668
- };
1669
- showHyperlinkPopup: false | "editor" | "info";
1670
- selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
1671
- snapLines: readonly import("../snapping").SnapLine[];
1672
- originSnapOffset: {
1673
- x: number;
1674
- y: number;
1675
- } | null;
1676
- objectsSnapModeEnabled: boolean;
1677
- userToFollow: import("../types").UserToFollow | null;
1678
- followedBy: Set<import("../types").SocketId>;
1679
- isCropping: boolean;
1680
- croppingElementId: string | null;
1681
- searchMatches: Readonly<{
1682
- focusedId: string | null;
1683
- matches: readonly import("../types").SearchMatch[];
1684
- }> | null;
1685
- activeLockedId: string | null;
1686
- lockedMultiSelections: {
1687
- [groupId: string]: true;
1688
- };
1689
- };
1690
- captureUpdate: "EVENTUALLY";
1691
- };
1692
- keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
1693
- } & {
1694
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
1695
- };
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;
1233
+ type: "arrow";
1234
+ elementId: import("@excalidraw/element/types").ExcalidrawArrowElement["id"];
1235
+ anchor: "start" | "end" | "label";
1712
1236
  } | 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
1237
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1728
1238
  frameRendering: {
1729
1239
  enabled: boolean;
@@ -1731,15 +1241,18 @@ export declare const actionToggleTheme: {
1731
1241
  outline: boolean;
1732
1242
  clip: boolean;
1733
1243
  };
1734
- editingFrame: string | null;
1735
- elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
1736
- editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1737
- editingLinearElement: import("@excalidraw/element").LinearElementEditor | 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;
1738
1247
  activeTool: {
1739
1248
  lastActiveTool: import("../types").ActiveTool | null;
1740
1249
  locked: boolean;
1741
1250
  fromSelection: boolean;
1742
1251
  } & import("../types").ActiveTool;
1252
+ preferredSelectionTool: {
1253
+ type: "selection" | "lasso";
1254
+ initialized: boolean;
1255
+ };
1743
1256
  penMode: boolean;
1744
1257
  penDetected: boolean;
1745
1258
  exportBackground: boolean;
@@ -1747,48 +1260,53 @@ export declare const actionToggleTheme: {
1747
1260
  exportWithDarkMode: boolean;
1748
1261
  exportScale: number;
1749
1262
  currentItemStrokeColor: string;
1263
+ currentItemStickynoteStrokeColor: string;
1264
+ currentItemStickynoteBackgroundColor: string;
1750
1265
  currentItemBackgroundColor: string;
1751
- currentItemFillStyle: import("@excalidraw/element/types").FillStyle;
1752
- currentItemStrokeWidth: number;
1753
- 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"];
1754
1269
  currentItemRoughness: number;
1270
+ currentItemStrokeVariability: import("@excalidraw/element/types").StrokeVariability;
1755
1271
  currentItemOpacity: number;
1756
- currentItemFontFamily: number;
1272
+ currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
1757
1273
  currentItemFontSize: number;
1758
- currentItemTextAlign: string;
1274
+ currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
1759
1275
  currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1760
1276
  currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1761
- currentHoveredFontFamily: number | null;
1277
+ currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
1762
1278
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
1763
- currentItemArrowType: "round" | "sharp" | "elbow";
1279
+ currentItemArrowType: "sharp" | "round" | "elbow";
1764
1280
  viewBackgroundColor: string;
1765
- scrollX: number;
1766
- scrollY: number;
1281
+ scrollConstraints: import("../types").ScrollConstraints | null;
1767
1282
  cursorButton: "up" | "down";
1768
1283
  scrolledOutside: boolean;
1769
1284
  name: string | null;
1770
1285
  isResizing: boolean;
1771
1286
  isRotating: boolean;
1772
- zoom: Readonly<{
1773
- value: import("../types").NormalizedZoomValue;
1774
- }>;
1775
- openMenu: "canvas" | "shape" | null;
1776
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
1287
+ openMenu: "canvas" | null;
1288
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
1777
1289
  openSidebar: {
1778
- name: string;
1779
- tab?: string | undefined;
1290
+ name: import("../types").SidebarName;
1291
+ tab?: import("../types").SidebarTabName;
1780
1292
  } | null;
1781
- openDialog: {
1293
+ openDialog: null | {
1782
1294
  name: "imageExport" | "help" | "jsonExport";
1783
1295
  } | {
1784
1296
  name: "ttd";
1785
- tab: "mermaid" | "text-to-diagram";
1297
+ tab: "text-to-diagram" | "mermaid";
1786
1298
  } | {
1787
1299
  name: "commandPalette";
1300
+ } | {
1301
+ name: "settings";
1788
1302
  } | {
1789
1303
  name: "elementLinkSelector";
1790
- sourceElementId: string;
1791
- } | null;
1304
+ sourceElementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
1305
+ } | {
1306
+ name: "charts";
1307
+ data: import("../charts").Spreadsheet;
1308
+ rawText: string;
1309
+ };
1792
1310
  defaultSidebarDockedPreference: boolean;
1793
1311
  lastPointerDownWith: import("@excalidraw/element/types").PointerType;
1794
1312
  selectedElementIds: Readonly<{
@@ -1803,11 +1321,12 @@ export declare const actionToggleTheme: {
1803
1321
  selectedElementsAreBeingDragged: boolean;
1804
1322
  shouldCacheIgnoreZoom: boolean;
1805
1323
  toast: {
1806
- message: string;
1807
- closable?: boolean | undefined;
1808
- duration?: number | undefined;
1324
+ message: React.ReactNode;
1325
+ closable?: boolean;
1326
+ duration?: number;
1809
1327
  } | null;
1810
1328
  zenModeEnabled: boolean;
1329
+ theme: import("@excalidraw/element/types").Theme;
1811
1330
  gridSize: number;
1812
1331
  gridStep: number;
1813
1332
  gridModeEnabled: boolean;
@@ -1815,45 +1334,18 @@ export declare const actionToggleTheme: {
1815
1334
  selectedGroupIds: {
1816
1335
  [groupId: string]: boolean;
1817
1336
  };
1818
- editingGroupId: string | null;
1337
+ editingGroupId: import("@excalidraw/element/types").GroupId | null;
1819
1338
  width: number;
1820
1339
  height: number;
1821
1340
  offsetTop: number;
1822
1341
  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
- }>>;
1342
+ fileHandle: FileSystemFileHandle | null;
1343
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
1844
1344
  stats: {
1845
1345
  open: boolean;
1846
1346
  panels: number;
1847
1347
  };
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";
1348
+ showHyperlinkPopup: false | "info" | "editor";
1857
1349
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
1858
1350
  snapLines: readonly import("../snapping").SnapLine[];
1859
1351
  originSnapOffset: {
@@ -1861,556 +1353,32 @@ export declare const actionToggleTheme: {
1861
1353
  y: number;
1862
1354
  } | null;
1863
1355
  objectsSnapModeEnabled: boolean;
1864
- userToFollow: import("../types").UserToFollow | null;
1865
- followedBy: Set<import("../types").SocketId>;
1866
1356
  isCropping: boolean;
1867
- croppingElementId: string | null;
1357
+ croppingElementId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
1868
1358
  searchMatches: Readonly<{
1869
- focusedId: string | null;
1359
+ focusedId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
1870
1360
  matches: readonly import("../types").SearchMatch[];
1871
1361
  }> | null;
1872
1362
  activeLockedId: string | null;
1873
1363
  lockedMultiSelections: {
1874
1364
  [groupId: string]: true;
1875
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;
1876
1375
  };
1877
1376
  captureUpdate: "EVENTUALLY";
1878
1377
  };
1879
1378
  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
1379
  } & {
1882
1380
  keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
1883
1381
  };
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>) => {
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
- editingLinearElement: import("@excalidraw/element").LinearElementEditor | null;
1926
- penMode: boolean;
1927
- penDetected: boolean;
1928
- exportBackground: boolean;
1929
- exportEmbedScene: boolean;
1930
- exportWithDarkMode: boolean;
1931
- exportScale: number;
1932
- currentItemStrokeColor: string;
1933
- currentItemBackgroundColor: string;
1934
- currentItemFillStyle: import("@excalidraw/element/types").FillStyle;
1935
- currentItemStrokeWidth: number;
1936
- currentItemStrokeStyle: import("@excalidraw/element/types").StrokeStyle;
1937
- currentItemRoughness: number;
1938
- currentItemOpacity: number;
1939
- currentItemFontFamily: number;
1940
- currentItemFontSize: number;
1941
- currentItemTextAlign: string;
1942
- currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1943
- currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1944
- currentHoveredFontFamily: number | null;
1945
- currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
1946
- currentItemArrowType: "round" | "sharp" | "elbow";
1947
- viewBackgroundColor: string;
1948
- scrollX: number;
1949
- scrollY: number;
1950
- cursorButton: "up" | "down";
1951
- scrolledOutside: boolean;
1952
- name: string | null;
1953
- isResizing: boolean;
1954
- isRotating: boolean;
1955
- zoom: Readonly<{
1956
- value: import("../types").NormalizedZoomValue;
1957
- }>;
1958
- openMenu: "canvas" | "shape" | null;
1959
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
1960
- openSidebar: {
1961
- name: string;
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
- perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: any, app: import("../types").AppClassProperties) => {
2069
- appState: {
2070
- selectedElementIds: {};
2071
- selectedGroupIds: {};
2072
- activeEmbeddable: null;
2073
- activeTool: {
2074
- lastActiveTool: import("../types").ActiveTool | null;
2075
- locked: boolean;
2076
- fromSelection: boolean;
2077
- } & import("../types").ActiveTool;
2078
- contextMenu: {
2079
- items: import("../components/ContextMenu").ContextMenuItems;
2080
- top: number;
2081
- left: number;
2082
- } | null;
2083
- showWelcomeScreen: boolean;
2084
- isLoading: boolean;
2085
- errorMessage: import("react").ReactNode;
2086
- newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
2087
- resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
2088
- multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
2089
- selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
2090
- isBindingEnabled: boolean;
2091
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
2092
- suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
2093
- frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
2094
- frameRendering: {
2095
- enabled: boolean;
2096
- name: boolean;
2097
- outline: boolean;
2098
- clip: boolean;
2099
- };
2100
- editingFrame: string | null;
2101
- elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
2102
- editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
2103
- editingLinearElement: import("@excalidraw/element").LinearElementEditor | 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
- tab?: string | undefined;
2141
- } | null;
2142
- openDialog: {
2143
- name: "imageExport" | "help" | "jsonExport";
2144
- } | {
2145
- name: "ttd";
2146
- tab: "mermaid" | "text-to-diagram";
2147
- } | {
2148
- name: "commandPalette";
2149
- } | {
2150
- name: "elementLinkSelector";
2151
- sourceElementId: string;
2152
- } | null;
2153
- defaultSidebarDockedPreference: boolean;
2154
- lastPointerDownWith: import("@excalidraw/element/types").PointerType;
2155
- hoveredElementIds: Readonly<{
2156
- [id: string]: true;
2157
- }>;
2158
- previousSelectedElementIds: {
2159
- [id: string]: true;
2160
- };
2161
- selectedElementsAreBeingDragged: boolean;
2162
- shouldCacheIgnoreZoom: boolean;
2163
- toast: {
2164
- message: string;
2165
- closable?: boolean | undefined;
2166
- duration?: number | undefined;
2167
- } | null;
2168
- zenModeEnabled: boolean;
2169
- theme: import("@excalidraw/element/types").Theme;
2170
- gridSize: number;
2171
- gridStep: number;
2172
- gridModeEnabled: boolean;
2173
- viewModeEnabled: boolean;
2174
- editingGroupId: string | null;
2175
- width: number;
2176
- height: number;
2177
- offsetTop: number;
2178
- offsetLeft: number;
2179
- fileHandle: import("browser-fs-access").FileSystemHandle | null;
2180
- collaborators: Map<import("../types").SocketId, Readonly<{
2181
- pointer?: import("../types").CollaboratorPointer | undefined;
2182
- button?: "up" | "down" | undefined;
2183
- selectedElementIds?: Readonly<{
2184
- [id: string]: true;
2185
- }> | undefined;
2186
- username?: string | null | undefined;
2187
- userState?: import("@excalidraw/common").UserIdleState | undefined;
2188
- color?: {
2189
- background: string;
2190
- stroke: string;
2191
- } | undefined;
2192
- avatarUrl?: string | undefined;
2193
- id?: string | undefined;
2194
- socketId?: import("../types").SocketId | undefined;
2195
- isCurrentUser?: boolean | undefined;
2196
- isInCall?: boolean | undefined;
2197
- isSpeaking?: boolean | undefined;
2198
- isMuted?: boolean | undefined;
2199
- }>>;
2200
- stats: {
2201
- open: boolean;
2202
- panels: number;
2203
- };
2204
- currentChartType: import("@excalidraw/element/types").ChartType;
2205
- pasteDialog: {
2206
- shown: false;
2207
- data: null;
2208
- } | {
2209
- shown: true;
2210
- data: import("../charts").Spreadsheet;
2211
- };
2212
- showHyperlinkPopup: false | "editor" | "info";
2213
- selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
2214
- snapLines: readonly import("../snapping").SnapLine[];
2215
- originSnapOffset: {
2216
- x: number;
2217
- y: number;
2218
- } | null;
2219
- objectsSnapModeEnabled: boolean;
2220
- userToFollow: import("../types").UserToFollow | null;
2221
- followedBy: Set<import("../types").SocketId>;
2222
- isCropping: boolean;
2223
- croppingElementId: string | null;
2224
- searchMatches: Readonly<{
2225
- focusedId: string | null;
2226
- matches: readonly import("../types").SearchMatch[];
2227
- }> | null;
2228
- activeLockedId: string | null;
2229
- lockedMultiSelections: {
2230
- [groupId: string]: true;
2231
- };
2232
- };
2233
- captureUpdate: "NEVER";
2234
- };
2235
- } & {
2236
- keyTest?: undefined;
2237
- };
2238
- export declare const actionToggleHandTool: {
2239
- name: "toggleHandTool";
2240
- label: string;
2241
- trackEvent: {
2242
- category: "toolbar";
2243
- };
2244
- icon: import("react/jsx-runtime").JSX.Element;
2245
- viewMode: false;
2246
- perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: any, app: import("../types").AppClassProperties) => {
2247
- appState: {
2248
- selectedElementIds: {};
2249
- selectedGroupIds: {};
2250
- activeEmbeddable: null;
2251
- activeTool: {
2252
- lastActiveTool: import("../types").ActiveTool | null;
2253
- locked: boolean;
2254
- fromSelection: boolean;
2255
- } & import("../types").ActiveTool;
2256
- contextMenu: {
2257
- items: import("../components/ContextMenu").ContextMenuItems;
2258
- top: number;
2259
- left: number;
2260
- } | null;
2261
- showWelcomeScreen: boolean;
2262
- isLoading: boolean;
2263
- errorMessage: import("react").ReactNode;
2264
- newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
2265
- resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
2266
- multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
2267
- selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
2268
- isBindingEnabled: boolean;
2269
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
2270
- suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
2271
- frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
2272
- frameRendering: {
2273
- enabled: boolean;
2274
- name: boolean;
2275
- outline: boolean;
2276
- clip: boolean;
2277
- };
2278
- editingFrame: string | null;
2279
- elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
2280
- editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
2281
- editingLinearElement: import("@excalidraw/element").LinearElementEditor | 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
- tab?: string | undefined;
2319
- } | null;
2320
- openDialog: {
2321
- name: "imageExport" | "help" | "jsonExport";
2322
- } | {
2323
- name: "ttd";
2324
- tab: "mermaid" | "text-to-diagram";
2325
- } | {
2326
- name: "commandPalette";
2327
- } | {
2328
- name: "elementLinkSelector";
2329
- sourceElementId: string;
2330
- } | null;
2331
- defaultSidebarDockedPreference: boolean;
2332
- lastPointerDownWith: import("@excalidraw/element/types").PointerType;
2333
- hoveredElementIds: Readonly<{
2334
- [id: string]: true;
2335
- }>;
2336
- previousSelectedElementIds: {
2337
- [id: string]: true;
2338
- };
2339
- selectedElementsAreBeingDragged: boolean;
2340
- shouldCacheIgnoreZoom: boolean;
2341
- toast: {
2342
- message: string;
2343
- closable?: boolean | undefined;
2344
- duration?: number | undefined;
2345
- } | null;
2346
- zenModeEnabled: boolean;
2347
- theme: import("@excalidraw/element/types").Theme;
2348
- gridSize: number;
2349
- gridStep: number;
2350
- gridModeEnabled: boolean;
2351
- viewModeEnabled: boolean;
2352
- editingGroupId: string | null;
2353
- width: number;
2354
- height: number;
2355
- offsetTop: number;
2356
- offsetLeft: number;
2357
- fileHandle: import("browser-fs-access").FileSystemHandle | null;
2358
- collaborators: Map<import("../types").SocketId, Readonly<{
2359
- pointer?: import("../types").CollaboratorPointer | undefined;
2360
- button?: "up" | "down" | undefined;
2361
- selectedElementIds?: Readonly<{
2362
- [id: string]: true;
2363
- }> | undefined;
2364
- username?: string | null | undefined;
2365
- userState?: import("@excalidraw/common").UserIdleState | undefined;
2366
- color?: {
2367
- background: string;
2368
- stroke: string;
2369
- } | undefined;
2370
- avatarUrl?: string | undefined;
2371
- id?: string | undefined;
2372
- socketId?: import("../types").SocketId | undefined;
2373
- isCurrentUser?: boolean | undefined;
2374
- isInCall?: boolean | undefined;
2375
- isSpeaking?: boolean | undefined;
2376
- isMuted?: boolean | undefined;
2377
- }>>;
2378
- stats: {
2379
- open: boolean;
2380
- panels: number;
2381
- };
2382
- currentChartType: import("@excalidraw/element/types").ChartType;
2383
- pasteDialog: {
2384
- shown: false;
2385
- data: null;
2386
- } | {
2387
- shown: true;
2388
- data: import("../charts").Spreadsheet;
2389
- };
2390
- showHyperlinkPopup: false | "editor" | "info";
2391
- selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
2392
- snapLines: readonly import("../snapping").SnapLine[];
2393
- originSnapOffset: {
2394
- x: number;
2395
- y: number;
2396
- } | null;
2397
- objectsSnapModeEnabled: boolean;
2398
- userToFollow: import("../types").UserToFollow | null;
2399
- followedBy: Set<import("../types").SocketId>;
2400
- isCropping: boolean;
2401
- croppingElementId: string | null;
2402
- searchMatches: Readonly<{
2403
- focusedId: string | null;
2404
- matches: readonly import("../types").SearchMatch[];
2405
- }> | null;
2406
- activeLockedId: string | null;
2407
- lockedMultiSelections: {
2408
- [groupId: string]: true;
2409
- };
2410
- };
2411
- captureUpdate: "IMMEDIATELY";
2412
- };
2413
- keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
2414
- } & {
2415
- 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;
2416
1384
  };