@myoc/excalidraw 0.18.16 → 0.18.18

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 (179) hide show
  1. package/dist/dev/{chunk-3HLOFB5F.js → chunk-MAGRVBVM.js} +13453 -10629
  2. package/dist/dev/chunk-MAGRVBVM.js.map +7 -0
  3. package/dist/dev/{chunk-PEI7EPYO.js → chunk-QO4EFL6B.js} +15 -5
  4. package/dist/dev/chunk-QO4EFL6B.js.map +7 -0
  5. package/dist/dev/chunk-WUH7JFG4.js +7 -0
  6. package/dist/dev/chunk-WUH7JFG4.js.map +7 -0
  7. package/dist/dev/data/{image-XPEIZ6XQ.js → image-BBHDGXQ3.js} +3 -3
  8. package/dist/dev/index.css +101 -24
  9. package/dist/dev/index.css.map +3 -3
  10. package/dist/dev/index.js +6587 -7610
  11. package/dist/dev/index.js.map +4 -4
  12. package/dist/dev/locales/{en-R455UJTM.js → en-2WXBKZE2.js} +2 -2
  13. package/dist/dev/subset-shared.chunk.js +1 -1
  14. package/dist/dev/subset-worker.chunk.js +1 -1
  15. package/dist/prod/chunk-4Z2WWUCC.js +7 -0
  16. package/dist/prod/chunk-KZXLT4YB.js +12 -0
  17. package/dist/prod/chunk-YBT3HBS6.js +33 -0
  18. package/dist/prod/data/image-JFILZTP3.js +1 -0
  19. package/dist/prod/index.css +1 -1
  20. package/dist/prod/index.js +18 -17
  21. package/dist/prod/locales/{en-YWERZJD6.js → en-XFR6MADM.js} +1 -1
  22. package/dist/prod/subset-shared.chunk.js +1 -1
  23. package/dist/prod/subset-worker.chunk.js +1 -1
  24. package/dist/types/common/src/constants.d.ts +19 -2
  25. package/dist/types/{excalidraw → common/src}/emitter.d.ts +1 -1
  26. package/dist/types/common/src/font-metadata.d.ts +4 -2
  27. package/dist/types/common/src/index.d.ts +1 -0
  28. package/dist/types/common/src/points.d.ts +1 -1
  29. package/dist/types/common/src/utility-types.d.ts +5 -0
  30. package/dist/types/common/src/utils.d.ts +17 -7
  31. package/dist/types/{excalidraw/scene → element/src}/Scene.d.ts +11 -14
  32. package/dist/types/element/src/align.d.ts +3 -3
  33. package/dist/types/element/src/arrange.d.ts +2 -1
  34. package/dist/types/element/src/binding.d.ts +21 -14
  35. package/dist/types/element/src/bounds.d.ts +11 -5
  36. package/dist/types/element/src/collision.d.ts +18 -12
  37. package/dist/types/element/src/cropElement.d.ts +1 -1
  38. package/dist/types/{excalidraw/change.d.ts → element/src/delta.d.ts} +63 -38
  39. package/dist/types/element/src/distance.d.ts +2 -2
  40. package/dist/types/element/src/dragElements.d.ts +3 -2
  41. package/dist/types/element/src/elbowArrow.d.ts +2 -2
  42. package/dist/types/element/src/flowchart.d.ts +3 -2
  43. package/dist/types/element/src/fractionalIndex.d.ts +9 -3
  44. package/dist/types/element/src/frame.d.ts +4 -3
  45. package/dist/types/element/src/heading.d.ts +2 -2
  46. package/dist/types/element/src/index.d.ts +43 -2
  47. package/dist/types/element/src/linearElementEditor.d.ts +21 -32
  48. package/dist/types/element/src/mutateElement.d.ts +11 -3
  49. package/dist/types/element/src/newElement.d.ts +4 -3
  50. package/dist/types/element/src/resizeElements.d.ts +5 -4
  51. package/dist/types/element/src/resizeTest.d.ts +2 -2
  52. package/dist/types/element/src/selection.d.ts +1 -6
  53. package/dist/types/element/src/shape.d.ts +42 -0
  54. package/dist/types/element/src/shapes.d.ts +10 -10
  55. package/dist/types/element/src/sizeHelpers.d.ts +2 -2
  56. package/dist/types/element/src/store.d.ts +231 -0
  57. package/dist/types/element/src/textElement.d.ts +4 -3
  58. package/dist/types/element/src/typeChecks.d.ts +19 -1
  59. package/dist/types/element/src/types.d.ts +15 -2
  60. package/dist/types/element/src/utils.d.ts +5 -1
  61. package/dist/types/element/src/zindex.d.ts +1 -1
  62. package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +42 -51
  63. package/dist/types/excalidraw/actions/actionAlign.d.ts +8 -8
  64. package/dist/types/excalidraw/actions/actionArrange.d.ts +2 -2
  65. package/dist/types/excalidraw/actions/actionBoundText.d.ts +28 -34
  66. package/dist/types/excalidraw/actions/actionCanvas.d.ts +187 -223
  67. package/dist/types/excalidraw/actions/actionClipboard.d.ts +87 -104
  68. package/dist/types/excalidraw/actions/actionCropEditor.d.ts +14 -17
  69. package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +41 -49
  70. package/dist/types/excalidraw/actions/actionDistribute.d.ts +4 -4
  71. package/dist/types/excalidraw/actions/actionDuplicateSelection.d.ts +2 -2
  72. package/dist/types/excalidraw/actions/actionElementLink.d.ts +14 -17
  73. package/dist/types/excalidraw/actions/actionElementLock.d.ts +43 -50
  74. package/dist/types/excalidraw/actions/actionEmbeddable.d.ts +14 -17
  75. package/dist/types/excalidraw/actions/actionExport.d.ts +219 -246
  76. package/dist/types/excalidraw/actions/actionFinalize.d.ts +74 -40
  77. package/dist/types/excalidraw/actions/actionFlip.d.ts +4 -4
  78. package/dist/types/excalidraw/actions/actionFrame.d.ts +100 -112
  79. package/dist/types/excalidraw/actions/actionGroup.d.ts +34 -40
  80. package/dist/types/excalidraw/actions/actionHistory.d.ts +1 -2
  81. package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +506 -16
  82. package/dist/types/excalidraw/actions/actionLink.d.ts +14 -17
  83. package/dist/types/excalidraw/actions/actionMenu.d.ts +42 -51
  84. package/dist/types/excalidraw/actions/actionNavigate.d.ts +27 -33
  85. package/dist/types/excalidraw/actions/actionProperties.d.ts +206 -243
  86. package/dist/types/excalidraw/actions/actionSelectAll.d.ts +16 -19
  87. package/dist/types/excalidraw/actions/actionSmartZoom.d.ts +2 -2
  88. package/dist/types/excalidraw/actions/actionStyles.d.ts +18 -21
  89. package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +16 -19
  90. package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +16 -19
  91. package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +16 -200
  92. package/dist/types/excalidraw/actions/actionToggleShapeSwitch.d.ts +19 -0
  93. package/dist/types/excalidraw/actions/actionToggleStats.d.ts +16 -19
  94. package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +16 -19
  95. package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +16 -19
  96. package/dist/types/excalidraw/actions/actionZindex.d.ts +8 -8
  97. package/dist/types/excalidraw/actions/types.d.ts +4 -3
  98. package/dist/types/excalidraw/appState.d.ts +40 -31
  99. package/dist/types/excalidraw/components/App.d.ts +15 -17
  100. package/dist/types/excalidraw/components/ButtonIcon.d.ts +1 -0
  101. package/dist/types/excalidraw/components/ColorPicker/ColorInput.d.ts +2 -1
  102. package/dist/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +5 -1
  103. package/dist/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +1 -1
  104. package/dist/types/excalidraw/components/ColorPicker/Picker.d.ts +2 -3
  105. package/dist/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +2 -3
  106. package/dist/types/excalidraw/components/ColorPicker/ShadeList.d.ts +2 -2
  107. package/dist/types/excalidraw/components/ColorPicker/TopPicks.d.ts +1 -1
  108. package/dist/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +1 -1
  109. package/dist/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +1 -1
  110. package/dist/types/excalidraw/components/ConvertElementTypePopup.d.ts +23 -0
  111. package/dist/types/excalidraw/components/ElementLinkDialog.d.ts +4 -3
  112. package/dist/types/excalidraw/components/{ButtonIconSelect.d.ts → RadioSelection.d.ts} +1 -1
  113. package/dist/types/excalidraw/components/Range.d.ts +3 -3
  114. package/dist/types/excalidraw/components/Stats/Angle.d.ts +1 -1
  115. package/dist/types/excalidraw/components/Stats/CanvasGrid.d.ts +1 -1
  116. package/dist/types/excalidraw/components/Stats/Collapsible.d.ts +2 -1
  117. package/dist/types/excalidraw/components/Stats/Dimension.d.ts +1 -1
  118. package/dist/types/excalidraw/components/Stats/DragInput.d.ts +1 -1
  119. package/dist/types/excalidraw/components/Stats/FontSize.d.ts +1 -1
  120. package/dist/types/excalidraw/components/Stats/MultiAngle.d.ts +1 -1
  121. package/dist/types/excalidraw/components/Stats/MultiDimension.d.ts +1 -1
  122. package/dist/types/excalidraw/components/Stats/MultiFontSize.d.ts +1 -1
  123. package/dist/types/excalidraw/components/Stats/MultiPosition.d.ts +1 -1
  124. package/dist/types/excalidraw/components/Stats/Position.d.ts +1 -1
  125. package/dist/types/excalidraw/components/Stats/utils.d.ts +4 -11
  126. package/dist/types/excalidraw/components/UnlockPopup.d.ts +8 -0
  127. package/dist/types/excalidraw/components/dropdownMenu/common.d.ts +1 -1
  128. package/dist/types/excalidraw/components/hyperlink/Hyperlink.d.ts +3 -2
  129. package/dist/types/excalidraw/components/hyperlink/helpers.d.ts +2 -1
  130. package/dist/types/excalidraw/components/icons.d.ts +3 -0
  131. package/dist/types/excalidraw/components/shapes.d.ts +1 -1
  132. package/dist/types/excalidraw/data/blob.d.ts +1 -1
  133. package/dist/types/excalidraw/data/transform.d.ts +1 -1
  134. package/dist/types/excalidraw/editor-jotai.d.ts +6 -6
  135. package/dist/types/excalidraw/eraser/index.d.ts +0 -2
  136. package/dist/types/excalidraw/fonts/Fonts.d.ts +1 -1
  137. package/dist/types/excalidraw/history.d.ts +30 -22
  138. package/dist/types/excalidraw/hooks/useEmitter.d.ts +1 -1
  139. package/dist/types/excalidraw/index.d.ts +9 -9
  140. package/dist/types/excalidraw/lasso/index.d.ts +1 -0
  141. package/dist/types/excalidraw/lasso/utils.d.ts +2 -1
  142. package/dist/types/excalidraw/renderer/helpers.d.ts +7 -2
  143. package/dist/types/excalidraw/scene/Renderer.d.ts +1 -2
  144. package/dist/types/excalidraw/scene/index.d.ts +2 -2
  145. package/dist/types/excalidraw/snapping.d.ts +2 -2
  146. package/dist/types/excalidraw/types.d.ts +25 -10
  147. package/dist/types/excalidraw/visualdebug.d.ts +1 -1
  148. package/dist/types/excalidraw/wysiwyg/textWysiwyg.d.ts +3 -1
  149. package/dist/types/math/src/angle.d.ts +3 -1
  150. package/dist/types/math/src/constants.d.ts +3 -0
  151. package/dist/types/math/src/curve.d.ts +34 -0
  152. package/dist/types/math/src/ellipse.d.ts +3 -3
  153. package/dist/types/math/src/index.d.ts +1 -0
  154. package/dist/types/math/src/point.d.ts +3 -3
  155. package/dist/types/math/src/polygon.d.ts +2 -2
  156. package/dist/types/math/src/segment.d.ts +5 -5
  157. package/dist/types/math/src/utils.d.ts +2 -0
  158. package/dist/types/math/src/vector.d.ts +8 -2
  159. package/dist/types/utils/src/bbox.d.ts +1 -1
  160. package/dist/types/utils/src/index.d.ts +1 -1
  161. package/dist/types/utils/src/shape.d.ts +12 -12
  162. package/dist/types/utils/src/withinBounds.d.ts +1 -1
  163. package/history.ts +147 -110
  164. package/package.json +4 -4
  165. package/dist/dev/chunk-3HLOFB5F.js.map +0 -7
  166. package/dist/dev/chunk-PEI7EPYO.js.map +0 -7
  167. package/dist/dev/chunk-QQGTICP4.js +0 -7
  168. package/dist/dev/chunk-QQGTICP4.js.map +0 -7
  169. package/dist/prod/chunk-7HNFGNL7.js +0 -7
  170. package/dist/prod/chunk-KKQVTSHB.js +0 -33
  171. package/dist/prod/chunk-KZWZ7WHC.js +0 -12
  172. package/dist/prod/data/image-QD7FUQED.js +0 -1
  173. package/dist/types/element/src/Shape.d.ts +0 -17
  174. package/dist/types/element/src/ShapeCache.d.ts +0 -25
  175. package/dist/types/excalidraw/components/ButtonSelect.d.ts +0 -9
  176. package/dist/types/excalidraw/store.d.ts +0 -129
  177. package/dist/types/utils/src/collision.d.ts +0 -8
  178. /package/dist/dev/data/{image-XPEIZ6XQ.js.map → image-BBHDGXQ3.js.map} +0 -0
  179. /package/dist/dev/locales/{en-R455UJTM.js.map → en-2WXBKZE2.js.map} +0 -0
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import { LinearElementEditor } from "@excalidraw/element/linearElementEditor";
2
+ import { LinearElementEditor } from "@excalidraw/element";
3
3
  import type { ExcalidrawElement } from "@excalidraw/element/types";
4
4
  import type { AppClassProperties, AppState } from "../types";
5
5
  export declare const actionDeleteSelected: {
@@ -40,7 +40,7 @@ export declare const actionDeleteSelected: {
40
40
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
41
41
  isBindingEnabled: boolean;
42
42
  startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
43
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
43
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
44
44
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
45
45
  frameRendering: {
46
46
  enabled: boolean;
@@ -76,7 +76,7 @@ export declare const actionDeleteSelected: {
76
76
  currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
77
77
  currentHoveredFontFamily: number | null;
78
78
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
79
- currentItemArrowType: "round" | "sharp" | "elbow";
79
+ currentItemArrowType: "sharp" | "round" | "elbow";
80
80
  viewBackgroundColor: string;
81
81
  scrollX: number;
82
82
  scrollY: number;
@@ -88,7 +88,7 @@ export declare const actionDeleteSelected: {
88
88
  zoom: Readonly<{
89
89
  value: import("../types").NormalizedZoomValue;
90
90
  }>;
91
- openMenu: "shape" | "canvas" | null;
91
+ openMenu: "canvas" | "shape" | null;
92
92
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
93
93
  openSidebar: {
94
94
  name: string;
@@ -170,8 +170,7 @@ export declare const actionDeleteSelected: {
170
170
  shown: true;
171
171
  data: import("../charts").Spreadsheet;
172
172
  };
173
- pendingImageElementId: string | null;
174
- showHyperlinkPopup: false | "editor" | "info";
173
+ showHyperlinkPopup: false | "info" | "editor";
175
174
  selectedLinearElement: LinearElementEditor | null;
176
175
  snapLines: readonly import("../snapping").SnapLine[];
177
176
  originSnapOffset: {
@@ -183,16 +182,14 @@ export declare const actionDeleteSelected: {
183
182
  followedBy: Set<import("../types").SocketId>;
184
183
  isCropping: boolean;
185
184
  croppingElementId: string | null;
186
- searchMatches: readonly {
187
- id: string;
188
- focus: boolean;
189
- matchedLines: {
190
- offsetX: number;
191
- offsetY: number;
192
- width: number;
193
- height: number;
194
- }[];
195
- }[];
185
+ searchMatches: Readonly<{
186
+ focusedId: string | null;
187
+ matches: readonly import("../types").SearchMatch[];
188
+ }> | null;
189
+ activeLockedId: string | null;
190
+ lockedMultiSelections: {
191
+ [groupId: string]: true;
192
+ };
196
193
  };
197
194
  captureUpdate: "IMMEDIATELY";
198
195
  } | {
@@ -228,6 +225,7 @@ export declare const actionDeleteSelected: {
228
225
  hoverPointIndex: number;
229
226
  segmentMidPointHoveredCoords: import("@excalidraw/math").GlobalPoint | null;
230
227
  elbowed: boolean;
228
+ customLineAngle: number | null;
231
229
  };
232
230
  contextMenu: {
233
231
  items: import("../components/ContextMenu").ContextMenuItems;
@@ -255,7 +253,7 @@ export declare const actionDeleteSelected: {
255
253
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
256
254
  isBindingEnabled: boolean;
257
255
  startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
258
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
256
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
259
257
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
260
258
  frameRendering: {
261
259
  enabled: boolean;
@@ -291,7 +289,7 @@ export declare const actionDeleteSelected: {
291
289
  currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
292
290
  currentHoveredFontFamily: number | null;
293
291
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
294
- currentItemArrowType: "round" | "sharp" | "elbow";
292
+ currentItemArrowType: "sharp" | "round" | "elbow";
295
293
  viewBackgroundColor: string;
296
294
  scrollX: number;
297
295
  scrollY: number;
@@ -303,7 +301,7 @@ export declare const actionDeleteSelected: {
303
301
  zoom: Readonly<{
304
302
  value: import("../types").NormalizedZoomValue;
305
303
  }>;
306
- openMenu: "shape" | "canvas" | null;
304
+ openMenu: "canvas" | "shape" | null;
307
305
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
308
306
  openSidebar: {
309
307
  name: string;
@@ -385,8 +383,7 @@ export declare const actionDeleteSelected: {
385
383
  shown: true;
386
384
  data: import("../charts").Spreadsheet;
387
385
  };
388
- pendingImageElementId: string | null;
389
- showHyperlinkPopup: false | "editor" | "info";
386
+ showHyperlinkPopup: false | "info" | "editor";
390
387
  selectedLinearElement: LinearElementEditor | null;
391
388
  snapLines: readonly import("../snapping").SnapLine[];
392
389
  originSnapOffset: {
@@ -398,16 +395,14 @@ export declare const actionDeleteSelected: {
398
395
  followedBy: Set<import("../types").SocketId>;
399
396
  isCropping: boolean;
400
397
  croppingElementId: string | null;
401
- searchMatches: readonly {
402
- id: string;
403
- focus: boolean;
404
- matchedLines: {
405
- offsetX: number;
406
- offsetY: number;
407
- width: number;
408
- height: number;
409
- }[];
410
- }[];
398
+ searchMatches: Readonly<{
399
+ focusedId: string | null;
400
+ matches: readonly import("../types").SearchMatch[];
401
+ }> | null;
402
+ activeLockedId: string | null;
403
+ lockedMultiSelections: {
404
+ [groupId: string]: true;
405
+ };
411
406
  };
412
407
  captureUpdate: "IMMEDIATELY";
413
408
  } | {
@@ -421,13 +416,13 @@ export declare const actionDeleteSelected: {
421
416
  multiElement: null;
422
417
  activeEmbeddable: null;
423
418
  selectedLinearElement: null;
424
- editingGroupId: string | null;
425
419
  selectedElementIds: Readonly<{
426
420
  [id: string]: true;
427
421
  }>;
428
422
  selectedGroupIds: {
429
423
  [groupId: string]: boolean;
430
424
  };
425
+ editingGroupId: string | null;
431
426
  contextMenu: {
432
427
  items: import("../components/ContextMenu").ContextMenuItems;
433
428
  top: number;
@@ -449,7 +444,7 @@ export declare const actionDeleteSelected: {
449
444
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
450
445
  isBindingEnabled: boolean;
451
446
  startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
452
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
447
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
453
448
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
454
449
  frameRendering: {
455
450
  enabled: boolean;
@@ -481,7 +476,7 @@ export declare const actionDeleteSelected: {
481
476
  currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
482
477
  currentHoveredFontFamily: number | null;
483
478
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
484
- currentItemArrowType: "round" | "sharp" | "elbow";
479
+ currentItemArrowType: "sharp" | "round" | "elbow";
485
480
  viewBackgroundColor: string;
486
481
  scrollX: number;
487
482
  scrollY: number;
@@ -493,7 +488,7 @@ export declare const actionDeleteSelected: {
493
488
  zoom: Readonly<{
494
489
  value: import("../types").NormalizedZoomValue;
495
490
  }>;
496
- openMenu: "shape" | "canvas" | null;
491
+ openMenu: "canvas" | "shape" | null;
497
492
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
498
493
  openSidebar: {
499
494
  name: string;
@@ -568,8 +563,7 @@ export declare const actionDeleteSelected: {
568
563
  shown: true;
569
564
  data: import("../charts").Spreadsheet;
570
565
  };
571
- pendingImageElementId: string | null;
572
- showHyperlinkPopup: false | "editor" | "info";
566
+ showHyperlinkPopup: false | "info" | "editor";
573
567
  snapLines: readonly import("../snapping").SnapLine[];
574
568
  originSnapOffset: {
575
569
  x: number;
@@ -580,21 +574,19 @@ export declare const actionDeleteSelected: {
580
574
  followedBy: Set<import("../types").SocketId>;
581
575
  isCropping: boolean;
582
576
  croppingElementId: string | null;
583
- searchMatches: readonly {
584
- id: string;
585
- focus: boolean;
586
- matchedLines: {
587
- offsetX: number;
588
- offsetY: number;
589
- width: number;
590
- height: number;
591
- }[];
592
- }[];
577
+ searchMatches: Readonly<{
578
+ focusedId: string | null;
579
+ matches: readonly import("../types").SearchMatch[];
580
+ }> | null;
581
+ activeLockedId: string | null;
582
+ lockedMultiSelections: {
583
+ [groupId: string]: true;
584
+ };
593
585
  };
594
586
  captureUpdate: "IMMEDIATELY" | "EVENTUALLY";
595
587
  };
596
- keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>, appState: AppState, elements: readonly ExcalidrawElement[]) => boolean;
588
+ keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent, appState: AppState, elements: readonly ExcalidrawElement[]) => boolean;
597
589
  PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
598
590
  } & {
599
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>, appState: AppState, elements: readonly ExcalidrawElement[]) => boolean) | undefined;
591
+ keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent, appState: AppState, elements: readonly ExcalidrawElement[]) => boolean) | undefined;
600
592
  };
@@ -12,10 +12,10 @@ export declare const distributeHorizontally: {
12
12
  elements: ExcalidrawElement[];
13
13
  captureUpdate: "IMMEDIATELY";
14
14
  };
15
- keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
15
+ keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
16
16
  PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
17
17
  } & {
18
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
18
+ keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
19
19
  };
20
20
  export declare const distributeVertically: {
21
21
  name: "distributeVertically";
@@ -28,8 +28,8 @@ export declare const distributeVertically: {
28
28
  elements: ExcalidrawElement[];
29
29
  captureUpdate: "IMMEDIATELY";
30
30
  };
31
- keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
31
+ keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
32
32
  PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
33
33
  } & {
34
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
34
+ keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
35
35
  };
@@ -11,8 +11,8 @@ export declare const actionDuplicateSelection: {
11
11
  appState: import("../types").AppState;
12
12
  captureUpdate: "IMMEDIATELY";
13
13
  };
14
- keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
14
+ keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
15
15
  PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
16
16
  } & {
17
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
17
+ keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
18
18
  };
@@ -67,7 +67,7 @@ export declare const actionLinkToElement: {
67
67
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
68
68
  isBindingEnabled: boolean;
69
69
  startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
70
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
70
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
71
71
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
72
72
  frameRendering: {
73
73
  enabled: boolean;
@@ -78,7 +78,7 @@ export declare const actionLinkToElement: {
78
78
  editingFrame: string | null;
79
79
  elementsToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawElement>[] | null;
80
80
  editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
81
- editingLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
81
+ editingLinearElement: import("@excalidraw/element").LinearElementEditor | null;
82
82
  activeTool: {
83
83
  lastActiveTool: import("../types").ActiveTool | null;
84
84
  locked: boolean;
@@ -104,7 +104,7 @@ export declare const actionLinkToElement: {
104
104
  currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
105
105
  currentHoveredFontFamily: number | null;
106
106
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
107
- currentItemArrowType: "round" | "sharp" | "elbow";
107
+ currentItemArrowType: "sharp" | "round" | "elbow";
108
108
  viewBackgroundColor: string;
109
109
  scrollX: number;
110
110
  scrollY: number;
@@ -116,7 +116,7 @@ export declare const actionLinkToElement: {
116
116
  zoom: Readonly<{
117
117
  value: import("../types").NormalizedZoomValue;
118
118
  }>;
119
- openMenu: "shape" | "canvas" | null;
119
+ openMenu: "canvas" | "shape" | null;
120
120
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
121
121
  openSidebar: {
122
122
  name: string;
@@ -187,9 +187,8 @@ export declare const actionLinkToElement: {
187
187
  shown: true;
188
188
  data: import("../charts").Spreadsheet;
189
189
  };
190
- pendingImageElementId: string | null;
191
- showHyperlinkPopup: false | "editor" | "info";
192
- selectedLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
190
+ showHyperlinkPopup: false | "info" | "editor";
191
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
193
192
  snapLines: readonly import("../snapping").SnapLine[];
194
193
  originSnapOffset: {
195
194
  x: number;
@@ -200,16 +199,14 @@ export declare const actionLinkToElement: {
200
199
  followedBy: Set<import("../types").SocketId>;
201
200
  isCropping: boolean;
202
201
  croppingElementId: string | null;
203
- searchMatches: readonly {
204
- id: string;
205
- focus: boolean;
206
- matchedLines: {
207
- offsetX: number;
208
- offsetY: number;
209
- width: number;
210
- height: number;
211
- }[];
212
- }[];
202
+ searchMatches: Readonly<{
203
+ focusedId: string | null;
204
+ matches: readonly import("../types").SearchMatch[];
205
+ }> | null;
206
+ activeLockedId: string | null;
207
+ lockedMultiSelections: {
208
+ [groupId: string]: true;
209
+ };
213
210
  };
214
211
  captureUpdate: "IMMEDIATELY";
215
212
  elements?: undefined;
@@ -1,17 +1,28 @@
1
1
  /// <reference types="react" />
2
2
  import type { ExcalidrawElement } from "@excalidraw/element/types";
3
+ import type { AppState } from "../types";
3
4
  export declare const actionToggleElementLock: {
4
5
  name: "toggleElementLock";
5
- label: (elements: readonly ExcalidrawElement[], appState: Readonly<import("../types").AppState>, app: import("../types").AppClassProperties) => "labels.elementLock.unlock" | "labels.elementLock.lock" | "labels.elementLock.lockAll" | "labels.elementLock.unlockAll";
6
+ label: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, app: import("../types").AppClassProperties) => "labels.elementLock.lock" | "labels.elementLock.unlock";
6
7
  icon: (appState: import("../types").UIAppState, elements: readonly ExcalidrawElement[]) => import("react/jsx-runtime").JSX.Element;
7
8
  trackEvent: {
8
9
  category: "element";
9
10
  };
10
- predicate: (elements: readonly ExcalidrawElement[], appState: import("../types").AppState, _: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
11
- perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<import("../types").AppState>, _: any, app: import("../types").AppClassProperties) => false | {
11
+ predicate: (elements: readonly ExcalidrawElement[], appState: AppState, _: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
12
+ perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: any, app: import("../types").AppClassProperties) => false | {
12
13
  elements: import("@excalidraw/element/types").OrderedExcalidrawElement[];
13
14
  appState: {
14
- selectedLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
15
+ selectedElementIds: Readonly<{
16
+ [id: string]: true;
17
+ }>;
18
+ selectedGroupIds: {
19
+ [groupId: string]: boolean;
20
+ };
21
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
22
+ lockedMultiSelections: {
23
+ [x: string]: true;
24
+ };
25
+ activeLockedId: string | null;
15
26
  contextMenu: {
16
27
  items: import("../components/ContextMenu").ContextMenuItems;
17
28
  top: number;
@@ -38,7 +49,7 @@ export declare const actionToggleElementLock: {
38
49
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
39
50
  isBindingEnabled: boolean;
40
51
  startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
41
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
52
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
42
53
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
43
54
  frameRendering: {
44
55
  enabled: boolean;
@@ -49,7 +60,7 @@ export declare const actionToggleElementLock: {
49
60
  editingFrame: string | null;
50
61
  elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
51
62
  editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
52
- editingLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
63
+ editingLinearElement: import("@excalidraw/element").LinearElementEditor | null;
53
64
  activeTool: {
54
65
  lastActiveTool: import("../types").ActiveTool | null;
55
66
  locked: boolean;
@@ -75,7 +86,7 @@ export declare const actionToggleElementLock: {
75
86
  currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
76
87
  currentHoveredFontFamily: number | null;
77
88
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
78
- currentItemArrowType: "round" | "sharp" | "elbow";
89
+ currentItemArrowType: "sharp" | "round" | "elbow";
79
90
  viewBackgroundColor: string;
80
91
  scrollX: number;
81
92
  scrollY: number;
@@ -87,7 +98,7 @@ export declare const actionToggleElementLock: {
87
98
  zoom: Readonly<{
88
99
  value: import("../types").NormalizedZoomValue;
89
100
  }>;
90
- openMenu: "shape" | "canvas" | null;
101
+ openMenu: "canvas" | "shape" | null;
91
102
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
92
103
  openSidebar: {
93
104
  name: string;
@@ -106,9 +117,6 @@ export declare const actionToggleElementLock: {
106
117
  } | null;
107
118
  defaultSidebarDockedPreference: boolean;
108
119
  lastPointerDownWith: import("@excalidraw/element/types").PointerType;
109
- selectedElementIds: Readonly<{
110
- [id: string]: true;
111
- }>;
112
120
  hoveredElementIds: Readonly<{
113
121
  [id: string]: true;
114
122
  }>;
@@ -128,9 +136,6 @@ export declare const actionToggleElementLock: {
128
136
  gridStep: number;
129
137
  gridModeEnabled: boolean;
130
138
  viewModeEnabled: boolean;
131
- selectedGroupIds: {
132
- [groupId: string]: boolean;
133
- };
134
139
  editingGroupId: string | null;
135
140
  width: number;
136
141
  height: number;
@@ -169,8 +174,7 @@ export declare const actionToggleElementLock: {
169
174
  shown: true;
170
175
  data: import("../charts").Spreadsheet;
171
176
  };
172
- pendingImageElementId: string | null;
173
- showHyperlinkPopup: false | "editor" | "info";
177
+ showHyperlinkPopup: false | "info" | "editor";
174
178
  snapLines: readonly import("../snapping").SnapLine[];
175
179
  originSnapOffset: {
176
180
  x: number;
@@ -181,22 +185,16 @@ export declare const actionToggleElementLock: {
181
185
  followedBy: Set<import("../types").SocketId>;
182
186
  isCropping: boolean;
183
187
  croppingElementId: string | null;
184
- searchMatches: readonly {
185
- id: string;
186
- focus: boolean;
187
- matchedLines: {
188
- offsetX: number;
189
- offsetY: number;
190
- width: number;
191
- height: number;
192
- }[];
193
- }[];
188
+ searchMatches: Readonly<{
189
+ focusedId: string | null;
190
+ matches: readonly import("../types").SearchMatch[];
191
+ }> | null;
194
192
  };
195
193
  captureUpdate: "IMMEDIATELY";
196
194
  };
197
- keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>, appState: import("../types").AppState, elements: readonly ExcalidrawElement[], app: import("../types").AppClassProperties) => boolean;
195
+ keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent, appState: AppState, elements: readonly ExcalidrawElement[], app: import("../types").AppClassProperties) => boolean;
198
196
  } & {
199
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>, appState: import("../types").AppState, elements: readonly ExcalidrawElement[], app: import("../types").AppClassProperties) => boolean) | undefined;
197
+ keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent, appState: AppState, elements: readonly ExcalidrawElement[], app: import("../types").AppClassProperties) => boolean) | undefined;
200
198
  };
201
199
  export declare const actionUnlockAllElements: {
202
200
  name: "unlockAllElements";
@@ -205,13 +203,18 @@ export declare const actionUnlockAllElements: {
205
203
  };
206
204
  viewMode: false;
207
205
  icon: import("react/jsx-runtime").JSX.Element;
208
- predicate: (elements: readonly ExcalidrawElement[], appState: import("../types").AppState) => boolean;
209
- perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<import("../types").AppState>) => {
206
+ predicate: (elements: readonly ExcalidrawElement[], appState: AppState) => boolean;
207
+ perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>) => {
210
208
  elements: import("@excalidraw/element/types").OrderedExcalidrawElement[];
211
209
  appState: {
212
210
  selectedElementIds: {
213
211
  [k: string]: true;
214
212
  };
213
+ selectedGroupIds: {
214
+ [groupId: string]: boolean;
215
+ };
216
+ lockedMultiSelections: {};
217
+ activeLockedId: null;
215
218
  contextMenu: {
216
219
  items: import("../components/ContextMenu").ContextMenuItems;
217
220
  top: number;
@@ -238,7 +241,7 @@ export declare const actionUnlockAllElements: {
238
241
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
239
242
  isBindingEnabled: boolean;
240
243
  startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
241
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
244
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
242
245
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
243
246
  frameRendering: {
244
247
  enabled: boolean;
@@ -249,7 +252,7 @@ export declare const actionUnlockAllElements: {
249
252
  editingFrame: string | null;
250
253
  elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
251
254
  editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
252
- editingLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
255
+ editingLinearElement: import("@excalidraw/element").LinearElementEditor | null;
253
256
  activeTool: {
254
257
  lastActiveTool: import("../types").ActiveTool | null;
255
258
  locked: boolean;
@@ -275,7 +278,7 @@ export declare const actionUnlockAllElements: {
275
278
  currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
276
279
  currentHoveredFontFamily: number | null;
277
280
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
278
- currentItemArrowType: "round" | "sharp" | "elbow";
281
+ currentItemArrowType: "sharp" | "round" | "elbow";
279
282
  viewBackgroundColor: string;
280
283
  scrollX: number;
281
284
  scrollY: number;
@@ -287,7 +290,7 @@ export declare const actionUnlockAllElements: {
287
290
  zoom: Readonly<{
288
291
  value: import("../types").NormalizedZoomValue;
289
292
  }>;
290
- openMenu: "shape" | "canvas" | null;
293
+ openMenu: "canvas" | "shape" | null;
291
294
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
292
295
  openSidebar: {
293
296
  name: string;
@@ -325,9 +328,6 @@ export declare const actionUnlockAllElements: {
325
328
  gridStep: number;
326
329
  gridModeEnabled: boolean;
327
330
  viewModeEnabled: boolean;
328
- selectedGroupIds: {
329
- [groupId: string]: boolean;
330
- };
331
331
  editingGroupId: string | null;
332
332
  width: number;
333
333
  height: number;
@@ -366,9 +366,8 @@ export declare const actionUnlockAllElements: {
366
366
  shown: true;
367
367
  data: import("../charts").Spreadsheet;
368
368
  };
369
- pendingImageElementId: string | null;
370
- showHyperlinkPopup: false | "editor" | "info";
371
- selectedLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
369
+ showHyperlinkPopup: false | "info" | "editor";
370
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
372
371
  snapLines: readonly import("../snapping").SnapLine[];
373
372
  originSnapOffset: {
374
373
  x: number;
@@ -379,16 +378,10 @@ export declare const actionUnlockAllElements: {
379
378
  followedBy: Set<import("../types").SocketId>;
380
379
  isCropping: boolean;
381
380
  croppingElementId: string | null;
382
- searchMatches: readonly {
383
- id: string;
384
- focus: boolean;
385
- matchedLines: {
386
- offsetX: number;
387
- offsetY: number;
388
- width: number;
389
- height: number;
390
- }[];
391
- }[];
381
+ searchMatches: Readonly<{
382
+ focusedId: string | null;
383
+ matches: readonly import("../types").SearchMatch[];
384
+ }> | null;
392
385
  };
393
386
  captureUpdate: "IMMEDIATELY";
394
387
  };
@@ -40,7 +40,7 @@ export declare const actionSetEmbeddableAsActiveTool: {
40
40
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
41
41
  isBindingEnabled: boolean;
42
42
  startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
43
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
43
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
44
44
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
45
45
  frameRendering: {
46
46
  enabled: boolean;
@@ -51,7 +51,7 @@ export declare const actionSetEmbeddableAsActiveTool: {
51
51
  editingFrame: string | null;
52
52
  elementsToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawElement>[] | null;
53
53
  editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
54
- editingLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
54
+ editingLinearElement: import("@excalidraw/element").LinearElementEditor | null;
55
55
  penMode: boolean;
56
56
  penDetected: boolean;
57
57
  exportBackground: boolean;
@@ -72,7 +72,7 @@ export declare const actionSetEmbeddableAsActiveTool: {
72
72
  currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
73
73
  currentHoveredFontFamily: number | null;
74
74
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
75
- currentItemArrowType: "round" | "sharp" | "elbow";
75
+ currentItemArrowType: "sharp" | "round" | "elbow";
76
76
  viewBackgroundColor: string;
77
77
  scrollX: number;
78
78
  scrollY: number;
@@ -84,7 +84,7 @@ export declare const actionSetEmbeddableAsActiveTool: {
84
84
  zoom: Readonly<{
85
85
  value: import("../types").NormalizedZoomValue;
86
86
  }>;
87
- openMenu: "shape" | "canvas" | null;
87
+ openMenu: "canvas" | "shape" | null;
88
88
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
89
89
  openSidebar: {
90
90
  name: string;
@@ -166,9 +166,8 @@ export declare const actionSetEmbeddableAsActiveTool: {
166
166
  shown: true;
167
167
  data: import("../charts").Spreadsheet;
168
168
  };
169
- pendingImageElementId: string | null;
170
- showHyperlinkPopup: false | "editor" | "info";
171
- selectedLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
169
+ showHyperlinkPopup: false | "info" | "editor";
170
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
172
171
  snapLines: readonly import("../snapping").SnapLine[];
173
172
  originSnapOffset: {
174
173
  x: number;
@@ -179,16 +178,14 @@ export declare const actionSetEmbeddableAsActiveTool: {
179
178
  followedBy: Set<import("../types").SocketId>;
180
179
  isCropping: boolean;
181
180
  croppingElementId: string | null;
182
- searchMatches: readonly {
183
- id: string;
184
- focus: boolean;
185
- matchedLines: {
186
- offsetX: number;
187
- offsetY: number;
188
- width: number;
189
- height: number;
190
- }[];
191
- }[];
181
+ searchMatches: Readonly<{
182
+ focusedId: string | null;
183
+ matches: readonly import("../types").SearchMatch[];
184
+ }> | null;
185
+ activeLockedId: string | null;
186
+ lockedMultiSelections: {
187
+ [groupId: string]: true;
188
+ };
192
189
  };
193
190
  captureUpdate: "EVENTUALLY";
194
191
  };