@excalidraw/math 0.18.0-d1f3982 → 0.18.0-d9e8a33

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