@excalidraw/math 0.18.0-ac0d305 → 0.18.0-afa3a65

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