@excalidraw/element 0.18.0-91c7748 → 0.18.0-a52cd20

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