@excalidraw/element 0.18.0-063e025 → 0.18.0-1118751

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 (154) hide show
  1. package/dist/dev/index.js +13047 -9808
  2. package/dist/dev/index.js.map +4 -4
  3. package/dist/prod/index.js +19 -19
  4. package/dist/types/common/src/colors.d.ts +22 -0
  5. package/dist/types/common/src/constants.d.ts +54 -0
  6. package/dist/types/common/src/keys.d.ts +4 -0
  7. package/dist/types/common/src/points.d.ts +1 -1
  8. package/dist/types/common/src/random.d.ts +7 -0
  9. package/dist/types/common/src/utils.d.ts +1 -1
  10. package/dist/types/element/src/Scene.d.ts +1 -1
  11. package/dist/types/element/src/arrowEndpointText.d.ts +49 -0
  12. package/dist/types/element/src/arrows/focus.d.ts +5 -2
  13. package/dist/types/element/src/binding.d.ts +15 -8
  14. package/dist/types/element/src/bucketFill.d.ts +110 -0
  15. package/dist/types/element/src/collision.d.ts +8 -5
  16. package/dist/types/element/src/comparisons.d.ts +7 -5
  17. package/dist/types/element/src/convertToShape.d.ts +23 -0
  18. package/dist/types/element/src/delta.d.ts +23 -1
  19. package/dist/types/element/src/dragElements.d.ts +27 -0
  20. package/dist/types/element/src/duplicate.d.ts +60 -0
  21. package/dist/types/element/src/flowchart.d.ts +10 -6
  22. package/dist/types/element/src/frame.d.ts +2 -2
  23. package/dist/types/element/src/groups.d.ts +1 -1
  24. package/dist/types/element/src/index.d.ts +4 -0
  25. package/dist/types/element/src/linearElementEditor.d.ts +17 -0
  26. package/dist/types/element/src/mutateElement.d.ts +1 -1
  27. package/dist/types/element/src/newElement.d.ts +37 -2
  28. package/dist/types/element/src/renderElement.d.ts +21 -4
  29. package/dist/types/element/src/selection.d.ts +1 -1
  30. package/dist/types/element/src/shape.d.ts +27 -1
  31. package/dist/types/element/src/sizeHelpers.d.ts +6 -0
  32. package/dist/types/element/src/sortElements.d.ts +10 -0
  33. package/dist/types/element/src/stickyNote.d.ts +183 -0
  34. package/dist/types/element/src/textElement.d.ts +7 -3
  35. package/dist/types/element/src/transform.d.ts +25 -6
  36. package/dist/types/element/src/typeChecks.d.ts +3 -2
  37. package/dist/types/element/src/types.d.ts +35 -6
  38. package/dist/types/element/src/utils.d.ts +15 -4
  39. package/dist/types/element/src/zindex.d.ts +1 -1
  40. package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +48 -9
  41. package/dist/types/excalidraw/actions/actionAlign.d.ts +6 -6
  42. package/dist/types/excalidraw/actions/actionBoundText.d.ts +32 -6
  43. package/dist/types/excalidraw/actions/actionCanvas.d.ts +173 -576
  44. package/dist/types/excalidraw/actions/actionClipboard.d.ts +32 -6
  45. package/dist/types/excalidraw/actions/actionCropEditor.d.ts +16 -3
  46. package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +50 -10
  47. package/dist/types/excalidraw/actions/actionDeselect.d.ts +13 -3
  48. package/dist/types/excalidraw/actions/actionDistribute.d.ts +2 -2
  49. package/dist/types/excalidraw/actions/actionElementLink.d.ts +16 -3
  50. package/dist/types/excalidraw/actions/actionElementLock.d.ts +32 -6
  51. package/dist/types/excalidraw/actions/actionExport.d.ts +34 -8
  52. package/dist/types/excalidraw/actions/actionFinalize.d.ts +1 -0
  53. package/dist/types/excalidraw/actions/actionFrame.d.ts +99 -185
  54. package/dist/types/excalidraw/actions/actionGroup.d.ts +33 -7
  55. package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +68 -4
  56. package/dist/types/excalidraw/actions/actionLink.d.ts +16 -3
  57. package/dist/types/excalidraw/actions/actionMenu.d.ts +16 -3
  58. package/dist/types/excalidraw/actions/actionProperties.d.ts +45 -12
  59. package/dist/types/excalidraw/actions/actionSelectAll.d.ts +16 -3
  60. package/dist/types/excalidraw/actions/actionStyles.d.ts +17 -4
  61. package/dist/types/excalidraw/actions/actionTextAutoResize.d.ts +1 -1
  62. package/dist/types/excalidraw/actions/actionToggleArrowBinding.d.ts +16 -3
  63. package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +16 -3
  64. package/dist/types/excalidraw/actions/actionToggleMidpointSnapping.d.ts +16 -3
  65. package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +16 -3
  66. package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +16 -3
  67. package/dist/types/excalidraw/actions/actionToggleStats.d.ts +16 -3
  68. package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +17 -4
  69. package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +16 -3
  70. package/dist/types/excalidraw/actions/colorTargets.d.ts +39 -0
  71. package/dist/types/excalidraw/actions/index.d.ts +1 -2
  72. package/dist/types/excalidraw/actions/manager.d.ts +1 -0
  73. package/dist/types/excalidraw/actions/shortcuts.d.ts +1 -1
  74. package/dist/types/excalidraw/actions/types.d.ts +5 -1
  75. package/dist/types/excalidraw/appState.d.ts +26 -5
  76. package/dist/types/excalidraw/components/Actions.d.ts +16 -10
  77. package/dist/types/excalidraw/components/App.arrowText.d.ts +104 -0
  78. package/dist/types/excalidraw/components/App.bucketFill.d.ts +48 -0
  79. package/dist/types/excalidraw/components/App.cursor.d.ts +38 -0
  80. package/dist/types/excalidraw/components/App.d.ts +468 -99
  81. package/dist/types/excalidraw/components/App.drawshape.d.ts +55 -0
  82. package/dist/types/excalidraw/components/App.duplicate.d.ts +51 -0
  83. package/dist/types/excalidraw/components/App.flowchart.d.ts +21 -0
  84. package/dist/types/excalidraw/components/App.pan.d.ts +54 -0
  85. package/dist/types/excalidraw/components/App.toolDrag.d.ts +63 -0
  86. package/dist/types/excalidraw/components/App.viewport.d.ts +73 -0
  87. package/dist/types/excalidraw/components/App.wheel.d.ts +26 -0
  88. package/dist/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +8 -2
  89. package/dist/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +3 -1
  90. package/dist/types/excalidraw/components/ColorPicker/Picker.d.ts +5 -1
  91. package/dist/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +9 -2
  92. package/dist/types/excalidraw/components/ColorPicker/ShadeList.d.ts +4 -2
  93. package/dist/types/excalidraw/components/ColorPicker/TopPicks.d.ts +8 -1
  94. package/dist/types/excalidraw/components/ColorPicker/colorTopPicksDnD.d.ts +11 -0
  95. package/dist/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +2 -1
  96. package/dist/types/excalidraw/components/FontPicker/FontPicker.d.ts +4 -1
  97. package/dist/types/excalidraw/components/FontPicker/FontPickerList.d.ts +6 -1
  98. package/dist/types/excalidraw/components/FontPicker/fontTopPicksDnD.d.ts +12 -0
  99. package/dist/types/excalidraw/components/IconButton.d.ts +48 -0
  100. package/dist/types/excalidraw/components/LaserPointerButton.d.ts +2 -4
  101. package/dist/types/excalidraw/components/LayerUI.d.ts +5 -2
  102. package/dist/types/excalidraw/components/LockButton.d.ts +3 -4
  103. package/dist/types/excalidraw/components/MagicButton.d.ts +0 -2
  104. package/dist/types/excalidraw/components/MobileMenu.d.ts +4 -4
  105. package/dist/types/excalidraw/components/MobileToolbar.d.ts +9 -0
  106. package/dist/types/excalidraw/components/PenModeButton.d.ts +2 -5
  107. package/dist/types/excalidraw/components/Popover.d.ts +1 -3
  108. package/dist/types/excalidraw/components/{ButtonIcon.d.ts → RadioButton.d.ts} +2 -5
  109. package/dist/types/excalidraw/components/ToolPopover.d.ts +3 -6
  110. package/dist/types/excalidraw/components/Toolbar.d.ts +11 -0
  111. package/dist/types/excalidraw/components/Tools.d.ts +151 -0
  112. package/dist/types/excalidraw/components/TopPicksDnD/TopPicksContextMenu.d.ts +14 -0
  113. package/dist/types/excalidraw/components/TopPicksDnD/TopPicksTip.d.ts +11 -0
  114. package/dist/types/excalidraw/components/TopPicksDnD/topPicksDnD.d.ts +58 -0
  115. package/dist/types/excalidraw/components/UserList.d.ts +3 -2
  116. package/dist/types/excalidraw/components/ViewportStatusFrame/ViewportStatusFrame.d.ts +11 -0
  117. package/dist/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +2 -0
  118. package/dist/types/excalidraw/components/canvases/NewElementCanvas.d.ts +2 -0
  119. package/dist/types/excalidraw/components/footer/Footer.d.ts +3 -1
  120. package/dist/types/excalidraw/components/icons.d.ts +5 -1
  121. package/dist/types/excalidraw/components/main-menu/DefaultItems.d.ts +2 -1
  122. package/dist/types/excalidraw/components/positionElementBesideCursor.d.ts +26 -0
  123. package/dist/types/excalidraw/components/shapeActionPredicates.d.ts +39 -0
  124. package/dist/types/excalidraw/data/blob.d.ts +36 -10
  125. package/dist/types/excalidraw/data/json.d.ts +18 -5
  126. package/dist/types/excalidraw/drawShapeTrail.d.ts +16 -0
  127. package/dist/types/excalidraw/fonts/Fonts.d.ts +3 -2
  128. package/dist/types/excalidraw/hooks/useTextEditorFocus.d.ts +5 -5
  129. package/dist/types/excalidraw/lasso/utils.d.ts +2 -0
  130. package/dist/types/excalidraw/renderOverrides.d.ts +9 -0
  131. package/dist/types/excalidraw/renderer/helpers.d.ts +25 -0
  132. package/dist/types/excalidraw/renderer/interactiveScene.d.ts +1 -1
  133. package/dist/types/excalidraw/scene/Renderer.d.ts +64 -2
  134. package/dist/types/excalidraw/scene/index.d.ts +1 -1
  135. package/dist/types/excalidraw/scene/types.d.ts +6 -1
  136. package/dist/types/excalidraw/types.d.ts +341 -21
  137. package/dist/types/excalidraw/viewport.d.ts +31 -66
  138. package/dist/types/laser-pointer/src/state.d.ts +1 -0
  139. package/dist/types/math/src/curve.d.ts +19 -12
  140. package/dist/types/math/src/index.d.ts +1 -0
  141. package/dist/types/math/src/pca.d.ts +79 -0
  142. package/dist/types/math/src/polygon.d.ts +25 -1
  143. package/dist/types/math/src/segment.d.ts +6 -0
  144. package/dist/types/utils/src/export.d.ts +1 -0
  145. package/dist/types/utils/src/shape.d.ts +2 -2
  146. package/package.json +4 -4
  147. package/dist/types/excalidraw/actions/actionEmbeddable.d.ts +0 -173
  148. package/dist/types/excalidraw/components/FollowMode/FollowMode.d.ts +0 -10
  149. package/dist/types/excalidraw/components/HandButton.d.ts +0 -10
  150. package/dist/types/excalidraw/components/MobileToolBar.d.ts +0 -10
  151. package/dist/types/excalidraw/components/ToolButton.d.ts +0 -49
  152. package/dist/types/excalidraw/components/shapes.d.ts +0 -270
  153. package/dist/types/excalidraw/cursor.d.ts +0 -5
  154. package/dist/types/excalidraw/scene/zoom.d.ts +0 -12
@@ -1,7 +1,6 @@
1
- import type { ExcalidrawElement } from "@excalidraw/element/types";
2
1
  import type { AppState } from "../types";
3
2
  export declare const actionChangeViewBackgroundColor: import("./types").Action<Partial<AppState>> & {
4
- keyTest?: ((event: React.KeyboardEvent | KeyboardEvent, appState: AppState, elements: readonly ExcalidrawElement[], app: import("../types").AppClassProperties) => boolean) | undefined;
3
+ keyTest?: ((event: React.KeyboardEvent | KeyboardEvent, appState: AppState, elements: readonly import("@excalidraw/element/types").ExcalidrawElement[], app: import("../types").AppClassProperties) => boolean) | undefined;
5
4
  };
6
5
  export declare const actionClearCanvas: {
7
6
  name: "clearCanvas";
@@ -10,7 +9,7 @@ export declare const actionClearCanvas: {
10
9
  trackEvent: {
11
10
  category: "canvas";
12
11
  };
13
- predicate: (elements: readonly ExcalidrawElement[], appState: AppState, props: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
12
+ predicate: (elements: readonly import("@excalidraw/element/types").ExcalidrawElement[], appState: AppState, props: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
14
13
  perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
15
14
  elements: import("@excalidraw/element/types").OrderedExcalidrawElement[];
16
15
  appState: {
@@ -27,6 +26,14 @@ export declare const actionClearCanvas: {
27
26
  open: boolean;
28
27
  panels: number;
29
28
  };
29
+ colorTopPicks: {
30
+ elementStroke: readonly string[] | null;
31
+ elementBackground: readonly string[] | null;
32
+ bucketFill: readonly string[] | null;
33
+ stickyNoteStroke: readonly string[] | null;
34
+ stickyNoteBackground: readonly string[] | null;
35
+ };
36
+ fontTopPicks: readonly number[] | null;
30
37
  activeTool: {
31
38
  lastActiveTool: import("../types").ActiveTool | null;
32
39
  locked: boolean;
@@ -55,7 +62,7 @@ export declare const actionClearCanvas: {
55
62
  name: "settings";
56
63
  } | {
57
64
  name: "elementLinkSelector";
58
- sourceElementId: ExcalidrawElement["id"];
65
+ sourceElementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
59
66
  } | {
60
67
  name: "charts";
61
68
  data: import("../charts").Spreadsheet;
@@ -83,6 +90,10 @@ export declare const actionClearCanvas: {
83
90
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
84
91
  midPoint?: import("@excalidraw/math").GlobalPoint;
85
92
  } | null;
93
+ hoveredArrowTextAnchor: {
94
+ elementId: import("@excalidraw/element/types").ExcalidrawArrowElement["id"];
95
+ anchor: "start" | "end" | "label";
96
+ } | null;
86
97
  isRotating: boolean;
87
98
  elementsToHighlight: readonly import("@excalidraw/element/types").NonDeletedExcalidrawElement[] | null;
88
99
  collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
@@ -90,9 +101,9 @@ export declare const actionClearCanvas: {
90
101
  zenModeEnabled: boolean;
91
102
  editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null;
92
103
  isCropping: boolean;
93
- croppingElementId: ExcalidrawElement["id"] | null;
104
+ croppingElementId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
94
105
  searchMatches: Readonly<{
95
- focusedId: ExcalidrawElement["id"] | null;
106
+ focusedId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
96
107
  matches: readonly import("../types").SearchMatch[];
97
108
  }> | null;
98
109
  activeLockedId: string | null;
@@ -114,17 +125,20 @@ export declare const actionClearCanvas: {
114
125
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
115
126
  boxSelectionMode: import("../types").BoxSelectionMode;
116
127
  bindingPreference: "enabled" | "disabled";
117
- editingFrame: string | null;
128
+ inputDevice: import("../types").InputDevice;
129
+ editingFrame: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["id"] | null;
118
130
  preferredSelectionTool: {
119
131
  type: "selection" | "lasso";
120
132
  initialized: boolean;
121
133
  };
122
134
  exportWithDarkMode: boolean;
123
135
  currentItemStrokeColor: string;
136
+ currentItemStickynoteStrokeColor: string;
137
+ currentItemStickynoteBackgroundColor: string;
124
138
  currentItemBackgroundColor: string;
125
- currentItemFillStyle: ExcalidrawElement["fillStyle"];
139
+ currentItemFillStyle: import("@excalidraw/element/types").ExcalidrawElement["fillStyle"];
126
140
  currentItemStrokeWidthKey: import("@excalidraw/common").StrokeWidthKey;
127
- currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
141
+ currentItemStrokeStyle: import("@excalidraw/element/types").ExcalidrawElement["strokeStyle"];
128
142
  currentItemRoughness: number;
129
143
  currentItemStrokeVariability: import("@excalidraw/element/types").StrokeVariability;
130
144
  currentItemOpacity: number;
@@ -163,8 +177,6 @@ export declare const actionClearCanvas: {
163
177
  y: number;
164
178
  } | null;
165
179
  objectsSnapModeEnabled: boolean;
166
- userToFollow: import("../types").UserToFollow | null;
167
- followedBy: Set<import("../types").SocketId>;
168
180
  lockedMultiSelections: {
169
181
  [groupId: string]: true;
170
182
  };
@@ -178,16 +190,17 @@ export declare const actionZoomIn: {
178
190
  name: "zoomIn";
179
191
  label: string;
180
192
  viewMode: true;
193
+ navigation: true;
181
194
  icon: import("react/jsx-runtime").JSX.Element;
182
195
  trackEvent: {
183
196
  category: "canvas";
184
197
  };
198
+ predicate: (elements: readonly import("@excalidraw/element/types").ExcalidrawElement[], appState: AppState, appProps: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
185
199
  perform: (_elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
186
200
  appState: {
187
201
  zoom: import("../types").Zoom;
188
202
  scrollX: number;
189
203
  scrollY: number;
190
- userToFollow: null;
191
204
  contextMenu: {
192
205
  items: import("../components/ContextMenu").ContextMenuItems;
193
206
  top: number;
@@ -208,10 +221,15 @@ export declare const actionZoomIn: {
208
221
  boxSelectionMode: import("../types").BoxSelectionMode;
209
222
  bindingPreference: "enabled" | "disabled";
210
223
  isMidpointSnappingEnabled: boolean;
224
+ inputDevice: import("../types").InputDevice;
211
225
  suggestedBinding: {
212
226
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
213
227
  midPoint?: import("@excalidraw/math").GlobalPoint;
214
228
  } | null;
229
+ hoveredArrowTextAnchor: {
230
+ elementId: import("@excalidraw/element/types").ExcalidrawArrowElement["id"];
231
+ anchor: "start" | "end" | "label";
232
+ } | null;
215
233
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
216
234
  frameRendering: {
217
235
  enabled: boolean;
@@ -219,7 +237,7 @@ export declare const actionZoomIn: {
219
237
  outline: boolean;
220
238
  clip: boolean;
221
239
  };
222
- editingFrame: string | null;
240
+ editingFrame: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["id"] | null;
223
241
  elementsToHighlight: readonly import("@excalidraw/element/types").NonDeletedExcalidrawElement[] | null;
224
242
  editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null;
225
243
  activeTool: {
@@ -238,10 +256,12 @@ export declare const actionZoomIn: {
238
256
  exportWithDarkMode: boolean;
239
257
  exportScale: number;
240
258
  currentItemStrokeColor: string;
259
+ currentItemStickynoteStrokeColor: string;
260
+ currentItemStickynoteBackgroundColor: string;
241
261
  currentItemBackgroundColor: string;
242
- currentItemFillStyle: ExcalidrawElement["fillStyle"];
262
+ currentItemFillStyle: import("@excalidraw/element/types").ExcalidrawElement["fillStyle"];
243
263
  currentItemStrokeWidthKey: import("@excalidraw/common").StrokeWidthKey;
244
- currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
264
+ currentItemStrokeStyle: import("@excalidraw/element/types").ExcalidrawElement["strokeStyle"];
245
265
  currentItemRoughness: number;
246
266
  currentItemStrokeVariability: import("@excalidraw/element/types").StrokeVariability;
247
267
  currentItemOpacity: number;
@@ -277,7 +297,7 @@ export declare const actionZoomIn: {
277
297
  name: "settings";
278
298
  } | {
279
299
  name: "elementLinkSelector";
280
- sourceElementId: ExcalidrawElement["id"];
300
+ sourceElementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
281
301
  } | {
282
302
  name: "charts";
283
303
  data: import("../charts").Spreadsheet;
@@ -329,11 +349,10 @@ export declare const actionZoomIn: {
329
349
  y: number;
330
350
  } | null;
331
351
  objectsSnapModeEnabled: boolean;
332
- followedBy: Set<import("../types").SocketId>;
333
352
  isCropping: boolean;
334
- croppingElementId: ExcalidrawElement["id"] | null;
353
+ croppingElementId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
335
354
  searchMatches: Readonly<{
336
- focusedId: ExcalidrawElement["id"] | null;
355
+ focusedId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
337
356
  matches: readonly import("../types").SearchMatch[];
338
357
  }> | null;
339
358
  activeLockedId: string | null;
@@ -341,6 +360,14 @@ export declare const actionZoomIn: {
341
360
  [groupId: string]: true;
342
361
  };
343
362
  bindMode: import("@excalidraw/element/types").BindMode;
363
+ colorTopPicks: {
364
+ elementStroke: readonly string[] | null;
365
+ elementBackground: readonly string[] | null;
366
+ bucketFill: readonly string[] | null;
367
+ stickyNoteStroke: readonly string[] | null;
368
+ stickyNoteBackground: readonly string[] | null;
369
+ };
370
+ fontTopPicks: readonly import("@excalidraw/element/types").FontFamilyValues[] | null;
344
371
  };
345
372
  captureUpdate: "EVENTUALLY";
346
373
  };
@@ -354,15 +381,16 @@ export declare const actionZoomOut: {
354
381
  label: string;
355
382
  icon: import("react/jsx-runtime").JSX.Element;
356
383
  viewMode: true;
384
+ navigation: true;
357
385
  trackEvent: {
358
386
  category: "canvas";
359
387
  };
388
+ predicate: (elements: readonly import("@excalidraw/element/types").ExcalidrawElement[], appState: AppState, appProps: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
360
389
  perform: (_elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
361
390
  appState: {
362
391
  zoom: import("../types").Zoom;
363
392
  scrollX: number;
364
393
  scrollY: number;
365
- userToFollow: null;
366
394
  contextMenu: {
367
395
  items: import("../components/ContextMenu").ContextMenuItems;
368
396
  top: number;
@@ -383,10 +411,15 @@ export declare const actionZoomOut: {
383
411
  boxSelectionMode: import("../types").BoxSelectionMode;
384
412
  bindingPreference: "enabled" | "disabled";
385
413
  isMidpointSnappingEnabled: boolean;
414
+ inputDevice: import("../types").InputDevice;
386
415
  suggestedBinding: {
387
416
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
388
417
  midPoint?: import("@excalidraw/math").GlobalPoint;
389
418
  } | null;
419
+ hoveredArrowTextAnchor: {
420
+ elementId: import("@excalidraw/element/types").ExcalidrawArrowElement["id"];
421
+ anchor: "start" | "end" | "label";
422
+ } | null;
390
423
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
391
424
  frameRendering: {
392
425
  enabled: boolean;
@@ -394,7 +427,7 @@ export declare const actionZoomOut: {
394
427
  outline: boolean;
395
428
  clip: boolean;
396
429
  };
397
- editingFrame: string | null;
430
+ editingFrame: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["id"] | null;
398
431
  elementsToHighlight: readonly import("@excalidraw/element/types").NonDeletedExcalidrawElement[] | null;
399
432
  editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null;
400
433
  activeTool: {
@@ -413,10 +446,12 @@ export declare const actionZoomOut: {
413
446
  exportWithDarkMode: boolean;
414
447
  exportScale: number;
415
448
  currentItemStrokeColor: string;
449
+ currentItemStickynoteStrokeColor: string;
450
+ currentItemStickynoteBackgroundColor: string;
416
451
  currentItemBackgroundColor: string;
417
- currentItemFillStyle: ExcalidrawElement["fillStyle"];
452
+ currentItemFillStyle: import("@excalidraw/element/types").ExcalidrawElement["fillStyle"];
418
453
  currentItemStrokeWidthKey: import("@excalidraw/common").StrokeWidthKey;
419
- currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
454
+ currentItemStrokeStyle: import("@excalidraw/element/types").ExcalidrawElement["strokeStyle"];
420
455
  currentItemRoughness: number;
421
456
  currentItemStrokeVariability: import("@excalidraw/element/types").StrokeVariability;
422
457
  currentItemOpacity: number;
@@ -452,7 +487,7 @@ export declare const actionZoomOut: {
452
487
  name: "settings";
453
488
  } | {
454
489
  name: "elementLinkSelector";
455
- sourceElementId: ExcalidrawElement["id"];
490
+ sourceElementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
456
491
  } | {
457
492
  name: "charts";
458
493
  data: import("../charts").Spreadsheet;
@@ -504,11 +539,10 @@ export declare const actionZoomOut: {
504
539
  y: number;
505
540
  } | null;
506
541
  objectsSnapModeEnabled: boolean;
507
- followedBy: Set<import("../types").SocketId>;
508
542
  isCropping: boolean;
509
- croppingElementId: ExcalidrawElement["id"] | null;
543
+ croppingElementId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
510
544
  searchMatches: Readonly<{
511
- focusedId: ExcalidrawElement["id"] | null;
545
+ focusedId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
512
546
  matches: readonly import("../types").SearchMatch[];
513
547
  }> | null;
514
548
  activeLockedId: string | null;
@@ -516,6 +550,14 @@ export declare const actionZoomOut: {
516
550
  [groupId: string]: true;
517
551
  };
518
552
  bindMode: import("@excalidraw/element/types").BindMode;
553
+ colorTopPicks: {
554
+ elementStroke: readonly string[] | null;
555
+ elementBackground: readonly string[] | null;
556
+ bucketFill: readonly string[] | null;
557
+ stickyNoteStroke: readonly string[] | null;
558
+ stickyNoteBackground: readonly string[] | null;
559
+ };
560
+ fontTopPicks: readonly import("@excalidraw/element/types").FontFamilyValues[] | null;
519
561
  };
520
562
  captureUpdate: "EVENTUALLY";
521
563
  };
@@ -529,15 +571,16 @@ export declare const actionResetZoom: {
529
571
  label: string;
530
572
  icon: import("react/jsx-runtime").JSX.Element;
531
573
  viewMode: true;
574
+ navigation: true;
532
575
  trackEvent: {
533
576
  category: "canvas";
534
577
  };
578
+ predicate: (elements: readonly import("@excalidraw/element/types").ExcalidrawElement[], appState: AppState, appProps: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
535
579
  perform: (_elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
536
580
  appState: {
537
581
  zoom: import("../types").Zoom;
538
582
  scrollX: number;
539
583
  scrollY: number;
540
- userToFollow: null;
541
584
  contextMenu: {
542
585
  items: import("../components/ContextMenu").ContextMenuItems;
543
586
  top: number;
@@ -558,10 +601,15 @@ export declare const actionResetZoom: {
558
601
  boxSelectionMode: import("../types").BoxSelectionMode;
559
602
  bindingPreference: "enabled" | "disabled";
560
603
  isMidpointSnappingEnabled: boolean;
604
+ inputDevice: import("../types").InputDevice;
561
605
  suggestedBinding: {
562
606
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
563
607
  midPoint?: import("@excalidraw/math").GlobalPoint;
564
608
  } | null;
609
+ hoveredArrowTextAnchor: {
610
+ elementId: import("@excalidraw/element/types").ExcalidrawArrowElement["id"];
611
+ anchor: "start" | "end" | "label";
612
+ } | null;
565
613
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
566
614
  frameRendering: {
567
615
  enabled: boolean;
@@ -569,7 +617,7 @@ export declare const actionResetZoom: {
569
617
  outline: boolean;
570
618
  clip: boolean;
571
619
  };
572
- editingFrame: string | null;
620
+ editingFrame: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["id"] | null;
573
621
  elementsToHighlight: readonly import("@excalidraw/element/types").NonDeletedExcalidrawElement[] | null;
574
622
  editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null;
575
623
  activeTool: {
@@ -588,10 +636,12 @@ export declare const actionResetZoom: {
588
636
  exportWithDarkMode: boolean;
589
637
  exportScale: number;
590
638
  currentItemStrokeColor: string;
639
+ currentItemStickynoteStrokeColor: string;
640
+ currentItemStickynoteBackgroundColor: string;
591
641
  currentItemBackgroundColor: string;
592
- currentItemFillStyle: ExcalidrawElement["fillStyle"];
642
+ currentItemFillStyle: import("@excalidraw/element/types").ExcalidrawElement["fillStyle"];
593
643
  currentItemStrokeWidthKey: import("@excalidraw/common").StrokeWidthKey;
594
- currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
644
+ currentItemStrokeStyle: import("@excalidraw/element/types").ExcalidrawElement["strokeStyle"];
595
645
  currentItemRoughness: number;
596
646
  currentItemStrokeVariability: import("@excalidraw/element/types").StrokeVariability;
597
647
  currentItemOpacity: number;
@@ -627,7 +677,7 @@ export declare const actionResetZoom: {
627
677
  name: "settings";
628
678
  } | {
629
679
  name: "elementLinkSelector";
630
- sourceElementId: ExcalidrawElement["id"];
680
+ sourceElementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
631
681
  } | {
632
682
  name: "charts";
633
683
  data: import("../charts").Spreadsheet;
@@ -679,11 +729,10 @@ export declare const actionResetZoom: {
679
729
  y: number;
680
730
  } | null;
681
731
  objectsSnapModeEnabled: boolean;
682
- followedBy: Set<import("../types").SocketId>;
683
732
  isCropping: boolean;
684
- croppingElementId: ExcalidrawElement["id"] | null;
733
+ croppingElementId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
685
734
  searchMatches: Readonly<{
686
- focusedId: ExcalidrawElement["id"] | null;
735
+ focusedId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
687
736
  matches: readonly import("../types").SearchMatch[];
688
737
  }> | null;
689
738
  activeLockedId: string | null;
@@ -691,6 +740,14 @@ export declare const actionResetZoom: {
691
740
  [groupId: string]: true;
692
741
  };
693
742
  bindMode: import("@excalidraw/element/types").BindMode;
743
+ colorTopPicks: {
744
+ elementStroke: readonly string[] | null;
745
+ elementBackground: readonly string[] | null;
746
+ bucketFill: readonly string[] | null;
747
+ stickyNoteStroke: readonly string[] | null;
748
+ stickyNoteBackground: readonly string[] | null;
749
+ };
750
+ fontTopPicks: readonly import("@excalidraw/element/types").FontFamilyValues[] | null;
694
751
  };
695
752
  captureUpdate: "EVENTUALLY";
696
753
  };
@@ -703,17 +760,17 @@ export declare const actionZoomToFitSelectionInViewport: {
703
760
  name: "zoomToFitSelectionInViewport";
704
761
  label: string;
705
762
  icon: import("react/jsx-runtime").JSX.Element;
763
+ viewMode: true;
764
+ navigation: true;
706
765
  trackEvent: {
707
766
  category: "canvas";
708
767
  };
709
- predicate: (elements: readonly ExcalidrawElement[], appState: AppState) => boolean;
768
+ predicate: (elements: readonly import("@excalidraw/element/types").ExcalidrawElement[], appState: AppState, appProps: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
710
769
  perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
711
770
  appState: {
771
+ zoom: import("../types").Zoom;
712
772
  scrollX: number;
713
773
  scrollY: number;
714
- zoom: {
715
- value: import("../types").NormalizedZoomValue;
716
- };
717
774
  contextMenu: {
718
775
  items: import("../components/ContextMenu").ContextMenuItems;
719
776
  top: number;
@@ -734,10 +791,15 @@ export declare const actionZoomToFitSelectionInViewport: {
734
791
  boxSelectionMode: import("../types").BoxSelectionMode;
735
792
  bindingPreference: "enabled" | "disabled";
736
793
  isMidpointSnappingEnabled: boolean;
794
+ inputDevice: import("../types").InputDevice;
737
795
  suggestedBinding: {
738
796
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
739
797
  midPoint?: import("@excalidraw/math").GlobalPoint;
740
798
  } | null;
799
+ hoveredArrowTextAnchor: {
800
+ elementId: import("@excalidraw/element/types").ExcalidrawArrowElement["id"];
801
+ anchor: "start" | "end" | "label";
802
+ } | null;
741
803
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
742
804
  frameRendering: {
743
805
  enabled: boolean;
@@ -745,7 +807,7 @@ export declare const actionZoomToFitSelectionInViewport: {
745
807
  outline: boolean;
746
808
  clip: boolean;
747
809
  };
748
- editingFrame: string | null;
810
+ editingFrame: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["id"] | null;
749
811
  elementsToHighlight: readonly import("@excalidraw/element/types").NonDeletedExcalidrawElement[] | null;
750
812
  editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null;
751
813
  activeTool: {
@@ -764,10 +826,12 @@ export declare const actionZoomToFitSelectionInViewport: {
764
826
  exportWithDarkMode: boolean;
765
827
  exportScale: number;
766
828
  currentItemStrokeColor: string;
829
+ currentItemStickynoteStrokeColor: string;
830
+ currentItemStickynoteBackgroundColor: string;
767
831
  currentItemBackgroundColor: string;
768
- currentItemFillStyle: ExcalidrawElement["fillStyle"];
832
+ currentItemFillStyle: import("@excalidraw/element/types").ExcalidrawElement["fillStyle"];
769
833
  currentItemStrokeWidthKey: import("@excalidraw/common").StrokeWidthKey;
770
- currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
834
+ currentItemStrokeStyle: import("@excalidraw/element/types").ExcalidrawElement["strokeStyle"];
771
835
  currentItemRoughness: number;
772
836
  currentItemStrokeVariability: import("@excalidraw/element/types").StrokeVariability;
773
837
  currentItemOpacity: number;
@@ -803,7 +867,7 @@ export declare const actionZoomToFitSelectionInViewport: {
803
867
  name: "settings";
804
868
  } | {
805
869
  name: "elementLinkSelector";
806
- sourceElementId: ExcalidrawElement["id"];
870
+ sourceElementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
807
871
  } | {
808
872
  name: "charts";
809
873
  data: import("../charts").Spreadsheet;
@@ -855,12 +919,10 @@ export declare const actionZoomToFitSelectionInViewport: {
855
919
  y: number;
856
920
  } | null;
857
921
  objectsSnapModeEnabled: boolean;
858
- userToFollow: import("../types").UserToFollow | null;
859
- followedBy: Set<import("../types").SocketId>;
860
922
  isCropping: boolean;
861
- croppingElementId: ExcalidrawElement["id"] | null;
923
+ croppingElementId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
862
924
  searchMatches: Readonly<{
863
- focusedId: ExcalidrawElement["id"] | null;
925
+ focusedId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
864
926
  matches: readonly import("../types").SearchMatch[];
865
927
  }> | null;
866
928
  activeLockedId: string | null;
@@ -868,28 +930,36 @@ export declare const actionZoomToFitSelectionInViewport: {
868
930
  [groupId: string]: true;
869
931
  };
870
932
  bindMode: import("@excalidraw/element/types").BindMode;
933
+ colorTopPicks: {
934
+ elementStroke: readonly string[] | null;
935
+ elementBackground: readonly string[] | null;
936
+ bucketFill: readonly string[] | null;
937
+ stickyNoteStroke: readonly string[] | null;
938
+ stickyNoteBackground: readonly string[] | null;
939
+ };
940
+ fontTopPicks: readonly import("@excalidraw/element/types").FontFamilyValues[] | null;
871
941
  };
872
942
  captureUpdate: "EVENTUALLY";
873
943
  };
874
- keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>, appState: AppState) => boolean;
944
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
875
945
  } & {
876
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>, appState: AppState) => boolean) | undefined;
946
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
877
947
  };
878
948
  export declare const actionZoomToFitSelection: {
879
949
  name: "zoomToFitSelection";
880
950
  label: string;
881
951
  icon: import("react/jsx-runtime").JSX.Element;
952
+ viewMode: true;
953
+ navigation: true;
882
954
  trackEvent: {
883
955
  category: "canvas";
884
956
  };
885
- predicate: (elements: readonly ExcalidrawElement[], appState: AppState) => boolean;
957
+ predicate: (elements: readonly import("@excalidraw/element/types").ExcalidrawElement[], appState: AppState, appProps: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
886
958
  perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
887
959
  appState: {
960
+ zoom: import("../types").Zoom;
888
961
  scrollX: number;
889
962
  scrollY: number;
890
- zoom: {
891
- value: import("../types").NormalizedZoomValue;
892
- };
893
963
  contextMenu: {
894
964
  items: import("../components/ContextMenu").ContextMenuItems;
895
965
  top: number;
@@ -910,10 +980,15 @@ export declare const actionZoomToFitSelection: {
910
980
  boxSelectionMode: import("../types").BoxSelectionMode;
911
981
  bindingPreference: "enabled" | "disabled";
912
982
  isMidpointSnappingEnabled: boolean;
983
+ inputDevice: import("../types").InputDevice;
913
984
  suggestedBinding: {
914
985
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
915
986
  midPoint?: import("@excalidraw/math").GlobalPoint;
916
987
  } | null;
988
+ hoveredArrowTextAnchor: {
989
+ elementId: import("@excalidraw/element/types").ExcalidrawArrowElement["id"];
990
+ anchor: "start" | "end" | "label";
991
+ } | null;
917
992
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
918
993
  frameRendering: {
919
994
  enabled: boolean;
@@ -921,7 +996,7 @@ export declare const actionZoomToFitSelection: {
921
996
  outline: boolean;
922
997
  clip: boolean;
923
998
  };
924
- editingFrame: string | null;
999
+ editingFrame: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["id"] | null;
925
1000
  elementsToHighlight: readonly import("@excalidraw/element/types").NonDeletedExcalidrawElement[] | null;
926
1001
  editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null;
927
1002
  activeTool: {
@@ -940,10 +1015,12 @@ export declare const actionZoomToFitSelection: {
940
1015
  exportWithDarkMode: boolean;
941
1016
  exportScale: number;
942
1017
  currentItemStrokeColor: string;
1018
+ currentItemStickynoteStrokeColor: string;
1019
+ currentItemStickynoteBackgroundColor: string;
943
1020
  currentItemBackgroundColor: string;
944
- currentItemFillStyle: ExcalidrawElement["fillStyle"];
1021
+ currentItemFillStyle: import("@excalidraw/element/types").ExcalidrawElement["fillStyle"];
945
1022
  currentItemStrokeWidthKey: import("@excalidraw/common").StrokeWidthKey;
946
- currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
1023
+ currentItemStrokeStyle: import("@excalidraw/element/types").ExcalidrawElement["strokeStyle"];
947
1024
  currentItemRoughness: number;
948
1025
  currentItemStrokeVariability: import("@excalidraw/element/types").StrokeVariability;
949
1026
  currentItemOpacity: number;
@@ -979,7 +1056,7 @@ export declare const actionZoomToFitSelection: {
979
1056
  name: "settings";
980
1057
  } | {
981
1058
  name: "elementLinkSelector";
982
- sourceElementId: ExcalidrawElement["id"];
1059
+ sourceElementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
983
1060
  } | {
984
1061
  name: "charts";
985
1062
  data: import("../charts").Spreadsheet;
@@ -1031,12 +1108,10 @@ export declare const actionZoomToFitSelection: {
1031
1108
  y: number;
1032
1109
  } | null;
1033
1110
  objectsSnapModeEnabled: boolean;
1034
- userToFollow: import("../types").UserToFollow | null;
1035
- followedBy: Set<import("../types").SocketId>;
1036
1111
  isCropping: boolean;
1037
- croppingElementId: ExcalidrawElement["id"] | null;
1112
+ croppingElementId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
1038
1113
  searchMatches: Readonly<{
1039
- focusedId: ExcalidrawElement["id"] | null;
1114
+ focusedId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
1040
1115
  matches: readonly import("../types").SearchMatch[];
1041
1116
  }> | null;
1042
1117
  activeLockedId: string | null;
@@ -1044,29 +1119,36 @@ export declare const actionZoomToFitSelection: {
1044
1119
  [groupId: string]: true;
1045
1120
  };
1046
1121
  bindMode: import("@excalidraw/element/types").BindMode;
1122
+ colorTopPicks: {
1123
+ elementStroke: readonly string[] | null;
1124
+ elementBackground: readonly string[] | null;
1125
+ bucketFill: readonly string[] | null;
1126
+ stickyNoteStroke: readonly string[] | null;
1127
+ stickyNoteBackground: readonly string[] | null;
1128
+ };
1129
+ fontTopPicks: readonly import("@excalidraw/element/types").FontFamilyValues[] | null;
1047
1130
  };
1048
1131
  captureUpdate: "EVENTUALLY";
1049
1132
  };
1050
- keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>, appState: AppState) => boolean;
1133
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
1051
1134
  } & {
1052
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>, appState: AppState) => boolean) | undefined;
1135
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
1053
1136
  };
1054
1137
  export declare const actionZoomToFit: {
1055
1138
  name: "zoomToFit";
1056
1139
  label: string;
1057
1140
  icon: import("react/jsx-runtime").JSX.Element;
1058
1141
  viewMode: true;
1142
+ navigation: true;
1059
1143
  trackEvent: {
1060
1144
  category: "canvas";
1061
1145
  };
1062
- predicate: (elements: readonly ExcalidrawElement[], appState: AppState) => boolean;
1146
+ predicate: (elements: readonly import("@excalidraw/element/types").ExcalidrawElement[], appState: AppState, appProps: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
1063
1147
  perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
1064
1148
  appState: {
1149
+ zoom: import("../types").Zoom;
1065
1150
  scrollX: number;
1066
1151
  scrollY: number;
1067
- zoom: {
1068
- value: import("../types").NormalizedZoomValue;
1069
- };
1070
1152
  contextMenu: {
1071
1153
  items: import("../components/ContextMenu").ContextMenuItems;
1072
1154
  top: number;
@@ -1087,10 +1169,15 @@ export declare const actionZoomToFit: {
1087
1169
  boxSelectionMode: import("../types").BoxSelectionMode;
1088
1170
  bindingPreference: "enabled" | "disabled";
1089
1171
  isMidpointSnappingEnabled: boolean;
1172
+ inputDevice: import("../types").InputDevice;
1090
1173
  suggestedBinding: {
1091
1174
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
1092
1175
  midPoint?: import("@excalidraw/math").GlobalPoint;
1093
1176
  } | null;
1177
+ hoveredArrowTextAnchor: {
1178
+ elementId: import("@excalidraw/element/types").ExcalidrawArrowElement["id"];
1179
+ anchor: "start" | "end" | "label";
1180
+ } | null;
1094
1181
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1095
1182
  frameRendering: {
1096
1183
  enabled: boolean;
@@ -1098,7 +1185,7 @@ export declare const actionZoomToFit: {
1098
1185
  outline: boolean;
1099
1186
  clip: boolean;
1100
1187
  };
1101
- editingFrame: string | null;
1188
+ editingFrame: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["id"] | null;
1102
1189
  elementsToHighlight: readonly import("@excalidraw/element/types").NonDeletedExcalidrawElement[] | null;
1103
1190
  editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null;
1104
1191
  activeTool: {
@@ -1117,10 +1204,12 @@ export declare const actionZoomToFit: {
1117
1204
  exportWithDarkMode: boolean;
1118
1205
  exportScale: number;
1119
1206
  currentItemStrokeColor: string;
1207
+ currentItemStickynoteStrokeColor: string;
1208
+ currentItemStickynoteBackgroundColor: string;
1120
1209
  currentItemBackgroundColor: string;
1121
- currentItemFillStyle: ExcalidrawElement["fillStyle"];
1210
+ currentItemFillStyle: import("@excalidraw/element/types").ExcalidrawElement["fillStyle"];
1122
1211
  currentItemStrokeWidthKey: import("@excalidraw/common").StrokeWidthKey;
1123
- currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
1212
+ currentItemStrokeStyle: import("@excalidraw/element/types").ExcalidrawElement["strokeStyle"];
1124
1213
  currentItemRoughness: number;
1125
1214
  currentItemStrokeVariability: import("@excalidraw/element/types").StrokeVariability;
1126
1215
  currentItemOpacity: number;
@@ -1156,7 +1245,7 @@ export declare const actionZoomToFit: {
1156
1245
  name: "settings";
1157
1246
  } | {
1158
1247
  name: "elementLinkSelector";
1159
- sourceElementId: ExcalidrawElement["id"];
1248
+ sourceElementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
1160
1249
  } | {
1161
1250
  name: "charts";
1162
1251
  data: import("../charts").Spreadsheet;
@@ -1208,12 +1297,10 @@ export declare const actionZoomToFit: {
1208
1297
  y: number;
1209
1298
  } | null;
1210
1299
  objectsSnapModeEnabled: boolean;
1211
- userToFollow: import("../types").UserToFollow | null;
1212
- followedBy: Set<import("../types").SocketId>;
1213
1300
  isCropping: boolean;
1214
- croppingElementId: ExcalidrawElement["id"] | null;
1301
+ croppingElementId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
1215
1302
  searchMatches: Readonly<{
1216
- focusedId: ExcalidrawElement["id"] | null;
1303
+ focusedId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
1217
1304
  matches: readonly import("../types").SearchMatch[];
1218
1305
  }> | null;
1219
1306
  activeLockedId: string | null;
@@ -1221,511 +1308,21 @@ export declare const actionZoomToFit: {
1221
1308
  [groupId: string]: true;
1222
1309
  };
1223
1310
  bindMode: import("@excalidraw/element/types").BindMode;
1311
+ colorTopPicks: {
1312
+ elementStroke: readonly string[] | null;
1313
+ elementBackground: readonly string[] | null;
1314
+ bucketFill: readonly string[] | null;
1315
+ stickyNoteStroke: readonly string[] | null;
1316
+ stickyNoteBackground: readonly string[] | null;
1317
+ };
1318
+ fontTopPicks: readonly import("@excalidraw/element/types").FontFamilyValues[] | null;
1224
1319
  };
1225
1320
  captureUpdate: "EVENTUALLY";
1226
1321
  };
1227
- keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>, appState: AppState) => boolean;
1228
- } & {
1229
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>, appState: AppState) => boolean) | undefined;
1230
- };
1231
- export declare const actionToggleTheme: import("./types").Action<import("@excalidraw/element/types").Theme> & {
1232
- keyTest?: ((event: React.KeyboardEvent | KeyboardEvent, appState: AppState, elements: readonly ExcalidrawElement[], app: import("../types").AppClassProperties) => boolean) | undefined;
1233
- };
1234
- export declare const actionToggleEraserTool: {
1235
- name: "toggleEraserTool";
1236
- label: string;
1237
- trackEvent: {
1238
- category: "toolbar";
1239
- };
1240
- perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
1241
- appState: {
1242
- selectedElementIds: {};
1243
- selectedGroupIds: {};
1244
- activeEmbeddable: null;
1245
- activeTool: {
1246
- lastActiveTool: import("../types").ActiveTool | null;
1247
- locked: boolean;
1248
- fromSelection: boolean;
1249
- } & import("../types").ActiveTool;
1250
- contextMenu: {
1251
- items: import("../components/ContextMenu").ContextMenuItems;
1252
- top: number;
1253
- left: number;
1254
- } | null;
1255
- showWelcomeScreen: boolean;
1256
- isLoading: boolean;
1257
- errorMessage: React.ReactNode;
1258
- newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
1259
- resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1260
- multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
1261
- selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1262
- isBindingEnabled: boolean;
1263
- boxSelectionMode: import("../types").BoxSelectionMode;
1264
- bindingPreference: "enabled" | "disabled";
1265
- isMidpointSnappingEnabled: boolean;
1266
- suggestedBinding: {
1267
- element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
1268
- midPoint?: import("@excalidraw/math").GlobalPoint;
1269
- } | null;
1270
- frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1271
- frameRendering: {
1272
- enabled: boolean;
1273
- name: boolean;
1274
- outline: boolean;
1275
- clip: boolean;
1276
- };
1277
- editingFrame: string | null;
1278
- elementsToHighlight: readonly import("@excalidraw/element/types").NonDeletedExcalidrawElement[] | null;
1279
- editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null;
1280
- preferredSelectionTool: {
1281
- type: "selection" | "lasso";
1282
- initialized: boolean;
1283
- };
1284
- penMode: boolean;
1285
- penDetected: boolean;
1286
- exportBackground: boolean;
1287
- exportEmbedScene: boolean;
1288
- exportWithDarkMode: boolean;
1289
- exportScale: number;
1290
- currentItemStrokeColor: string;
1291
- currentItemBackgroundColor: string;
1292
- currentItemFillStyle: ExcalidrawElement["fillStyle"];
1293
- currentItemStrokeWidthKey: import("@excalidraw/common").StrokeWidthKey;
1294
- currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
1295
- currentItemRoughness: number;
1296
- currentItemStrokeVariability: import("@excalidraw/element/types").StrokeVariability;
1297
- currentItemOpacity: number;
1298
- currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
1299
- currentItemFontSize: number;
1300
- currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
1301
- currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1302
- currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1303
- currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
1304
- currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
1305
- currentItemArrowType: "sharp" | "round" | "elbow";
1306
- viewBackgroundColor: string;
1307
- scrollX: number;
1308
- scrollY: number;
1309
- scrollConstraints: import("../types").ScrollConstraints | null;
1310
- cursorButton: "up" | "down";
1311
- scrolledOutside: boolean;
1312
- name: string | null;
1313
- isResizing: boolean;
1314
- isRotating: boolean;
1315
- zoom: import("../types").Zoom;
1316
- openMenu: "canvas" | null;
1317
- openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
1318
- openSidebar: {
1319
- name: import("../types").SidebarName;
1320
- tab?: import("../types").SidebarTabName;
1321
- } | null;
1322
- openDialog: null | {
1323
- name: "imageExport" | "help" | "jsonExport";
1324
- } | {
1325
- name: "ttd";
1326
- tab: "text-to-diagram" | "mermaid";
1327
- } | {
1328
- name: "commandPalette";
1329
- } | {
1330
- name: "settings";
1331
- } | {
1332
- name: "elementLinkSelector";
1333
- sourceElementId: ExcalidrawElement["id"];
1334
- } | {
1335
- name: "charts";
1336
- data: import("../charts").Spreadsheet;
1337
- rawText: string;
1338
- };
1339
- defaultSidebarDockedPreference: boolean;
1340
- lastPointerDownWith: import("@excalidraw/element/types").PointerType;
1341
- hoveredElementIds: Readonly<{
1342
- [id: string]: true;
1343
- }>;
1344
- previousSelectedElementIds: {
1345
- [id: string]: true;
1346
- };
1347
- selectedElementsAreBeingDragged: boolean;
1348
- shouldCacheIgnoreZoom: boolean;
1349
- toast: {
1350
- message: React.ReactNode;
1351
- closable?: boolean;
1352
- duration?: number;
1353
- } | null;
1354
- zenModeEnabled: boolean;
1355
- theme: import("@excalidraw/element/types").Theme;
1356
- gridSize: number;
1357
- gridStep: number;
1358
- gridModeEnabled: boolean;
1359
- viewModeEnabled: boolean;
1360
- editingGroupId: import("@excalidraw/element/types").GroupId | null;
1361
- width: number;
1362
- height: number;
1363
- offsetTop: number;
1364
- offsetLeft: number;
1365
- fileHandle: FileSystemFileHandle | null;
1366
- collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
1367
- stats: {
1368
- open: boolean;
1369
- panels: number;
1370
- };
1371
- showHyperlinkPopup: false | "info" | "editor";
1372
- selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
1373
- snapLines: readonly import("../snapping").SnapLine[];
1374
- originSnapOffset: {
1375
- x: number;
1376
- y: number;
1377
- } | null;
1378
- objectsSnapModeEnabled: boolean;
1379
- userToFollow: import("../types").UserToFollow | null;
1380
- followedBy: Set<import("../types").SocketId>;
1381
- isCropping: boolean;
1382
- croppingElementId: ExcalidrawElement["id"] | null;
1383
- searchMatches: Readonly<{
1384
- focusedId: ExcalidrawElement["id"] | null;
1385
- matches: readonly import("../types").SearchMatch[];
1386
- }> | null;
1387
- activeLockedId: string | null;
1388
- lockedMultiSelections: {
1389
- [groupId: string]: true;
1390
- };
1391
- bindMode: import("@excalidraw/element/types").BindMode;
1392
- };
1393
- captureUpdate: "IMMEDIATELY";
1394
- };
1395
- keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>, appState: AppState) => boolean;
1396
- } & {
1397
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>, appState: AppState) => boolean) | undefined;
1398
- };
1399
- export declare const actionToggleLassoTool: {
1400
- name: "toggleLassoTool";
1401
- label: string;
1402
- icon: import("react/jsx-runtime").JSX.Element;
1403
- trackEvent: {
1404
- category: "toolbar";
1405
- };
1406
- predicate: (elements: readonly ExcalidrawElement[], appState: AppState, props: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
1407
- perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
1408
- appState: {
1409
- selectedElementIds: {};
1410
- selectedGroupIds: {};
1411
- activeEmbeddable: null;
1412
- activeTool: {
1413
- lastActiveTool: import("../types").ActiveTool | null;
1414
- locked: boolean;
1415
- fromSelection: boolean;
1416
- } & import("../types").ActiveTool;
1417
- contextMenu: {
1418
- items: import("../components/ContextMenu").ContextMenuItems;
1419
- top: number;
1420
- left: number;
1421
- } | null;
1422
- showWelcomeScreen: boolean;
1423
- isLoading: boolean;
1424
- errorMessage: React.ReactNode;
1425
- newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
1426
- resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1427
- multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
1428
- selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1429
- isBindingEnabled: boolean;
1430
- boxSelectionMode: import("../types").BoxSelectionMode;
1431
- bindingPreference: "enabled" | "disabled";
1432
- isMidpointSnappingEnabled: boolean;
1433
- suggestedBinding: {
1434
- element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
1435
- midPoint?: import("@excalidraw/math").GlobalPoint;
1436
- } | null;
1437
- frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1438
- frameRendering: {
1439
- enabled: boolean;
1440
- name: boolean;
1441
- outline: boolean;
1442
- clip: boolean;
1443
- };
1444
- editingFrame: string | null;
1445
- elementsToHighlight: readonly import("@excalidraw/element/types").NonDeletedExcalidrawElement[] | null;
1446
- editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null;
1447
- preferredSelectionTool: {
1448
- type: "selection" | "lasso";
1449
- initialized: boolean;
1450
- };
1451
- penMode: boolean;
1452
- penDetected: boolean;
1453
- exportBackground: boolean;
1454
- exportEmbedScene: boolean;
1455
- exportWithDarkMode: boolean;
1456
- exportScale: number;
1457
- currentItemStrokeColor: string;
1458
- currentItemBackgroundColor: string;
1459
- currentItemFillStyle: ExcalidrawElement["fillStyle"];
1460
- currentItemStrokeWidthKey: import("@excalidraw/common").StrokeWidthKey;
1461
- currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
1462
- currentItemRoughness: number;
1463
- currentItemStrokeVariability: import("@excalidraw/element/types").StrokeVariability;
1464
- currentItemOpacity: number;
1465
- currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
1466
- currentItemFontSize: number;
1467
- currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
1468
- currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1469
- currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1470
- currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
1471
- currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
1472
- currentItemArrowType: "sharp" | "round" | "elbow";
1473
- viewBackgroundColor: string;
1474
- scrollX: number;
1475
- scrollY: number;
1476
- scrollConstraints: import("../types").ScrollConstraints | null;
1477
- cursorButton: "up" | "down";
1478
- scrolledOutside: boolean;
1479
- name: string | null;
1480
- isResizing: boolean;
1481
- isRotating: boolean;
1482
- zoom: import("../types").Zoom;
1483
- openMenu: "canvas" | null;
1484
- openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
1485
- openSidebar: {
1486
- name: import("../types").SidebarName;
1487
- tab?: import("../types").SidebarTabName;
1488
- } | null;
1489
- openDialog: null | {
1490
- name: "imageExport" | "help" | "jsonExport";
1491
- } | {
1492
- name: "ttd";
1493
- tab: "text-to-diagram" | "mermaid";
1494
- } | {
1495
- name: "commandPalette";
1496
- } | {
1497
- name: "settings";
1498
- } | {
1499
- name: "elementLinkSelector";
1500
- sourceElementId: ExcalidrawElement["id"];
1501
- } | {
1502
- name: "charts";
1503
- data: import("../charts").Spreadsheet;
1504
- rawText: string;
1505
- };
1506
- defaultSidebarDockedPreference: boolean;
1507
- lastPointerDownWith: import("@excalidraw/element/types").PointerType;
1508
- hoveredElementIds: Readonly<{
1509
- [id: string]: true;
1510
- }>;
1511
- previousSelectedElementIds: {
1512
- [id: string]: true;
1513
- };
1514
- selectedElementsAreBeingDragged: boolean;
1515
- shouldCacheIgnoreZoom: boolean;
1516
- toast: {
1517
- message: React.ReactNode;
1518
- closable?: boolean;
1519
- duration?: number;
1520
- } | null;
1521
- zenModeEnabled: boolean;
1522
- theme: import("@excalidraw/element/types").Theme;
1523
- gridSize: number;
1524
- gridStep: number;
1525
- gridModeEnabled: boolean;
1526
- viewModeEnabled: boolean;
1527
- editingGroupId: import("@excalidraw/element/types").GroupId | null;
1528
- width: number;
1529
- height: number;
1530
- offsetTop: number;
1531
- offsetLeft: number;
1532
- fileHandle: FileSystemFileHandle | null;
1533
- collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
1534
- stats: {
1535
- open: boolean;
1536
- panels: number;
1537
- };
1538
- showHyperlinkPopup: false | "info" | "editor";
1539
- selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
1540
- snapLines: readonly import("../snapping").SnapLine[];
1541
- originSnapOffset: {
1542
- x: number;
1543
- y: number;
1544
- } | null;
1545
- objectsSnapModeEnabled: boolean;
1546
- userToFollow: import("../types").UserToFollow | null;
1547
- followedBy: Set<import("../types").SocketId>;
1548
- isCropping: boolean;
1549
- croppingElementId: ExcalidrawElement["id"] | null;
1550
- searchMatches: Readonly<{
1551
- focusedId: ExcalidrawElement["id"] | null;
1552
- matches: readonly import("../types").SearchMatch[];
1553
- }> | null;
1554
- activeLockedId: string | null;
1555
- lockedMultiSelections: {
1556
- [groupId: string]: true;
1557
- };
1558
- bindMode: import("@excalidraw/element/types").BindMode;
1559
- };
1560
- captureUpdate: "NEVER";
1561
- };
1562
- } & {
1563
- keyTest?: undefined;
1564
- };
1565
- export declare const actionToggleHandTool: {
1566
- name: "toggleHandTool";
1567
- label: string;
1568
- trackEvent: {
1569
- category: "toolbar";
1570
- };
1571
- icon: import("react/jsx-runtime").JSX.Element;
1572
- viewMode: false;
1573
- perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
1574
- appState: {
1575
- selectedElementIds: {};
1576
- selectedGroupIds: {};
1577
- activeEmbeddable: null;
1578
- activeTool: {
1579
- lastActiveTool: import("../types").ActiveTool | null;
1580
- locked: boolean;
1581
- fromSelection: boolean;
1582
- } & import("../types").ActiveTool;
1583
- contextMenu: {
1584
- items: import("../components/ContextMenu").ContextMenuItems;
1585
- top: number;
1586
- left: number;
1587
- } | null;
1588
- showWelcomeScreen: boolean;
1589
- isLoading: boolean;
1590
- errorMessage: React.ReactNode;
1591
- newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
1592
- resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1593
- multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
1594
- selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1595
- isBindingEnabled: boolean;
1596
- boxSelectionMode: import("../types").BoxSelectionMode;
1597
- bindingPreference: "enabled" | "disabled";
1598
- isMidpointSnappingEnabled: boolean;
1599
- suggestedBinding: {
1600
- element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
1601
- midPoint?: import("@excalidraw/math").GlobalPoint;
1602
- } | null;
1603
- frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1604
- frameRendering: {
1605
- enabled: boolean;
1606
- name: boolean;
1607
- outline: boolean;
1608
- clip: boolean;
1609
- };
1610
- editingFrame: string | null;
1611
- elementsToHighlight: readonly import("@excalidraw/element/types").NonDeletedExcalidrawElement[] | null;
1612
- editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null;
1613
- preferredSelectionTool: {
1614
- type: "selection" | "lasso";
1615
- initialized: boolean;
1616
- };
1617
- penMode: boolean;
1618
- penDetected: boolean;
1619
- exportBackground: boolean;
1620
- exportEmbedScene: boolean;
1621
- exportWithDarkMode: boolean;
1622
- exportScale: number;
1623
- currentItemStrokeColor: string;
1624
- currentItemBackgroundColor: string;
1625
- currentItemFillStyle: ExcalidrawElement["fillStyle"];
1626
- currentItemStrokeWidthKey: import("@excalidraw/common").StrokeWidthKey;
1627
- currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
1628
- currentItemRoughness: number;
1629
- currentItemStrokeVariability: import("@excalidraw/element/types").StrokeVariability;
1630
- currentItemOpacity: number;
1631
- currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
1632
- currentItemFontSize: number;
1633
- currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
1634
- currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1635
- currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
1636
- currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
1637
- currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
1638
- currentItemArrowType: "sharp" | "round" | "elbow";
1639
- viewBackgroundColor: string;
1640
- scrollX: number;
1641
- scrollY: number;
1642
- scrollConstraints: import("../types").ScrollConstraints | null;
1643
- cursorButton: "up" | "down";
1644
- scrolledOutside: boolean;
1645
- name: string | null;
1646
- isResizing: boolean;
1647
- isRotating: boolean;
1648
- zoom: import("../types").Zoom;
1649
- openMenu: "canvas" | null;
1650
- openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
1651
- openSidebar: {
1652
- name: import("../types").SidebarName;
1653
- tab?: import("../types").SidebarTabName;
1654
- } | null;
1655
- openDialog: null | {
1656
- name: "imageExport" | "help" | "jsonExport";
1657
- } | {
1658
- name: "ttd";
1659
- tab: "text-to-diagram" | "mermaid";
1660
- } | {
1661
- name: "commandPalette";
1662
- } | {
1663
- name: "settings";
1664
- } | {
1665
- name: "elementLinkSelector";
1666
- sourceElementId: ExcalidrawElement["id"];
1667
- } | {
1668
- name: "charts";
1669
- data: import("../charts").Spreadsheet;
1670
- rawText: string;
1671
- };
1672
- defaultSidebarDockedPreference: boolean;
1673
- lastPointerDownWith: import("@excalidraw/element/types").PointerType;
1674
- hoveredElementIds: Readonly<{
1675
- [id: string]: true;
1676
- }>;
1677
- previousSelectedElementIds: {
1678
- [id: string]: true;
1679
- };
1680
- selectedElementsAreBeingDragged: boolean;
1681
- shouldCacheIgnoreZoom: boolean;
1682
- toast: {
1683
- message: React.ReactNode;
1684
- closable?: boolean;
1685
- duration?: number;
1686
- } | null;
1687
- zenModeEnabled: boolean;
1688
- theme: import("@excalidraw/element/types").Theme;
1689
- gridSize: number;
1690
- gridStep: number;
1691
- gridModeEnabled: boolean;
1692
- viewModeEnabled: boolean;
1693
- editingGroupId: import("@excalidraw/element/types").GroupId | null;
1694
- width: number;
1695
- height: number;
1696
- offsetTop: number;
1697
- offsetLeft: number;
1698
- fileHandle: FileSystemFileHandle | null;
1699
- collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
1700
- stats: {
1701
- open: boolean;
1702
- panels: number;
1703
- };
1704
- showHyperlinkPopup: false | "info" | "editor";
1705
- selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
1706
- snapLines: readonly import("../snapping").SnapLine[];
1707
- originSnapOffset: {
1708
- x: number;
1709
- y: number;
1710
- } | null;
1711
- objectsSnapModeEnabled: boolean;
1712
- userToFollow: import("../types").UserToFollow | null;
1713
- followedBy: Set<import("../types").SocketId>;
1714
- isCropping: boolean;
1715
- croppingElementId: ExcalidrawElement["id"] | null;
1716
- searchMatches: Readonly<{
1717
- focusedId: ExcalidrawElement["id"] | null;
1718
- matches: readonly import("../types").SearchMatch[];
1719
- }> | null;
1720
- activeLockedId: string | null;
1721
- lockedMultiSelections: {
1722
- [groupId: string]: true;
1723
- };
1724
- bindMode: import("@excalidraw/element/types").BindMode;
1725
- };
1726
- captureUpdate: "IMMEDIATELY";
1727
- };
1728
1322
  keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
1729
1323
  } & {
1730
1324
  keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
1731
1325
  };
1326
+ export declare const actionToggleTheme: import("./types").Action<import("@excalidraw/element/types").Theme> & {
1327
+ keyTest?: ((event: React.KeyboardEvent | KeyboardEvent, appState: AppState, elements: readonly import("@excalidraw/element/types").ExcalidrawElement[], app: import("../types").AppClassProperties) => boolean) | undefined;
1328
+ };