@excalidraw/math 0.18.0-c141960 → 0.18.0-c1dbbdf

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