@dwelle/excalidraw 0.4.0-e3bee83 → 0.4.0-e587816

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 (220) hide show
  1. package/CHANGELOG.md +525 -0
  2. package/README.md +18 -1820
  3. package/dist/excalidraw-assets/{vendor-2002fe1b8862917b36c1.js → vendor-d415b28e9024dee4bb1b.js} +2 -2
  4. package/dist/excalidraw-assets-dev/{vendor-e6df8519da951026ff69.js → vendor-a14cd58fa2db417e42b2.js} +6 -6
  5. package/dist/excalidraw.development.js +3071 -1566
  6. package/dist/excalidraw.production.min.js +1 -1
  7. package/dist/excalidraw.production.min.js.LICENSE.txt +20 -0
  8. package/main.js +1 -8
  9. package/package.json +9 -4
  10. package/types/actions/actionAddToLibrary.d.ts +103 -55
  11. package/types/actions/actionAlign.d.ts +33 -28
  12. package/types/actions/actionBoundText.d.ts +175 -22
  13. package/types/actions/actionCanvas.d.ts +680 -170
  14. package/types/actions/actionClipboard.d.ts +174 -100
  15. package/types/actions/actionDeleteSelected.d.ts +102 -60
  16. package/types/actions/actionDistribute.d.ts +11 -12
  17. package/types/actions/actionDuplicateSelection.d.ts +3 -4
  18. package/types/actions/actionElementLock.d.ts +271 -0
  19. package/types/actions/actionExport.d.ts +363 -221
  20. package/types/actions/actionFinalize.d.ts +70 -42
  21. package/types/actions/actionFlip.d.ts +8 -11
  22. package/types/actions/actionFrame.d.ts +423 -0
  23. package/types/actions/actionGroup.d.ts +250 -13
  24. package/types/actions/actionHistory.d.ts +1 -1
  25. package/types/actions/actionLinearEditor.d.ts +37 -21
  26. package/types/actions/actionMenu.d.ts +108 -62
  27. package/types/actions/actionNavigate.d.ts +1 -1
  28. package/types/actions/actionProperties.d.ts +465 -256
  29. package/types/actions/actionSelectAll.d.ts +123 -4
  30. package/types/actions/actionStyles.d.ts +39 -24
  31. package/types/actions/actionToggleGridMode.d.ts +37 -22
  32. package/types/actions/{actionToggleLock.d.ts → actionToggleObjectsSnapMode.d.ts} +49 -32
  33. package/types/actions/actionToggleStats.d.ts +37 -22
  34. package/types/actions/actionToggleViewMode.d.ts +37 -22
  35. package/types/actions/actionToggleZenMode.d.ts +37 -22
  36. package/types/actions/actionZindex.d.ts +12 -12
  37. package/types/actions/index.d.ts +2 -1
  38. package/types/actions/manager.d.ts +1 -1
  39. package/types/actions/shortcuts.d.ts +2 -1
  40. package/types/actions/types.d.ts +11 -9
  41. package/types/appState.d.ts +18 -18
  42. package/types/charts.d.ts +2 -2
  43. package/types/clients.d.ts +5 -6
  44. package/types/clipboard.d.ts +8 -7
  45. package/types/colors.d.ts +60 -5
  46. package/types/components/Actions.d.ts +7 -12
  47. package/types/components/ActiveConfirmDialog.d.ts +4 -0
  48. package/types/components/App.d.ts +93 -35
  49. package/types/components/Avatar.d.ts +1 -2
  50. package/types/components/BraveMeasureTextError.d.ts +2 -0
  51. package/types/components/Button.d.ts +3 -2
  52. package/types/components/ButtonIconSelect.d.ts +11 -3
  53. package/types/components/Card.d.ts +0 -1
  54. package/types/components/ColorPicker/ColorInput.d.ts +9 -0
  55. package/types/components/ColorPicker/ColorPicker.d.ts +19 -0
  56. package/types/components/ColorPicker/CustomColorList.d.ts +8 -0
  57. package/types/components/ColorPicker/HotkeyLabel.d.ts +8 -0
  58. package/types/components/ColorPicker/Picker.d.ts +18 -0
  59. package/types/components/ColorPicker/PickerColorList.d.ts +10 -0
  60. package/types/components/ColorPicker/PickerHeading.d.ts +5 -0
  61. package/types/components/ColorPicker/ShadeList.d.ts +8 -0
  62. package/types/components/ColorPicker/TopPicks.d.ts +9 -0
  63. package/types/components/ColorPicker/colorPickerUtils.d.ts +21 -0
  64. package/types/components/ColorPicker/keyboardNavHandlers.d.ts +20 -0
  65. package/types/components/ContextMenu.d.ts +3 -3
  66. package/types/components/DefaultSidebar.d.ts +29 -0
  67. package/types/components/Dialog.d.ts +3 -4
  68. package/types/components/ErrorDialog.d.ts +3 -2
  69. package/types/components/ExcalidrawLogo.d.ts +15 -0
  70. package/types/components/EyeDropper.d.ts +28 -0
  71. package/types/components/FilledButton.d.ts +17 -0
  72. package/types/components/FixedSideContainer.d.ts +1 -1
  73. package/types/components/HandButton.d.ts +10 -0
  74. package/types/components/HelpButton.d.ts +1 -2
  75. package/types/components/HintViewer.d.ts +4 -5
  76. package/types/components/HomeButton.d.ts +1 -1
  77. package/types/components/ImageExportDialog.d.ts +8 -13
  78. package/types/components/Island.d.ts +1 -1
  79. package/types/components/JSONExportDialog.d.ts +5 -5
  80. package/types/components/LaserTool/LaserPathManager.d.ts +28 -0
  81. package/types/components/LaserTool/LaserPointerButton.d.ts +10 -0
  82. package/types/components/LaserTool/LaserTool.d.ts +7 -0
  83. package/types/components/LayerUI.d.ts +9 -15
  84. package/types/components/LibraryMenu.d.ts +13 -14
  85. package/types/components/LibraryMenuBrowseButton.d.ts +2 -2
  86. package/types/components/LibraryMenuControlButtons.d.ts +9 -0
  87. package/types/components/LibraryMenuHeaderContent.d.ts +10 -28
  88. package/types/components/LibraryMenuItems.d.ts +6 -7
  89. package/types/components/LibraryMenuSection.d.ts +22 -0
  90. package/types/components/LibraryUnit.d.ts +6 -3
  91. package/types/components/LoadingMessage.d.ts +0 -1
  92. package/types/components/LockButton.d.ts +1 -2
  93. package/types/components/MobileMenu.d.ts +8 -11
  94. package/types/components/OverwriteConfirm/OverwriteConfirm.d.ts +17 -0
  95. package/types/components/OverwriteConfirm/OverwriteConfirmActions.d.ts +17 -0
  96. package/types/components/OverwriteConfirm/OverwriteConfirmState.d.ts +22 -0
  97. package/types/components/PasteChartDialog.d.ts +4 -5
  98. package/types/components/PenModeButton.d.ts +1 -1
  99. package/types/components/Popover.d.ts +1 -1
  100. package/types/components/ProjectName.d.ts +2 -1
  101. package/types/components/PublishLibrary.d.ts +2 -2
  102. package/types/components/RadioGroup.d.ts +12 -0
  103. package/types/components/Section.d.ts +1 -1
  104. package/types/components/Sidebar/Sidebar.d.ts +66 -63
  105. package/types/components/Sidebar/SidebarHeader.d.ts +6 -19
  106. package/types/components/Sidebar/SidebarTab.d.ts +8 -0
  107. package/types/components/Sidebar/SidebarTabTrigger.d.ts +9 -0
  108. package/types/components/Sidebar/SidebarTabTriggers.d.ts +6 -0
  109. package/types/components/Sidebar/SidebarTabs.d.ts +6 -0
  110. package/types/components/Sidebar/SidebarTrigger.d.ts +6 -0
  111. package/types/components/Sidebar/common.d.ts +24 -7
  112. package/types/components/Spinner.d.ts +2 -1
  113. package/types/components/Stack.d.ts +4 -3
  114. package/types/components/Stats.d.ts +3 -3
  115. package/types/components/Switch.d.ts +9 -0
  116. package/types/components/ToolButton.d.ts +6 -5
  117. package/types/components/Tooltip.d.ts +1 -1
  118. package/types/components/Trans.d.ts +9 -0
  119. package/types/components/canvases/InteractiveCanvas.d.ts +27 -0
  120. package/types/components/canvases/StaticCanvas.d.ts +18 -0
  121. package/types/components/canvases/index.d.ts +3 -0
  122. package/types/components/dropdownMenu/DropdownMenu.d.ts +15 -9
  123. package/types/components/dropdownMenu/DropdownMenuContent.d.ts +7 -3
  124. package/types/components/dropdownMenu/DropdownMenuItem.d.ts +4 -4
  125. package/types/components/dropdownMenu/DropdownMenuItemCustom.d.ts +2 -1
  126. package/types/components/dropdownMenu/DropdownMenuItemLink.d.ts +4 -2
  127. package/types/components/dropdownMenu/DropdownMenuTrigger.d.ts +3 -2
  128. package/types/components/dropdownMenu/common.d.ts +6 -0
  129. package/types/components/footer/Footer.d.ts +4 -5
  130. package/types/components/hoc/withInternalFallback.d.ts +4 -0
  131. package/types/components/icons.d.ts +16 -1
  132. package/types/components/live-collaboration/LiveCollaborationTrigger.d.ts +0 -1
  133. package/types/components/main-menu/MainMenu.d.ts +22 -13
  134. package/types/components/welcome-screen/WelcomeScreen.Center.d.ts +0 -1
  135. package/types/components/welcome-screen/WelcomeScreen.d.ts +2 -3
  136. package/types/constants.d.ts +94 -10
  137. package/types/context/tunnels.d.ts +19 -0
  138. package/types/context/ui-appState.d.ts +4 -0
  139. package/types/cursor.d.ts +5 -0
  140. package/types/data/blob.d.ts +5 -3
  141. package/types/data/encode.d.ts +1 -1
  142. package/types/data/filesystem.d.ts +2 -1
  143. package/types/data/library.d.ts +3 -45
  144. package/types/data/restore.d.ts +10 -4
  145. package/types/data/transform.d.ts +73 -0
  146. package/types/data/types.d.ts +3 -5
  147. package/types/data/url.d.ts +7 -0
  148. package/types/element/Hyperlink.d.ts +48 -29
  149. package/types/element/binding.d.ts +4 -3
  150. package/types/element/bounds.d.ts +40 -10
  151. package/types/element/collision.d.ts +7 -7
  152. package/types/element/dragElements.d.ts +12 -2
  153. package/types/element/embeddable.d.ts +153 -0
  154. package/types/element/image.d.ts +11 -1
  155. package/types/element/index.d.ts +3 -2
  156. package/types/element/linearElementEditor.d.ts +43 -27
  157. package/types/element/mutateElement.d.ts +3 -2
  158. package/types/element/newElement.d.ts +48 -15
  159. package/types/element/resizeElements.d.ts +3 -2
  160. package/types/element/resizeTest.d.ts +2 -1
  161. package/types/element/showSelectedShapeActions.d.ts +2 -2
  162. package/types/element/sizeHelpers.d.ts +8 -1
  163. package/types/element/sortElements.d.ts +2 -0
  164. package/types/element/textElement.d.ts +43 -17
  165. package/types/element/textWysiwyg.d.ts +1 -1
  166. package/types/element/transformHandles.d.ts +16 -8
  167. package/types/element/typeChecks.d.ts +5 -2
  168. package/types/element/types.d.ts +59 -35
  169. package/types/emitter.d.ts +1 -2
  170. package/types/errors.d.ts +1 -1
  171. package/types/frame.d.ts +46 -0
  172. package/types/ga.d.ts +5 -5
  173. package/types/groups.d.ts +15 -11
  174. package/types/history.d.ts +3 -3
  175. package/types/hooks/useCreatePortalContainer.d.ts +4 -0
  176. package/types/hooks/useLibraryItemSvg.d.ts +11 -0
  177. package/types/hooks/useOutsideClick.d.ts +19 -2
  178. package/types/hooks/useScrollPosition.d.ts +1 -0
  179. package/types/hooks/useStable.d.ts +1 -0
  180. package/types/hooks/useTransition.d.ts +2 -0
  181. package/types/i18n.d.ts +11 -2
  182. package/types/jotai.d.ts +20 -108
  183. package/types/keys.d.ts +5 -4
  184. package/types/math.d.ts +5 -0
  185. package/types/packages/bbox.d.ts +11 -0
  186. package/types/packages/excalidraw/example/App.d.ts +7 -1
  187. package/types/packages/excalidraw/example/initialData.d.ts +182 -64
  188. package/types/packages/excalidraw/index.d.ts +11 -4
  189. package/types/packages/excalidraw/main.d.ts +3 -1
  190. package/types/packages/excalidraw/webpack.dev.config.d.ts +5 -2
  191. package/types/packages/excalidraw/webpack.prod.config.d.ts +3 -0
  192. package/types/packages/utils.d.ts +11 -2
  193. package/types/packages/withinBounds.d.ts +19 -0
  194. package/types/renderer/renderElement.d.ts +12 -22
  195. package/types/renderer/renderScene.d.ts +19 -27
  196. package/types/renderer/renderSnaps.d.ts +2 -0
  197. package/types/renderer/roundRect.d.ts +1 -1
  198. package/types/scene/Renderer.d.ts +25 -0
  199. package/types/scene/Scene.d.ts +27 -5
  200. package/types/scene/Shape.d.ts +12 -0
  201. package/types/scene/ShapeCache.d.ts +20 -0
  202. package/types/scene/comparisons.d.ts +0 -1
  203. package/types/scene/export.d.ts +50 -11
  204. package/types/scene/index.d.ts +1 -1
  205. package/types/scene/scroll.d.ts +1 -1
  206. package/types/scene/scrollbars.d.ts +2 -6
  207. package/types/scene/selection.d.ts +27 -6
  208. package/types/scene/types.d.ts +70 -34
  209. package/types/snapping.d.ts +108 -0
  210. package/types/types.d.ts +200 -84
  211. package/types/utility-types.d.ts +24 -0
  212. package/types/utils.d.ts +73 -29
  213. package/types/zindex.d.ts +4 -4
  214. package/types/components/ColorPicker.d.ts +0 -14
  215. package/types/components/LibraryButton.d.ts +0 -8
  216. package/types/components/SingleLibraryItem.d.ts +0 -10
  217. package/types/components/hoc/withUpstreamOverride.d.ts +0 -10
  218. /package/dist/excalidraw-assets/{vendor-2002fe1b8862917b36c1.js.LICENSE.txt → vendor-d415b28e9024dee4bb1b.js.LICENSE.txt} +0 -0
  219. /package/types/packages/excalidraw/dist/excalidraw-assets/{vendor-2002fe1b8862917b36c1.d.ts → vendor-d415b28e9024dee4bb1b.d.ts} +0 -0
  220. /package/types/packages/excalidraw/dist/excalidraw-assets-dev/{vendor-e6df8519da951026ff69.d.ts → vendor-a14cd58fa2db417e42b2.d.ts} +0 -0
@@ -1,11 +1,12 @@
1
- /// <reference types="react" />
2
- import { AppState } from "../../src/types";
1
+ import { AppState, Primitive } from "../../src/types";
3
2
  import { Arrowhead, ExcalidrawElement, ExcalidrawLinearElement } from "../element/types";
3
+ export declare const changeProperty: (elements: readonly ExcalidrawElement[], appState: AppState, callback: (element: ExcalidrawElement) => ExcalidrawElement, includeBoundText?: boolean) => ExcalidrawElement[];
4
+ export declare const getFormValue: <T extends Primitive>(elements: readonly ExcalidrawElement[], appState: AppState, getAttribute: (element: ExcalidrawElement) => T, isRelevantElement: true | ((element: ExcalidrawElement) => boolean), defaultValue: T | ((isSomeElementSelected: boolean) => T)) => T;
4
5
  export declare const actionChangeStrokeColor: {
5
6
  name: "changeStrokeColor";
6
7
  trackEvent: false;
7
8
  perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: any) => any;
8
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
9
+ PanelComponent: ({ elements, appState, updateData, appProps }: import("./types").PanelComponentProps) => JSX.Element;
9
10
  } & {
10
11
  keyTest?: undefined;
11
12
  };
@@ -13,14 +14,14 @@ export declare const actionChangeBackgroundColor: {
13
14
  name: "changeBackgroundColor";
14
15
  trackEvent: false;
15
16
  perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: any) => any;
16
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
17
+ PanelComponent: ({ elements, appState, updateData, appProps }: import("./types").PanelComponentProps) => JSX.Element;
17
18
  } & {
18
19
  keyTest?: undefined;
19
20
  };
20
21
  export declare const actionChangeFillStyle: {
21
22
  name: "changeFillStyle";
22
23
  trackEvent: false;
23
- perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: any) => {
24
+ perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: any, app: import("../../src/types").AppClassProperties) => {
24
25
  elements: ExcalidrawElement[];
25
26
  appState: {
26
27
  currentItemFillStyle: any;
@@ -31,7 +32,11 @@ export declare const actionChangeFillStyle: {
31
32
  } | null;
32
33
  showWelcomeScreen: boolean;
33
34
  isLoading: boolean;
34
- errorMessage: string | null;
35
+ errorMessage: import("react").ReactNode;
36
+ activeEmbeddable: {
37
+ element: import("../element/types").NonDeletedExcalidrawElement;
38
+ state: "active" | "hover";
39
+ } | null;
35
40
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
36
41
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
37
42
  multiElement: import("../element/types").NonDeleted<ExcalidrawLinearElement> | null;
@@ -39,19 +44,21 @@ export declare const actionChangeFillStyle: {
39
44
  isBindingEnabled: boolean;
40
45
  startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null;
41
46
  suggestedBindings: import("../element/binding").SuggestedBinding[];
47
+ frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null;
48
+ frameRendering: {
49
+ enabled: boolean;
50
+ name: boolean;
51
+ outline: boolean;
52
+ clip: boolean;
53
+ };
54
+ editingFrame: string | null;
55
+ elementsToHighlight: import("../element/types").NonDeleted<ExcalidrawElement>[] | null;
42
56
  editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
43
57
  editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
44
58
  activeTool: {
45
- type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
46
- lastActiveToolBeforeEraser: import("../../src/types").LastActiveToolBeforeEraser;
59
+ lastActiveTool: import("../../src/types").ActiveTool | null;
47
60
  locked: boolean;
48
- customType: null;
49
- } | {
50
- type: "custom";
51
- customType: string;
52
- lastActiveToolBeforeEraser: import("../../src/types").LastActiveToolBeforeEraser;
53
- locked: boolean;
54
- };
61
+ } & import("../../src/types").ActiveTool;
55
62
  penMode: boolean;
56
63
  penDetected: boolean;
57
64
  exportBackground: boolean;
@@ -82,17 +89,21 @@ export declare const actionChangeFillStyle: {
82
89
  value: import("../../src/types").NormalizedZoomValue;
83
90
  }>;
84
91
  openMenu: "canvas" | "shape" | null;
85
- openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
86
- openSidebar: "library" | "customSidebar" | null;
92
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | null;
93
+ openSidebar: {
94
+ name: string;
95
+ tab?: string | undefined;
96
+ } | null;
87
97
  openDialog: "imageExport" | "help" | "jsonExport" | null;
88
- isSidebarDocked: boolean;
98
+ defaultSidebarDockedPreference: boolean;
89
99
  lastPointerDownWith: import("../element/types").PointerType;
90
- selectedElementIds: {
91
- [id: string]: boolean;
92
- };
100
+ selectedElementIds: Readonly<{
101
+ [id: string]: true;
102
+ }>;
93
103
  previousSelectedElementIds: {
94
- [id: string]: boolean;
104
+ [id: string]: true;
95
105
  };
106
+ selectedElementsAreBeingDragged: boolean;
96
107
  shouldCacheIgnoreZoom: boolean;
97
108
  toast: {
98
109
  message: string;
@@ -100,7 +111,7 @@ export declare const actionChangeFillStyle: {
100
111
  duration?: number | undefined;
101
112
  } | null;
102
113
  zenModeEnabled: boolean;
103
- theme: string;
114
+ theme: import("../element/types").Theme;
104
115
  gridSize: number | null;
105
116
  viewModeEnabled: boolean;
106
117
  selectedGroupIds: {
@@ -123,8 +134,14 @@ export declare const actionChangeFillStyle: {
123
134
  data: import("../charts").Spreadsheet;
124
135
  };
125
136
  pendingImageElementId: string | null;
126
- showHyperlinkPopup: false | "info" | "editor";
137
+ showHyperlinkPopup: false | "editor" | "info";
127
138
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
139
+ snapLines: readonly import("../snapping").SnapLine[];
140
+ originSnapOffset: {
141
+ x: number;
142
+ y: number;
143
+ } | null;
144
+ objectsSnapModeEnabled: boolean;
128
145
  };
129
146
  commitToHistory: true;
130
147
  };
@@ -146,7 +163,11 @@ export declare const actionChangeStrokeWidth: {
146
163
  } | null;
147
164
  showWelcomeScreen: boolean;
148
165
  isLoading: boolean;
149
- errorMessage: string | null;
166
+ errorMessage: import("react").ReactNode;
167
+ activeEmbeddable: {
168
+ element: import("../element/types").NonDeletedExcalidrawElement;
169
+ state: "active" | "hover";
170
+ } | null;
150
171
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
151
172
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
152
173
  multiElement: import("../element/types").NonDeleted<ExcalidrawLinearElement> | null;
@@ -154,19 +175,21 @@ export declare const actionChangeStrokeWidth: {
154
175
  isBindingEnabled: boolean;
155
176
  startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null;
156
177
  suggestedBindings: import("../element/binding").SuggestedBinding[];
178
+ frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null;
179
+ frameRendering: {
180
+ enabled: boolean;
181
+ name: boolean;
182
+ outline: boolean;
183
+ clip: boolean;
184
+ };
185
+ editingFrame: string | null;
186
+ elementsToHighlight: import("../element/types").NonDeleted<ExcalidrawElement>[] | null;
157
187
  editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
158
188
  editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
159
189
  activeTool: {
160
- type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
161
- lastActiveToolBeforeEraser: import("../../src/types").LastActiveToolBeforeEraser;
162
- locked: boolean;
163
- customType: null;
164
- } | {
165
- type: "custom";
166
- customType: string;
167
- lastActiveToolBeforeEraser: import("../../src/types").LastActiveToolBeforeEraser;
190
+ lastActiveTool: import("../../src/types").ActiveTool | null;
168
191
  locked: boolean;
169
- };
192
+ } & import("../../src/types").ActiveTool;
170
193
  penMode: boolean;
171
194
  penDetected: boolean;
172
195
  exportBackground: boolean;
@@ -197,17 +220,21 @@ export declare const actionChangeStrokeWidth: {
197
220
  value: import("../../src/types").NormalizedZoomValue;
198
221
  }>;
199
222
  openMenu: "canvas" | "shape" | null;
200
- openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
201
- openSidebar: "library" | "customSidebar" | null;
223
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | null;
224
+ openSidebar: {
225
+ name: string;
226
+ tab?: string | undefined;
227
+ } | null;
202
228
  openDialog: "imageExport" | "help" | "jsonExport" | null;
203
- isSidebarDocked: boolean;
229
+ defaultSidebarDockedPreference: boolean;
204
230
  lastPointerDownWith: import("../element/types").PointerType;
205
- selectedElementIds: {
206
- [id: string]: boolean;
207
- };
231
+ selectedElementIds: Readonly<{
232
+ [id: string]: true;
233
+ }>;
208
234
  previousSelectedElementIds: {
209
- [id: string]: boolean;
235
+ [id: string]: true;
210
236
  };
237
+ selectedElementsAreBeingDragged: boolean;
211
238
  shouldCacheIgnoreZoom: boolean;
212
239
  toast: {
213
240
  message: string;
@@ -215,7 +242,7 @@ export declare const actionChangeStrokeWidth: {
215
242
  duration?: number | undefined;
216
243
  } | null;
217
244
  zenModeEnabled: boolean;
218
- theme: string;
245
+ theme: import("../element/types").Theme;
219
246
  gridSize: number | null;
220
247
  viewModeEnabled: boolean;
221
248
  selectedGroupIds: {
@@ -238,8 +265,14 @@ export declare const actionChangeStrokeWidth: {
238
265
  data: import("../charts").Spreadsheet;
239
266
  };
240
267
  pendingImageElementId: string | null;
241
- showHyperlinkPopup: false | "info" | "editor";
268
+ showHyperlinkPopup: false | "editor" | "info";
242
269
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
270
+ snapLines: readonly import("../snapping").SnapLine[];
271
+ originSnapOffset: {
272
+ x: number;
273
+ y: number;
274
+ } | null;
275
+ objectsSnapModeEnabled: boolean;
243
276
  };
244
277
  commitToHistory: true;
245
278
  };
@@ -261,7 +294,11 @@ export declare const actionChangeSloppiness: {
261
294
  } | null;
262
295
  showWelcomeScreen: boolean;
263
296
  isLoading: boolean;
264
- errorMessage: string | null;
297
+ errorMessage: import("react").ReactNode;
298
+ activeEmbeddable: {
299
+ element: import("../element/types").NonDeletedExcalidrawElement;
300
+ state: "active" | "hover";
301
+ } | null;
265
302
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
266
303
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
267
304
  multiElement: import("../element/types").NonDeleted<ExcalidrawLinearElement> | null;
@@ -269,19 +306,21 @@ export declare const actionChangeSloppiness: {
269
306
  isBindingEnabled: boolean;
270
307
  startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null;
271
308
  suggestedBindings: import("../element/binding").SuggestedBinding[];
309
+ frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null;
310
+ frameRendering: {
311
+ enabled: boolean;
312
+ name: boolean;
313
+ outline: boolean;
314
+ clip: boolean;
315
+ };
316
+ editingFrame: string | null;
317
+ elementsToHighlight: import("../element/types").NonDeleted<ExcalidrawElement>[] | null;
272
318
  editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
273
319
  editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
274
320
  activeTool: {
275
- type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
276
- lastActiveToolBeforeEraser: import("../../src/types").LastActiveToolBeforeEraser;
321
+ lastActiveTool: import("../../src/types").ActiveTool | null;
277
322
  locked: boolean;
278
- customType: null;
279
- } | {
280
- type: "custom";
281
- customType: string;
282
- lastActiveToolBeforeEraser: import("../../src/types").LastActiveToolBeforeEraser;
283
- locked: boolean;
284
- };
323
+ } & import("../../src/types").ActiveTool;
285
324
  penMode: boolean;
286
325
  penDetected: boolean;
287
326
  exportBackground: boolean;
@@ -312,17 +351,21 @@ export declare const actionChangeSloppiness: {
312
351
  value: import("../../src/types").NormalizedZoomValue;
313
352
  }>;
314
353
  openMenu: "canvas" | "shape" | null;
315
- openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
316
- openSidebar: "library" | "customSidebar" | null;
354
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | null;
355
+ openSidebar: {
356
+ name: string;
357
+ tab?: string | undefined;
358
+ } | null;
317
359
  openDialog: "imageExport" | "help" | "jsonExport" | null;
318
- isSidebarDocked: boolean;
360
+ defaultSidebarDockedPreference: boolean;
319
361
  lastPointerDownWith: import("../element/types").PointerType;
320
- selectedElementIds: {
321
- [id: string]: boolean;
322
- };
362
+ selectedElementIds: Readonly<{
363
+ [id: string]: true;
364
+ }>;
323
365
  previousSelectedElementIds: {
324
- [id: string]: boolean;
366
+ [id: string]: true;
325
367
  };
368
+ selectedElementsAreBeingDragged: boolean;
326
369
  shouldCacheIgnoreZoom: boolean;
327
370
  toast: {
328
371
  message: string;
@@ -330,7 +373,7 @@ export declare const actionChangeSloppiness: {
330
373
  duration?: number | undefined;
331
374
  } | null;
332
375
  zenModeEnabled: boolean;
333
- theme: string;
376
+ theme: import("../element/types").Theme;
334
377
  gridSize: number | null;
335
378
  viewModeEnabled: boolean;
336
379
  selectedGroupIds: {
@@ -353,8 +396,14 @@ export declare const actionChangeSloppiness: {
353
396
  data: import("../charts").Spreadsheet;
354
397
  };
355
398
  pendingImageElementId: string | null;
356
- showHyperlinkPopup: false | "info" | "editor";
399
+ showHyperlinkPopup: false | "editor" | "info";
357
400
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
401
+ snapLines: readonly import("../snapping").SnapLine[];
402
+ originSnapOffset: {
403
+ x: number;
404
+ y: number;
405
+ } | null;
406
+ objectsSnapModeEnabled: boolean;
358
407
  };
359
408
  commitToHistory: true;
360
409
  };
@@ -376,7 +425,11 @@ export declare const actionChangeStrokeStyle: {
376
425
  } | null;
377
426
  showWelcomeScreen: boolean;
378
427
  isLoading: boolean;
379
- errorMessage: string | null;
428
+ errorMessage: import("react").ReactNode;
429
+ activeEmbeddable: {
430
+ element: import("../element/types").NonDeletedExcalidrawElement;
431
+ state: "active" | "hover";
432
+ } | null;
380
433
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
381
434
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
382
435
  multiElement: import("../element/types").NonDeleted<ExcalidrawLinearElement> | null;
@@ -384,19 +437,21 @@ export declare const actionChangeStrokeStyle: {
384
437
  isBindingEnabled: boolean;
385
438
  startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null;
386
439
  suggestedBindings: import("../element/binding").SuggestedBinding[];
440
+ frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null;
441
+ frameRendering: {
442
+ enabled: boolean;
443
+ name: boolean;
444
+ outline: boolean;
445
+ clip: boolean;
446
+ };
447
+ editingFrame: string | null;
448
+ elementsToHighlight: import("../element/types").NonDeleted<ExcalidrawElement>[] | null;
387
449
  editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
388
450
  editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
389
451
  activeTool: {
390
- type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
391
- lastActiveToolBeforeEraser: import("../../src/types").LastActiveToolBeforeEraser;
392
- locked: boolean;
393
- customType: null;
394
- } | {
395
- type: "custom";
396
- customType: string;
397
- lastActiveToolBeforeEraser: import("../../src/types").LastActiveToolBeforeEraser;
452
+ lastActiveTool: import("../../src/types").ActiveTool | null;
398
453
  locked: boolean;
399
- };
454
+ } & import("../../src/types").ActiveTool;
400
455
  penMode: boolean;
401
456
  penDetected: boolean;
402
457
  exportBackground: boolean;
@@ -427,17 +482,21 @@ export declare const actionChangeStrokeStyle: {
427
482
  value: import("../../src/types").NormalizedZoomValue;
428
483
  }>;
429
484
  openMenu: "canvas" | "shape" | null;
430
- openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
431
- openSidebar: "library" | "customSidebar" | null;
485
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | null;
486
+ openSidebar: {
487
+ name: string;
488
+ tab?: string | undefined;
489
+ } | null;
432
490
  openDialog: "imageExport" | "help" | "jsonExport" | null;
433
- isSidebarDocked: boolean;
491
+ defaultSidebarDockedPreference: boolean;
434
492
  lastPointerDownWith: import("../element/types").PointerType;
435
- selectedElementIds: {
436
- [id: string]: boolean;
437
- };
493
+ selectedElementIds: Readonly<{
494
+ [id: string]: true;
495
+ }>;
438
496
  previousSelectedElementIds: {
439
- [id: string]: boolean;
497
+ [id: string]: true;
440
498
  };
499
+ selectedElementsAreBeingDragged: boolean;
441
500
  shouldCacheIgnoreZoom: boolean;
442
501
  toast: {
443
502
  message: string;
@@ -445,7 +504,7 @@ export declare const actionChangeStrokeStyle: {
445
504
  duration?: number | undefined;
446
505
  } | null;
447
506
  zenModeEnabled: boolean;
448
- theme: string;
507
+ theme: import("../element/types").Theme;
449
508
  gridSize: number | null;
450
509
  viewModeEnabled: boolean;
451
510
  selectedGroupIds: {
@@ -468,8 +527,14 @@ export declare const actionChangeStrokeStyle: {
468
527
  data: import("../charts").Spreadsheet;
469
528
  };
470
529
  pendingImageElementId: string | null;
471
- showHyperlinkPopup: false | "info" | "editor";
530
+ showHyperlinkPopup: false | "editor" | "info";
472
531
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
532
+ snapLines: readonly import("../snapping").SnapLine[];
533
+ originSnapOffset: {
534
+ x: number;
535
+ y: number;
536
+ } | null;
537
+ objectsSnapModeEnabled: boolean;
473
538
  };
474
539
  commitToHistory: true;
475
540
  };
@@ -491,7 +556,11 @@ export declare const actionChangeOpacity: {
491
556
  } | null;
492
557
  showWelcomeScreen: boolean;
493
558
  isLoading: boolean;
494
- errorMessage: string | null;
559
+ errorMessage: import("react").ReactNode;
560
+ activeEmbeddable: {
561
+ element: import("../element/types").NonDeletedExcalidrawElement;
562
+ state: "active" | "hover";
563
+ } | null;
495
564
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
496
565
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
497
566
  multiElement: import("../element/types").NonDeleted<ExcalidrawLinearElement> | null;
@@ -499,19 +568,21 @@ export declare const actionChangeOpacity: {
499
568
  isBindingEnabled: boolean;
500
569
  startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null;
501
570
  suggestedBindings: import("../element/binding").SuggestedBinding[];
571
+ frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null;
572
+ frameRendering: {
573
+ enabled: boolean;
574
+ name: boolean;
575
+ outline: boolean;
576
+ clip: boolean;
577
+ };
578
+ editingFrame: string | null;
579
+ elementsToHighlight: import("../element/types").NonDeleted<ExcalidrawElement>[] | null;
502
580
  editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
503
581
  editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
504
582
  activeTool: {
505
- type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
506
- lastActiveToolBeforeEraser: import("../../src/types").LastActiveToolBeforeEraser;
507
- locked: boolean;
508
- customType: null;
509
- } | {
510
- type: "custom";
511
- customType: string;
512
- lastActiveToolBeforeEraser: import("../../src/types").LastActiveToolBeforeEraser;
583
+ lastActiveTool: import("../../src/types").ActiveTool | null;
513
584
  locked: boolean;
514
- };
585
+ } & import("../../src/types").ActiveTool;
515
586
  penMode: boolean;
516
587
  penDetected: boolean;
517
588
  exportBackground: boolean;
@@ -542,17 +613,21 @@ export declare const actionChangeOpacity: {
542
613
  value: import("../../src/types").NormalizedZoomValue;
543
614
  }>;
544
615
  openMenu: "canvas" | "shape" | null;
545
- openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
546
- openSidebar: "library" | "customSidebar" | null;
616
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | null;
617
+ openSidebar: {
618
+ name: string;
619
+ tab?: string | undefined;
620
+ } | null;
547
621
  openDialog: "imageExport" | "help" | "jsonExport" | null;
548
- isSidebarDocked: boolean;
622
+ defaultSidebarDockedPreference: boolean;
549
623
  lastPointerDownWith: import("../element/types").PointerType;
550
- selectedElementIds: {
551
- [id: string]: boolean;
552
- };
624
+ selectedElementIds: Readonly<{
625
+ [id: string]: true;
626
+ }>;
553
627
  previousSelectedElementIds: {
554
- [id: string]: boolean;
628
+ [id: string]: true;
555
629
  };
630
+ selectedElementsAreBeingDragged: boolean;
556
631
  shouldCacheIgnoreZoom: boolean;
557
632
  toast: {
558
633
  message: string;
@@ -560,7 +635,7 @@ export declare const actionChangeOpacity: {
560
635
  duration?: number | undefined;
561
636
  } | null;
562
637
  zenModeEnabled: boolean;
563
- theme: string;
638
+ theme: import("../element/types").Theme;
564
639
  gridSize: number | null;
565
640
  viewModeEnabled: boolean;
566
641
  selectedGroupIds: {
@@ -583,8 +658,14 @@ export declare const actionChangeOpacity: {
583
658
  data: import("../charts").Spreadsheet;
584
659
  };
585
660
  pendingImageElementId: string | null;
586
- showHyperlinkPopup: false | "info" | "editor";
661
+ showHyperlinkPopup: false | "editor" | "info";
587
662
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
663
+ snapLines: readonly import("../snapping").SnapLine[];
664
+ originSnapOffset: {
665
+ x: number;
666
+ y: number;
667
+ } | null;
668
+ objectsSnapModeEnabled: boolean;
588
669
  };
589
670
  commitToHistory: true;
590
671
  };
@@ -606,7 +687,11 @@ export declare const actionChangeFontSize: {
606
687
  } | null;
607
688
  showWelcomeScreen: boolean;
608
689
  isLoading: boolean;
609
- errorMessage: string | null;
690
+ errorMessage: import("react").ReactNode;
691
+ activeEmbeddable: {
692
+ element: import("../element/types").NonDeletedExcalidrawElement;
693
+ state: "active" | "hover";
694
+ } | null;
610
695
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
611
696
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
612
697
  multiElement: import("../element/types").NonDeleted<ExcalidrawLinearElement> | null;
@@ -614,19 +699,21 @@ export declare const actionChangeFontSize: {
614
699
  isBindingEnabled: boolean;
615
700
  startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null;
616
701
  suggestedBindings: import("../element/binding").SuggestedBinding[];
702
+ frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null;
703
+ frameRendering: {
704
+ enabled: boolean;
705
+ name: boolean;
706
+ outline: boolean;
707
+ clip: boolean;
708
+ };
709
+ editingFrame: string | null;
710
+ elementsToHighlight: import("../element/types").NonDeleted<ExcalidrawElement>[] | null;
617
711
  editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
618
712
  editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
619
713
  activeTool: {
620
- type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
621
- lastActiveToolBeforeEraser: import("../../src/types").LastActiveToolBeforeEraser;
714
+ lastActiveTool: import("../../src/types").ActiveTool | null;
622
715
  locked: boolean;
623
- customType: null;
624
- } | {
625
- type: "custom";
626
- customType: string;
627
- lastActiveToolBeforeEraser: import("../../src/types").LastActiveToolBeforeEraser;
628
- locked: boolean;
629
- };
716
+ } & import("../../src/types").ActiveTool;
630
717
  penMode: boolean;
631
718
  penDetected: boolean;
632
719
  exportBackground: boolean;
@@ -657,17 +744,21 @@ export declare const actionChangeFontSize: {
657
744
  value: import("../../src/types").NormalizedZoomValue;
658
745
  }>;
659
746
  openMenu: "canvas" | "shape" | null;
660
- openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
661
- openSidebar: "library" | "customSidebar" | null;
747
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | null;
748
+ openSidebar: {
749
+ name: string;
750
+ tab?: string | undefined;
751
+ } | null;
662
752
  openDialog: "imageExport" | "help" | "jsonExport" | null;
663
- isSidebarDocked: boolean;
753
+ defaultSidebarDockedPreference: boolean;
664
754
  lastPointerDownWith: import("../element/types").PointerType;
665
- selectedElementIds: {
666
- [id: string]: boolean;
667
- };
755
+ selectedElementIds: Readonly<{
756
+ [id: string]: true;
757
+ }>;
668
758
  previousSelectedElementIds: {
669
- [id: string]: boolean;
759
+ [id: string]: true;
670
760
  };
761
+ selectedElementsAreBeingDragged: boolean;
671
762
  shouldCacheIgnoreZoom: boolean;
672
763
  toast: {
673
764
  message: string;
@@ -675,7 +766,7 @@ export declare const actionChangeFontSize: {
675
766
  duration?: number | undefined;
676
767
  } | null;
677
768
  zenModeEnabled: boolean;
678
- theme: string;
769
+ theme: import("../element/types").Theme;
679
770
  gridSize: number | null;
680
771
  viewModeEnabled: boolean;
681
772
  selectedGroupIds: {
@@ -698,8 +789,14 @@ export declare const actionChangeFontSize: {
698
789
  data: import("../charts").Spreadsheet;
699
790
  };
700
791
  pendingImageElementId: string | null;
701
- showHyperlinkPopup: false | "info" | "editor";
792
+ showHyperlinkPopup: false | "editor" | "info";
702
793
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
794
+ snapLines: readonly import("../snapping").SnapLine[];
795
+ originSnapOffset: {
796
+ x: number;
797
+ y: number;
798
+ } | null;
799
+ objectsSnapModeEnabled: boolean;
703
800
  };
704
801
  commitToHistory: boolean;
705
802
  };
@@ -721,7 +818,11 @@ export declare const actionDecreaseFontSize: {
721
818
  } | null;
722
819
  showWelcomeScreen: boolean;
723
820
  isLoading: boolean;
724
- errorMessage: string | null;
821
+ errorMessage: import("react").ReactNode;
822
+ activeEmbeddable: {
823
+ element: import("../element/types").NonDeletedExcalidrawElement;
824
+ state: "active" | "hover";
825
+ } | null;
725
826
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
726
827
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
727
828
  multiElement: import("../element/types").NonDeleted<ExcalidrawLinearElement> | null;
@@ -729,19 +830,21 @@ export declare const actionDecreaseFontSize: {
729
830
  isBindingEnabled: boolean;
730
831
  startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null;
731
832
  suggestedBindings: import("../element/binding").SuggestedBinding[];
833
+ frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null;
834
+ frameRendering: {
835
+ enabled: boolean;
836
+ name: boolean;
837
+ outline: boolean;
838
+ clip: boolean;
839
+ };
840
+ editingFrame: string | null;
841
+ elementsToHighlight: import("../element/types").NonDeleted<ExcalidrawElement>[] | null;
732
842
  editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
733
843
  editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
734
844
  activeTool: {
735
- type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
736
- lastActiveToolBeforeEraser: import("../../src/types").LastActiveToolBeforeEraser;
737
- locked: boolean;
738
- customType: null;
739
- } | {
740
- type: "custom";
741
- customType: string;
742
- lastActiveToolBeforeEraser: import("../../src/types").LastActiveToolBeforeEraser;
845
+ lastActiveTool: import("../../src/types").ActiveTool | null;
743
846
  locked: boolean;
744
- };
847
+ } & import("../../src/types").ActiveTool;
745
848
  penMode: boolean;
746
849
  penDetected: boolean;
747
850
  exportBackground: boolean;
@@ -772,17 +875,21 @@ export declare const actionDecreaseFontSize: {
772
875
  value: import("../../src/types").NormalizedZoomValue;
773
876
  }>;
774
877
  openMenu: "canvas" | "shape" | null;
775
- openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
776
- openSidebar: "library" | "customSidebar" | null;
878
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | null;
879
+ openSidebar: {
880
+ name: string;
881
+ tab?: string | undefined;
882
+ } | null;
777
883
  openDialog: "imageExport" | "help" | "jsonExport" | null;
778
- isSidebarDocked: boolean;
884
+ defaultSidebarDockedPreference: boolean;
779
885
  lastPointerDownWith: import("../element/types").PointerType;
780
- selectedElementIds: {
781
- [id: string]: boolean;
782
- };
886
+ selectedElementIds: Readonly<{
887
+ [id: string]: true;
888
+ }>;
783
889
  previousSelectedElementIds: {
784
- [id: string]: boolean;
890
+ [id: string]: true;
785
891
  };
892
+ selectedElementsAreBeingDragged: boolean;
786
893
  shouldCacheIgnoreZoom: boolean;
787
894
  toast: {
788
895
  message: string;
@@ -790,7 +897,7 @@ export declare const actionDecreaseFontSize: {
790
897
  duration?: number | undefined;
791
898
  } | null;
792
899
  zenModeEnabled: boolean;
793
- theme: string;
900
+ theme: import("../element/types").Theme;
794
901
  gridSize: number | null;
795
902
  viewModeEnabled: boolean;
796
903
  selectedGroupIds: {
@@ -813,14 +920,20 @@ export declare const actionDecreaseFontSize: {
813
920
  data: import("../charts").Spreadsheet;
814
921
  };
815
922
  pendingImageElementId: string | null;
816
- showHyperlinkPopup: false | "info" | "editor";
923
+ showHyperlinkPopup: false | "editor" | "info";
817
924
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
925
+ snapLines: readonly import("../snapping").SnapLine[];
926
+ originSnapOffset: {
927
+ x: number;
928
+ y: number;
929
+ } | null;
930
+ objectsSnapModeEnabled: boolean;
818
931
  };
819
932
  commitToHistory: boolean;
820
933
  };
821
- keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
934
+ keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
822
935
  } & {
823
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
936
+ keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
824
937
  };
825
938
  export declare const actionIncreaseFontSize: {
826
939
  name: "increaseFontSize";
@@ -836,7 +949,11 @@ export declare const actionIncreaseFontSize: {
836
949
  } | null;
837
950
  showWelcomeScreen: boolean;
838
951
  isLoading: boolean;
839
- errorMessage: string | null;
952
+ errorMessage: import("react").ReactNode;
953
+ activeEmbeddable: {
954
+ element: import("../element/types").NonDeletedExcalidrawElement;
955
+ state: "active" | "hover";
956
+ } | null;
840
957
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
841
958
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
842
959
  multiElement: import("../element/types").NonDeleted<ExcalidrawLinearElement> | null;
@@ -844,19 +961,21 @@ export declare const actionIncreaseFontSize: {
844
961
  isBindingEnabled: boolean;
845
962
  startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null;
846
963
  suggestedBindings: import("../element/binding").SuggestedBinding[];
964
+ frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null;
965
+ frameRendering: {
966
+ enabled: boolean;
967
+ name: boolean;
968
+ outline: boolean;
969
+ clip: boolean;
970
+ };
971
+ editingFrame: string | null;
972
+ elementsToHighlight: import("../element/types").NonDeleted<ExcalidrawElement>[] | null;
847
973
  editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
848
974
  editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
849
975
  activeTool: {
850
- type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
851
- lastActiveToolBeforeEraser: import("../../src/types").LastActiveToolBeforeEraser;
852
- locked: boolean;
853
- customType: null;
854
- } | {
855
- type: "custom";
856
- customType: string;
857
- lastActiveToolBeforeEraser: import("../../src/types").LastActiveToolBeforeEraser;
976
+ lastActiveTool: import("../../src/types").ActiveTool | null;
858
977
  locked: boolean;
859
- };
978
+ } & import("../../src/types").ActiveTool;
860
979
  penMode: boolean;
861
980
  penDetected: boolean;
862
981
  exportBackground: boolean;
@@ -887,17 +1006,21 @@ export declare const actionIncreaseFontSize: {
887
1006
  value: import("../../src/types").NormalizedZoomValue;
888
1007
  }>;
889
1008
  openMenu: "canvas" | "shape" | null;
890
- openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
891
- openSidebar: "library" | "customSidebar" | null;
1009
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | null;
1010
+ openSidebar: {
1011
+ name: string;
1012
+ tab?: string | undefined;
1013
+ } | null;
892
1014
  openDialog: "imageExport" | "help" | "jsonExport" | null;
893
- isSidebarDocked: boolean;
1015
+ defaultSidebarDockedPreference: boolean;
894
1016
  lastPointerDownWith: import("../element/types").PointerType;
895
- selectedElementIds: {
896
- [id: string]: boolean;
897
- };
1017
+ selectedElementIds: Readonly<{
1018
+ [id: string]: true;
1019
+ }>;
898
1020
  previousSelectedElementIds: {
899
- [id: string]: boolean;
1021
+ [id: string]: true;
900
1022
  };
1023
+ selectedElementsAreBeingDragged: boolean;
901
1024
  shouldCacheIgnoreZoom: boolean;
902
1025
  toast: {
903
1026
  message: string;
@@ -905,7 +1028,7 @@ export declare const actionIncreaseFontSize: {
905
1028
  duration?: number | undefined;
906
1029
  } | null;
907
1030
  zenModeEnabled: boolean;
908
- theme: string;
1031
+ theme: import("../element/types").Theme;
909
1032
  gridSize: number | null;
910
1033
  viewModeEnabled: boolean;
911
1034
  selectedGroupIds: {
@@ -928,14 +1051,20 @@ export declare const actionIncreaseFontSize: {
928
1051
  data: import("../charts").Spreadsheet;
929
1052
  };
930
1053
  pendingImageElementId: string | null;
931
- showHyperlinkPopup: false | "info" | "editor";
1054
+ showHyperlinkPopup: false | "editor" | "info";
932
1055
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
1056
+ snapLines: readonly import("../snapping").SnapLine[];
1057
+ originSnapOffset: {
1058
+ x: number;
1059
+ y: number;
1060
+ } | null;
1061
+ objectsSnapModeEnabled: boolean;
933
1062
  };
934
1063
  commitToHistory: boolean;
935
1064
  };
936
- keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
1065
+ keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
937
1066
  } & {
938
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
1067
+ keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
939
1068
  };
940
1069
  export declare const actionChangeFontFamily: {
941
1070
  name: "changeFontFamily";
@@ -951,7 +1080,11 @@ export declare const actionChangeFontFamily: {
951
1080
  } | null;
952
1081
  showWelcomeScreen: boolean;
953
1082
  isLoading: boolean;
954
- errorMessage: string | null;
1083
+ errorMessage: import("react").ReactNode;
1084
+ activeEmbeddable: {
1085
+ element: import("../element/types").NonDeletedExcalidrawElement;
1086
+ state: "active" | "hover";
1087
+ } | null;
955
1088
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
956
1089
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
957
1090
  multiElement: import("../element/types").NonDeleted<ExcalidrawLinearElement> | null;
@@ -959,19 +1092,21 @@ export declare const actionChangeFontFamily: {
959
1092
  isBindingEnabled: boolean;
960
1093
  startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null;
961
1094
  suggestedBindings: import("../element/binding").SuggestedBinding[];
1095
+ frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null;
1096
+ frameRendering: {
1097
+ enabled: boolean;
1098
+ name: boolean;
1099
+ outline: boolean;
1100
+ clip: boolean;
1101
+ };
1102
+ editingFrame: string | null;
1103
+ elementsToHighlight: import("../element/types").NonDeleted<ExcalidrawElement>[] | null;
962
1104
  editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
963
1105
  editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
964
1106
  activeTool: {
965
- type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
966
- lastActiveToolBeforeEraser: import("../../src/types").LastActiveToolBeforeEraser;
1107
+ lastActiveTool: import("../../src/types").ActiveTool | null;
967
1108
  locked: boolean;
968
- customType: null;
969
- } | {
970
- type: "custom";
971
- customType: string;
972
- lastActiveToolBeforeEraser: import("../../src/types").LastActiveToolBeforeEraser;
973
- locked: boolean;
974
- };
1109
+ } & import("../../src/types").ActiveTool;
975
1110
  penMode: boolean;
976
1111
  penDetected: boolean;
977
1112
  exportBackground: boolean;
@@ -1002,17 +1137,21 @@ export declare const actionChangeFontFamily: {
1002
1137
  value: import("../../src/types").NormalizedZoomValue;
1003
1138
  }>;
1004
1139
  openMenu: "canvas" | "shape" | null;
1005
- openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
1006
- openSidebar: "library" | "customSidebar" | null;
1140
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | null;
1141
+ openSidebar: {
1142
+ name: string;
1143
+ tab?: string | undefined;
1144
+ } | null;
1007
1145
  openDialog: "imageExport" | "help" | "jsonExport" | null;
1008
- isSidebarDocked: boolean;
1146
+ defaultSidebarDockedPreference: boolean;
1009
1147
  lastPointerDownWith: import("../element/types").PointerType;
1010
- selectedElementIds: {
1011
- [id: string]: boolean;
1012
- };
1148
+ selectedElementIds: Readonly<{
1149
+ [id: string]: true;
1150
+ }>;
1013
1151
  previousSelectedElementIds: {
1014
- [id: string]: boolean;
1152
+ [id: string]: true;
1015
1153
  };
1154
+ selectedElementsAreBeingDragged: boolean;
1016
1155
  shouldCacheIgnoreZoom: boolean;
1017
1156
  toast: {
1018
1157
  message: string;
@@ -1020,7 +1159,7 @@ export declare const actionChangeFontFamily: {
1020
1159
  duration?: number | undefined;
1021
1160
  } | null;
1022
1161
  zenModeEnabled: boolean;
1023
- theme: string;
1162
+ theme: import("../element/types").Theme;
1024
1163
  gridSize: number | null;
1025
1164
  viewModeEnabled: boolean;
1026
1165
  selectedGroupIds: {
@@ -1043,8 +1182,14 @@ export declare const actionChangeFontFamily: {
1043
1182
  data: import("../charts").Spreadsheet;
1044
1183
  };
1045
1184
  pendingImageElementId: string | null;
1046
- showHyperlinkPopup: false | "info" | "editor";
1185
+ showHyperlinkPopup: false | "editor" | "info";
1047
1186
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
1187
+ snapLines: readonly import("../snapping").SnapLine[];
1188
+ originSnapOffset: {
1189
+ x: number;
1190
+ y: number;
1191
+ } | null;
1192
+ objectsSnapModeEnabled: boolean;
1048
1193
  };
1049
1194
  commitToHistory: true;
1050
1195
  };
@@ -1066,7 +1211,11 @@ export declare const actionChangeTextAlign: {
1066
1211
  } | null;
1067
1212
  showWelcomeScreen: boolean;
1068
1213
  isLoading: boolean;
1069
- errorMessage: string | null;
1214
+ errorMessage: import("react").ReactNode;
1215
+ activeEmbeddable: {
1216
+ element: import("../element/types").NonDeletedExcalidrawElement;
1217
+ state: "active" | "hover";
1218
+ } | null;
1070
1219
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
1071
1220
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
1072
1221
  multiElement: import("../element/types").NonDeleted<ExcalidrawLinearElement> | null;
@@ -1074,19 +1223,21 @@ export declare const actionChangeTextAlign: {
1074
1223
  isBindingEnabled: boolean;
1075
1224
  startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null;
1076
1225
  suggestedBindings: import("../element/binding").SuggestedBinding[];
1226
+ frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null;
1227
+ frameRendering: {
1228
+ enabled: boolean;
1229
+ name: boolean;
1230
+ outline: boolean;
1231
+ clip: boolean;
1232
+ };
1233
+ editingFrame: string | null;
1234
+ elementsToHighlight: import("../element/types").NonDeleted<ExcalidrawElement>[] | null;
1077
1235
  editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
1078
1236
  editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
1079
1237
  activeTool: {
1080
- type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
1081
- lastActiveToolBeforeEraser: import("../../src/types").LastActiveToolBeforeEraser;
1082
- locked: boolean;
1083
- customType: null;
1084
- } | {
1085
- type: "custom";
1086
- customType: string;
1087
- lastActiveToolBeforeEraser: import("../../src/types").LastActiveToolBeforeEraser;
1238
+ lastActiveTool: import("../../src/types").ActiveTool | null;
1088
1239
  locked: boolean;
1089
- };
1240
+ } & import("../../src/types").ActiveTool;
1090
1241
  penMode: boolean;
1091
1242
  penDetected: boolean;
1092
1243
  exportBackground: boolean;
@@ -1117,17 +1268,21 @@ export declare const actionChangeTextAlign: {
1117
1268
  value: import("../../src/types").NormalizedZoomValue;
1118
1269
  }>;
1119
1270
  openMenu: "canvas" | "shape" | null;
1120
- openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
1121
- openSidebar: "library" | "customSidebar" | null;
1271
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | null;
1272
+ openSidebar: {
1273
+ name: string;
1274
+ tab?: string | undefined;
1275
+ } | null;
1122
1276
  openDialog: "imageExport" | "help" | "jsonExport" | null;
1123
- isSidebarDocked: boolean;
1277
+ defaultSidebarDockedPreference: boolean;
1124
1278
  lastPointerDownWith: import("../element/types").PointerType;
1125
- selectedElementIds: {
1126
- [id: string]: boolean;
1127
- };
1279
+ selectedElementIds: Readonly<{
1280
+ [id: string]: true;
1281
+ }>;
1128
1282
  previousSelectedElementIds: {
1129
- [id: string]: boolean;
1283
+ [id: string]: true;
1130
1284
  };
1285
+ selectedElementsAreBeingDragged: boolean;
1131
1286
  shouldCacheIgnoreZoom: boolean;
1132
1287
  toast: {
1133
1288
  message: string;
@@ -1135,7 +1290,7 @@ export declare const actionChangeTextAlign: {
1135
1290
  duration?: number | undefined;
1136
1291
  } | null;
1137
1292
  zenModeEnabled: boolean;
1138
- theme: string;
1293
+ theme: import("../element/types").Theme;
1139
1294
  gridSize: number | null;
1140
1295
  viewModeEnabled: boolean;
1141
1296
  selectedGroupIds: {
@@ -1158,8 +1313,14 @@ export declare const actionChangeTextAlign: {
1158
1313
  data: import("../charts").Spreadsheet;
1159
1314
  };
1160
1315
  pendingImageElementId: string | null;
1161
- showHyperlinkPopup: false | "info" | "editor";
1316
+ showHyperlinkPopup: false | "editor" | "info";
1162
1317
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
1318
+ snapLines: readonly import("../snapping").SnapLine[];
1319
+ originSnapOffset: {
1320
+ x: number;
1321
+ y: number;
1322
+ } | null;
1323
+ objectsSnapModeEnabled: boolean;
1163
1324
  };
1164
1325
  commitToHistory: true;
1165
1326
  };
@@ -1182,7 +1343,11 @@ export declare const actionChangeVerticalAlign: {
1182
1343
  } | null;
1183
1344
  showWelcomeScreen: boolean;
1184
1345
  isLoading: boolean;
1185
- errorMessage: string | null;
1346
+ errorMessage: import("react").ReactNode;
1347
+ activeEmbeddable: {
1348
+ element: import("../element/types").NonDeletedExcalidrawElement;
1349
+ state: "active" | "hover";
1350
+ } | null;
1186
1351
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
1187
1352
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
1188
1353
  multiElement: import("../element/types").NonDeleted<ExcalidrawLinearElement> | null;
@@ -1190,19 +1355,21 @@ export declare const actionChangeVerticalAlign: {
1190
1355
  isBindingEnabled: boolean;
1191
1356
  startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null;
1192
1357
  suggestedBindings: import("../element/binding").SuggestedBinding[];
1358
+ frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null;
1359
+ frameRendering: {
1360
+ enabled: boolean;
1361
+ name: boolean;
1362
+ outline: boolean;
1363
+ clip: boolean;
1364
+ };
1365
+ editingFrame: string | null;
1366
+ elementsToHighlight: import("../element/types").NonDeleted<ExcalidrawElement>[] | null;
1193
1367
  editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
1194
1368
  editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
1195
1369
  activeTool: {
1196
- type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
1197
- lastActiveToolBeforeEraser: import("../../src/types").LastActiveToolBeforeEraser;
1370
+ lastActiveTool: import("../../src/types").ActiveTool | null;
1198
1371
  locked: boolean;
1199
- customType: null;
1200
- } | {
1201
- type: "custom";
1202
- customType: string;
1203
- lastActiveToolBeforeEraser: import("../../src/types").LastActiveToolBeforeEraser;
1204
- locked: boolean;
1205
- };
1372
+ } & import("../../src/types").ActiveTool;
1206
1373
  penMode: boolean;
1207
1374
  penDetected: boolean;
1208
1375
  exportBackground: boolean;
@@ -1234,17 +1401,21 @@ export declare const actionChangeVerticalAlign: {
1234
1401
  value: import("../../src/types").NormalizedZoomValue;
1235
1402
  }>;
1236
1403
  openMenu: "canvas" | "shape" | null;
1237
- openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
1238
- openSidebar: "library" | "customSidebar" | null;
1404
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | null;
1405
+ openSidebar: {
1406
+ name: string;
1407
+ tab?: string | undefined;
1408
+ } | null;
1239
1409
  openDialog: "imageExport" | "help" | "jsonExport" | null;
1240
- isSidebarDocked: boolean;
1410
+ defaultSidebarDockedPreference: boolean;
1241
1411
  lastPointerDownWith: import("../element/types").PointerType;
1242
- selectedElementIds: {
1243
- [id: string]: boolean;
1244
- };
1412
+ selectedElementIds: Readonly<{
1413
+ [id: string]: true;
1414
+ }>;
1245
1415
  previousSelectedElementIds: {
1246
- [id: string]: boolean;
1416
+ [id: string]: true;
1247
1417
  };
1418
+ selectedElementsAreBeingDragged: boolean;
1248
1419
  shouldCacheIgnoreZoom: boolean;
1249
1420
  toast: {
1250
1421
  message: string;
@@ -1252,7 +1423,7 @@ export declare const actionChangeVerticalAlign: {
1252
1423
  duration?: number | undefined;
1253
1424
  } | null;
1254
1425
  zenModeEnabled: boolean;
1255
- theme: string;
1426
+ theme: import("../element/types").Theme;
1256
1427
  gridSize: number | null;
1257
1428
  viewModeEnabled: boolean;
1258
1429
  selectedGroupIds: {
@@ -1275,8 +1446,14 @@ export declare const actionChangeVerticalAlign: {
1275
1446
  data: import("../charts").Spreadsheet;
1276
1447
  };
1277
1448
  pendingImageElementId: string | null;
1278
- showHyperlinkPopup: false | "info" | "editor";
1449
+ showHyperlinkPopup: false | "editor" | "info";
1279
1450
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
1451
+ snapLines: readonly import("../snapping").SnapLine[];
1452
+ originSnapOffset: {
1453
+ x: number;
1454
+ y: number;
1455
+ } | null;
1456
+ objectsSnapModeEnabled: boolean;
1280
1457
  };
1281
1458
  commitToHistory: true;
1282
1459
  };
@@ -1298,7 +1475,11 @@ export declare const actionChangeRoundness: {
1298
1475
  } | null;
1299
1476
  showWelcomeScreen: boolean;
1300
1477
  isLoading: boolean;
1301
- errorMessage: string | null;
1478
+ errorMessage: import("react").ReactNode;
1479
+ activeEmbeddable: {
1480
+ element: import("../element/types").NonDeletedExcalidrawElement;
1481
+ state: "active" | "hover";
1482
+ } | null;
1302
1483
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
1303
1484
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
1304
1485
  multiElement: import("../element/types").NonDeleted<ExcalidrawLinearElement> | null;
@@ -1306,19 +1487,21 @@ export declare const actionChangeRoundness: {
1306
1487
  isBindingEnabled: boolean;
1307
1488
  startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null;
1308
1489
  suggestedBindings: import("../element/binding").SuggestedBinding[];
1490
+ frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null;
1491
+ frameRendering: {
1492
+ enabled: boolean;
1493
+ name: boolean;
1494
+ outline: boolean;
1495
+ clip: boolean;
1496
+ };
1497
+ editingFrame: string | null;
1498
+ elementsToHighlight: import("../element/types").NonDeleted<ExcalidrawElement>[] | null;
1309
1499
  editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
1310
1500
  editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
1311
1501
  activeTool: {
1312
- type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
1313
- lastActiveToolBeforeEraser: import("../../src/types").LastActiveToolBeforeEraser;
1314
- locked: boolean;
1315
- customType: null;
1316
- } | {
1317
- type: "custom";
1318
- customType: string;
1319
- lastActiveToolBeforeEraser: import("../../src/types").LastActiveToolBeforeEraser;
1502
+ lastActiveTool: import("../../src/types").ActiveTool | null;
1320
1503
  locked: boolean;
1321
- };
1504
+ } & import("../../src/types").ActiveTool;
1322
1505
  penMode: boolean;
1323
1506
  penDetected: boolean;
1324
1507
  exportBackground: boolean;
@@ -1349,17 +1532,21 @@ export declare const actionChangeRoundness: {
1349
1532
  value: import("../../src/types").NormalizedZoomValue;
1350
1533
  }>;
1351
1534
  openMenu: "canvas" | "shape" | null;
1352
- openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
1353
- openSidebar: "library" | "customSidebar" | null;
1535
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | null;
1536
+ openSidebar: {
1537
+ name: string;
1538
+ tab?: string | undefined;
1539
+ } | null;
1354
1540
  openDialog: "imageExport" | "help" | "jsonExport" | null;
1355
- isSidebarDocked: boolean;
1541
+ defaultSidebarDockedPreference: boolean;
1356
1542
  lastPointerDownWith: import("../element/types").PointerType;
1357
- selectedElementIds: {
1358
- [id: string]: boolean;
1359
- };
1543
+ selectedElementIds: Readonly<{
1544
+ [id: string]: true;
1545
+ }>;
1360
1546
  previousSelectedElementIds: {
1361
- [id: string]: boolean;
1547
+ [id: string]: true;
1362
1548
  };
1549
+ selectedElementsAreBeingDragged: boolean;
1363
1550
  shouldCacheIgnoreZoom: boolean;
1364
1551
  toast: {
1365
1552
  message: string;
@@ -1367,7 +1554,7 @@ export declare const actionChangeRoundness: {
1367
1554
  duration?: number | undefined;
1368
1555
  } | null;
1369
1556
  zenModeEnabled: boolean;
1370
- theme: string;
1557
+ theme: import("../element/types").Theme;
1371
1558
  gridSize: number | null;
1372
1559
  viewModeEnabled: boolean;
1373
1560
  selectedGroupIds: {
@@ -1390,8 +1577,14 @@ export declare const actionChangeRoundness: {
1390
1577
  data: import("../charts").Spreadsheet;
1391
1578
  };
1392
1579
  pendingImageElementId: string | null;
1393
- showHyperlinkPopup: false | "info" | "editor";
1580
+ showHyperlinkPopup: false | "editor" | "info";
1394
1581
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
1582
+ snapLines: readonly import("../snapping").SnapLine[];
1583
+ originSnapOffset: {
1584
+ x: number;
1585
+ y: number;
1586
+ } | null;
1587
+ objectsSnapModeEnabled: boolean;
1395
1588
  };
1396
1589
  commitToHistory: true;
1397
1590
  };
@@ -1415,7 +1608,11 @@ export declare const actionChangeArrowhead: {
1415
1608
  } | null;
1416
1609
  showWelcomeScreen: boolean;
1417
1610
  isLoading: boolean;
1418
- errorMessage: string | null;
1611
+ errorMessage: import("react").ReactNode;
1612
+ activeEmbeddable: {
1613
+ element: import("../element/types").NonDeletedExcalidrawElement;
1614
+ state: "active" | "hover";
1615
+ } | null;
1419
1616
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
1420
1617
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
1421
1618
  multiElement: import("../element/types").NonDeleted<ExcalidrawLinearElement> | null;
@@ -1423,19 +1620,21 @@ export declare const actionChangeArrowhead: {
1423
1620
  isBindingEnabled: boolean;
1424
1621
  startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null;
1425
1622
  suggestedBindings: import("../element/binding").SuggestedBinding[];
1623
+ frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null;
1624
+ frameRendering: {
1625
+ enabled: boolean;
1626
+ name: boolean;
1627
+ outline: boolean;
1628
+ clip: boolean;
1629
+ };
1630
+ editingFrame: string | null;
1631
+ elementsToHighlight: import("../element/types").NonDeleted<ExcalidrawElement>[] | null;
1426
1632
  editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
1427
1633
  editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
1428
1634
  activeTool: {
1429
- type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
1430
- lastActiveToolBeforeEraser: import("../../src/types").LastActiveToolBeforeEraser;
1635
+ lastActiveTool: import("../../src/types").ActiveTool | null;
1431
1636
  locked: boolean;
1432
- customType: null;
1433
- } | {
1434
- type: "custom";
1435
- customType: string;
1436
- lastActiveToolBeforeEraser: import("../../src/types").LastActiveToolBeforeEraser;
1437
- locked: boolean;
1438
- };
1637
+ } & import("../../src/types").ActiveTool;
1439
1638
  penMode: boolean;
1440
1639
  penDetected: boolean;
1441
1640
  exportBackground: boolean;
@@ -1467,17 +1666,21 @@ export declare const actionChangeArrowhead: {
1467
1666
  value: import("../../src/types").NormalizedZoomValue;
1468
1667
  }>;
1469
1668
  openMenu: "canvas" | "shape" | null;
1470
- openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
1471
- openSidebar: "library" | "customSidebar" | null;
1669
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | null;
1670
+ openSidebar: {
1671
+ name: string;
1672
+ tab?: string | undefined;
1673
+ } | null;
1472
1674
  openDialog: "imageExport" | "help" | "jsonExport" | null;
1473
- isSidebarDocked: boolean;
1675
+ defaultSidebarDockedPreference: boolean;
1474
1676
  lastPointerDownWith: import("../element/types").PointerType;
1475
- selectedElementIds: {
1476
- [id: string]: boolean;
1477
- };
1677
+ selectedElementIds: Readonly<{
1678
+ [id: string]: true;
1679
+ }>;
1478
1680
  previousSelectedElementIds: {
1479
- [id: string]: boolean;
1681
+ [id: string]: true;
1480
1682
  };
1683
+ selectedElementsAreBeingDragged: boolean;
1481
1684
  shouldCacheIgnoreZoom: boolean;
1482
1685
  toast: {
1483
1686
  message: string;
@@ -1485,7 +1688,7 @@ export declare const actionChangeArrowhead: {
1485
1688
  duration?: number | undefined;
1486
1689
  } | null;
1487
1690
  zenModeEnabled: boolean;
1488
- theme: string;
1691
+ theme: import("../element/types").Theme;
1489
1692
  gridSize: number | null;
1490
1693
  viewModeEnabled: boolean;
1491
1694
  selectedGroupIds: {
@@ -1508,8 +1711,14 @@ export declare const actionChangeArrowhead: {
1508
1711
  data: import("../charts").Spreadsheet;
1509
1712
  };
1510
1713
  pendingImageElementId: string | null;
1511
- showHyperlinkPopup: false | "info" | "editor";
1714
+ showHyperlinkPopup: false | "editor" | "info";
1512
1715
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
1716
+ snapLines: readonly import("../snapping").SnapLine[];
1717
+ originSnapOffset: {
1718
+ x: number;
1719
+ y: number;
1720
+ } | null;
1721
+ objectsSnapModeEnabled: boolean;
1513
1722
  };
1514
1723
  commitToHistory: true;
1515
1724
  };