@excalidraw/math 0.18.0-1b287a8ba → 0.18.0-214cd6e

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