@excalidraw/excalidraw 0.18.0-58f7d33 → 0.18.0-6d75c4b34

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 (167) hide show
  1. package/dist/dev/chunk-CBGOW5JB.js +5669 -0
  2. package/dist/dev/chunk-CBGOW5JB.js.map +7 -0
  3. package/dist/dev/chunk-CP5DND7P.js +7 -0
  4. package/dist/dev/chunk-CP5DND7P.js.map +7 -0
  5. package/dist/dev/{chunk-X3RYHLJU.js → chunk-QF5FRM6O.js} +15 -5
  6. package/dist/dev/chunk-QF5FRM6O.js.map +7 -0
  7. package/dist/dev/data/{image-U2IPNUKJ.js → image-SURZSZNX.js} +3 -3
  8. package/dist/dev/index.css +100 -22
  9. package/dist/dev/index.css.map +3 -3
  10. package/dist/dev/index.js +8406 -9312
  11. package/dist/dev/index.js.map +4 -4
  12. package/dist/dev/locales/{en-CKWC2GMK.js → en-SMAPCEOQ.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-A66AFZZU.js +7 -0
  16. package/dist/prod/chunk-I4UNSFV6.js +12 -0
  17. package/dist/prod/chunk-IRHK23LL.js +4 -0
  18. package/dist/prod/data/image-HXEZYJPQ.js +1 -0
  19. package/dist/prod/index.css +1 -1
  20. package/dist/prod/index.js +25 -17
  21. package/dist/prod/locales/{en-SBO6ZHT2.js → en-TYY6KWIJ.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 +20 -3
  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/utility-types.d.ts +5 -0
  29. package/dist/types/common/src/utils.d.ts +17 -4
  30. package/dist/types/{excalidraw/scene → element/src}/Scene.d.ts +11 -14
  31. package/dist/types/element/src/align.d.ts +3 -3
  32. package/dist/types/element/src/binding.d.ts +26 -16
  33. package/dist/types/element/src/bounds.d.ts +13 -5
  34. package/dist/types/element/src/collision.d.ts +18 -12
  35. package/dist/types/element/src/cropElement.d.ts +1 -1
  36. package/dist/types/{excalidraw/change.d.ts → element/src/delta.d.ts} +63 -38
  37. package/dist/types/element/src/distance.d.ts +2 -2
  38. package/dist/types/element/src/dragElements.d.ts +3 -2
  39. package/dist/types/element/src/duplicate.d.ts +10 -13
  40. package/dist/types/element/src/elbowArrow.d.ts +1 -1
  41. package/dist/types/element/src/flowchart.d.ts +3 -2
  42. package/dist/types/element/src/fractionalIndex.d.ts +9 -3
  43. package/dist/types/element/src/frame.d.ts +5 -4
  44. package/dist/types/element/src/index.d.ts +43 -2
  45. package/dist/types/element/src/linearElementEditor.d.ts +22 -36
  46. package/dist/types/element/src/mutateElement.d.ts +11 -3
  47. package/dist/types/element/src/newElement.d.ts +4 -3
  48. package/dist/types/element/src/resizeElements.d.ts +5 -4
  49. package/dist/types/element/src/selection.d.ts +11 -5
  50. package/dist/types/element/src/shape.d.ts +42 -0
  51. package/dist/types/element/src/sizeHelpers.d.ts +2 -2
  52. package/dist/types/element/src/store.d.ts +232 -0
  53. package/dist/types/element/src/textElement.d.ts +4 -3
  54. package/dist/types/element/src/typeChecks.d.ts +19 -1
  55. package/dist/types/element/src/types.d.ts +15 -2
  56. package/dist/types/element/src/utils.d.ts +16 -6
  57. package/dist/types/element/src/zindex.d.ts +1 -1
  58. package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +42 -51
  59. package/dist/types/excalidraw/actions/actionBoundText.d.ts +28 -34
  60. package/dist/types/excalidraw/actions/actionCanvas.d.ts +188 -227
  61. package/dist/types/excalidraw/actions/actionClipboard.d.ts +81 -98
  62. package/dist/types/excalidraw/actions/actionCropEditor.d.ts +14 -17
  63. package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +37 -45
  64. package/dist/types/excalidraw/actions/actionElementLink.d.ts +13 -16
  65. package/dist/types/excalidraw/actions/actionElementLock.d.ts +43 -50
  66. package/dist/types/excalidraw/actions/actionEmbeddable.d.ts +14 -17
  67. package/dist/types/excalidraw/actions/actionExport.d.ts +136 -163
  68. package/dist/types/excalidraw/actions/actionFinalize.d.ts +71 -37
  69. package/dist/types/excalidraw/actions/actionFrame.d.ts +103 -115
  70. package/dist/types/excalidraw/actions/actionGroup.d.ts +28 -34
  71. package/dist/types/excalidraw/actions/actionHistory.d.ts +1 -2
  72. package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +506 -16
  73. package/dist/types/excalidraw/actions/actionLink.d.ts +13 -16
  74. package/dist/types/excalidraw/actions/actionMenu.d.ts +39 -48
  75. package/dist/types/excalidraw/actions/actionNavigate.d.ts +27 -33
  76. package/dist/types/excalidraw/actions/actionProperties.d.ts +203 -240
  77. package/dist/types/excalidraw/actions/actionSelectAll.d.ts +13 -16
  78. package/dist/types/excalidraw/actions/actionStyles.d.ts +14 -17
  79. package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +14 -17
  80. package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +14 -17
  81. package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +13 -189
  82. package/dist/types/excalidraw/actions/actionToggleShapeSwitch.d.ts +19 -0
  83. package/dist/types/excalidraw/actions/actionToggleStats.d.ts +14 -17
  84. package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +14 -17
  85. package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +14 -17
  86. package/dist/types/excalidraw/actions/types.d.ts +4 -3
  87. package/dist/types/excalidraw/appState.d.ts +19 -10
  88. package/dist/types/excalidraw/components/App.d.ts +30 -19
  89. package/dist/types/excalidraw/components/ButtonIcon.d.ts +1 -0
  90. package/dist/types/excalidraw/components/ColorPicker/ColorInput.d.ts +2 -1
  91. package/dist/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +5 -1
  92. package/dist/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +1 -1
  93. package/dist/types/excalidraw/components/ColorPicker/Picker.d.ts +2 -3
  94. package/dist/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +2 -3
  95. package/dist/types/excalidraw/components/ColorPicker/ShadeList.d.ts +2 -2
  96. package/dist/types/excalidraw/components/ColorPicker/TopPicks.d.ts +1 -1
  97. package/dist/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +1 -1
  98. package/dist/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +1 -1
  99. package/dist/types/excalidraw/components/ConvertElementTypePopup.d.ts +23 -0
  100. package/dist/types/excalidraw/components/ElementLinkDialog.d.ts +4 -3
  101. package/dist/types/excalidraw/components/{ButtonIconSelect.d.ts → RadioSelection.d.ts} +1 -1
  102. package/dist/types/excalidraw/components/Range.d.ts +3 -3
  103. package/dist/types/excalidraw/components/Stats/Angle.d.ts +1 -1
  104. package/dist/types/excalidraw/components/Stats/CanvasGrid.d.ts +1 -1
  105. package/dist/types/excalidraw/components/Stats/Collapsible.d.ts +2 -1
  106. package/dist/types/excalidraw/components/Stats/Dimension.d.ts +1 -1
  107. package/dist/types/excalidraw/components/Stats/DragInput.d.ts +12 -2
  108. package/dist/types/excalidraw/components/Stats/FontSize.d.ts +1 -1
  109. package/dist/types/excalidraw/components/Stats/MultiAngle.d.ts +1 -1
  110. package/dist/types/excalidraw/components/Stats/MultiDimension.d.ts +1 -1
  111. package/dist/types/excalidraw/components/Stats/MultiFontSize.d.ts +1 -1
  112. package/dist/types/excalidraw/components/Stats/MultiPosition.d.ts +1 -1
  113. package/dist/types/excalidraw/components/Stats/Position.d.ts +1 -1
  114. package/dist/types/excalidraw/components/Stats/utils.d.ts +4 -11
  115. package/dist/types/excalidraw/components/UnlockPopup.d.ts +8 -0
  116. package/dist/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +1 -0
  117. package/dist/types/excalidraw/components/hyperlink/Hyperlink.d.ts +3 -2
  118. package/dist/types/excalidraw/components/hyperlink/helpers.d.ts +2 -1
  119. package/dist/types/excalidraw/components/icons.d.ts +3 -0
  120. package/dist/types/excalidraw/components/shapes.d.ts +1 -1
  121. package/dist/types/excalidraw/data/transform.d.ts +1 -1
  122. package/dist/types/excalidraw/editor-jotai.d.ts +6 -6
  123. package/dist/types/excalidraw/eraser/index.d.ts +0 -2
  124. package/dist/types/excalidraw/fonts/Fonts.d.ts +1 -1
  125. package/dist/types/excalidraw/history.d.ts +30 -22
  126. package/dist/types/excalidraw/hooks/useEmitter.d.ts +1 -1
  127. package/dist/types/excalidraw/index.d.ts +9 -9
  128. package/dist/types/excalidraw/lasso/index.d.ts +1 -0
  129. package/dist/types/excalidraw/lasso/utils.d.ts +2 -1
  130. package/dist/types/excalidraw/renderer/helpers.d.ts +7 -2
  131. package/dist/types/excalidraw/scene/Renderer.d.ts +1 -2
  132. package/dist/types/excalidraw/scene/index.d.ts +2 -2
  133. package/dist/types/excalidraw/scene/scrollbars.d.ts +2 -3
  134. package/dist/types/excalidraw/scene/types.d.ts +2 -0
  135. package/dist/types/excalidraw/snapping.d.ts +2 -2
  136. package/dist/types/excalidraw/types.d.ts +30 -10
  137. package/dist/types/excalidraw/wysiwyg/textWysiwyg.d.ts +3 -1
  138. package/dist/types/math/src/angle.d.ts +2 -0
  139. package/dist/types/math/src/constants.d.ts +3 -0
  140. package/dist/types/math/src/curve.d.ts +34 -0
  141. package/dist/types/math/src/index.d.ts +1 -0
  142. package/dist/types/math/src/point.d.ts +1 -1
  143. package/dist/types/math/src/rectangle.d.ts +2 -0
  144. package/dist/types/math/src/vector.d.ts +8 -2
  145. package/dist/types/utils/src/bbox.d.ts +1 -1
  146. package/dist/types/utils/src/index.d.ts +1 -1
  147. package/dist/types/utils/src/withinBounds.d.ts +1 -1
  148. package/history.ts +147 -110
  149. package/package.json +12 -9
  150. package/dist/dev/chunk-KKJLIRJU.js +0 -7
  151. package/dist/dev/chunk-KKJLIRJU.js.map +0 -7
  152. package/dist/dev/chunk-LEJJ2YZY.js +0 -18711
  153. package/dist/dev/chunk-LEJJ2YZY.js.map +0 -7
  154. package/dist/dev/chunk-X3RYHLJU.js.map +0 -7
  155. package/dist/prod/chunk-IUH5AXLB.js +0 -12
  156. package/dist/prod/chunk-QUX7WTVH.js +0 -7
  157. package/dist/prod/chunk-RQK6WG4F.js +0 -33
  158. package/dist/prod/data/image-UQDATCXC.js +0 -1
  159. package/dist/types/element/src/Shape.d.ts +0 -17
  160. package/dist/types/element/src/ShapeCache.d.ts +0 -25
  161. package/dist/types/element/src/shapes.d.ts +0 -23
  162. package/dist/types/excalidraw/components/ButtonSelect.d.ts +0 -9
  163. package/dist/types/excalidraw/store.d.ts +0 -129
  164. package/dist/types/excalidraw/visualdebug.d.ts +0 -41
  165. package/dist/types/utils/src/collision.d.ts +0 -8
  166. /package/dist/dev/data/{image-U2IPNUKJ.js.map → image-SURZSZNX.js.map} +0 -0
  167. /package/dist/dev/locales/{en-CKWC2GMK.js.map → en-SMAPCEOQ.js.map} +0 -0
@@ -1,15 +1,15 @@
1
1
  /// <reference types="react" />
2
- import { LinearElementEditor } from "@excalidraw/element/linearElementEditor";
2
+ import { LinearElementEditor } from "@excalidraw/element";
3
3
  import type { Arrowhead, ExcalidrawBindableElement, ExcalidrawElement, ExcalidrawLinearElement } from "@excalidraw/element/types";
4
4
  import type { AppClassProperties, AppState, Primitive } from "../types";
5
5
  export declare const changeProperty: (elements: readonly ExcalidrawElement[], appState: AppState, callback: (element: ExcalidrawElement) => ExcalidrawElement, includeBoundText?: boolean) => ExcalidrawElement[];
6
- export declare const getFormValue: <T extends Primitive>(elements: readonly ExcalidrawElement[], appState: AppState, getAttribute: (element: ExcalidrawElement) => T, isRelevantElement: true | ((element: ExcalidrawElement) => boolean), defaultValue: T | ((isSomeElementSelected: boolean) => T)) => T;
6
+ export declare const getFormValue: <T extends Primitive>(elements: readonly ExcalidrawElement[], app: AppClassProperties, getAttribute: (element: ExcalidrawElement) => T, isRelevantElement: true | ((element: ExcalidrawElement) => boolean), defaultValue: T | ((isSomeElementSelected: boolean) => T)) => T;
7
7
  export declare const actionChangeStrokeColor: {
8
8
  name: "changeStrokeColor";
9
9
  label: string;
10
10
  trackEvent: false;
11
11
  perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, value: any) => any;
12
- PanelComponent: ({ elements, appState, updateData, appProps }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
12
+ PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
13
13
  } & {
14
14
  keyTest?: undefined;
15
15
  };
@@ -17,8 +17,16 @@ export declare const actionChangeBackgroundColor: {
17
17
  name: "changeBackgroundColor";
18
18
  label: string;
19
19
  trackEvent: false;
20
- perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, value: any) => any;
21
- PanelComponent: ({ elements, appState, updateData, appProps }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
20
+ perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, value: any, app: AppClassProperties) => {
21
+ appState: any;
22
+ captureUpdate: "EVENTUALLY";
23
+ elements?: undefined;
24
+ } | {
25
+ elements: ExcalidrawElement[];
26
+ appState: any;
27
+ captureUpdate: "IMMEDIATELY";
28
+ };
29
+ PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
22
30
  } & {
23
31
  keyTest?: undefined;
24
32
  };
@@ -40,7 +48,7 @@ export declare const actionChangeFillStyle: {
40
48
  errorMessage: import("react").ReactNode;
41
49
  activeEmbeddable: {
42
50
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
43
- state: "hover" | "active";
51
+ state: "active" | "hover";
44
52
  } | null;
45
53
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
46
54
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -48,7 +56,7 @@ export declare const actionChangeFillStyle: {
48
56
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
49
57
  isBindingEnabled: boolean;
50
58
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
51
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
59
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
52
60
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
53
61
  frameRendering: {
54
62
  enabled: boolean;
@@ -96,7 +104,7 @@ export declare const actionChangeFillStyle: {
96
104
  zoom: Readonly<{
97
105
  value: import("../types").NormalizedZoomValue;
98
106
  }>;
99
- openMenu: "shape" | "canvas" | null;
107
+ openMenu: "canvas" | "shape" | null;
100
108
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
101
109
  openSidebar: {
102
110
  name: string;
@@ -106,7 +114,7 @@ export declare const actionChangeFillStyle: {
106
114
  name: "imageExport" | "help" | "jsonExport";
107
115
  } | {
108
116
  name: "ttd";
109
- tab: "text-to-diagram" | "mermaid";
117
+ tab: "mermaid" | "text-to-diagram";
110
118
  } | {
111
119
  name: "commandPalette";
112
120
  } | {
@@ -178,7 +186,6 @@ export declare const actionChangeFillStyle: {
178
186
  shown: true;
179
187
  data: import("../charts").Spreadsheet;
180
188
  };
181
- pendingImageElementId: string | null;
182
189
  showHyperlinkPopup: false | "editor" | "info";
183
190
  selectedLinearElement: LinearElementEditor | null;
184
191
  snapLines: readonly import("../snapping").SnapLine[];
@@ -191,20 +198,18 @@ export declare const actionChangeFillStyle: {
191
198
  followedBy: Set<import("../types").SocketId>;
192
199
  isCropping: boolean;
193
200
  croppingElementId: string | null;
194
- searchMatches: readonly {
195
- id: string;
196
- focus: boolean;
197
- matchedLines: {
198
- offsetX: number;
199
- offsetY: number;
200
- width: number;
201
- height: number;
202
- }[];
203
- }[];
201
+ searchMatches: Readonly<{
202
+ focusedId: string | null;
203
+ matches: readonly import("../types").SearchMatch[];
204
+ }> | null;
205
+ activeLockedId: string | null;
206
+ lockedMultiSelections: {
207
+ [groupId: string]: true;
208
+ };
204
209
  };
205
210
  captureUpdate: "IMMEDIATELY";
206
211
  };
207
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
212
+ PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
208
213
  } & {
209
214
  keyTest?: undefined;
210
215
  };
@@ -226,7 +231,7 @@ export declare const actionChangeStrokeWidth: {
226
231
  errorMessage: import("react").ReactNode;
227
232
  activeEmbeddable: {
228
233
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
229
- state: "hover" | "active";
234
+ state: "active" | "hover";
230
235
  } | null;
231
236
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
232
237
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -234,7 +239,7 @@ export declare const actionChangeStrokeWidth: {
234
239
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
235
240
  isBindingEnabled: boolean;
236
241
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
237
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
242
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
238
243
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
239
244
  frameRendering: {
240
245
  enabled: boolean;
@@ -282,7 +287,7 @@ export declare const actionChangeStrokeWidth: {
282
287
  zoom: Readonly<{
283
288
  value: import("../types").NormalizedZoomValue;
284
289
  }>;
285
- openMenu: "shape" | "canvas" | null;
290
+ openMenu: "canvas" | "shape" | null;
286
291
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
287
292
  openSidebar: {
288
293
  name: string;
@@ -292,7 +297,7 @@ export declare const actionChangeStrokeWidth: {
292
297
  name: "imageExport" | "help" | "jsonExport";
293
298
  } | {
294
299
  name: "ttd";
295
- tab: "text-to-diagram" | "mermaid";
300
+ tab: "mermaid" | "text-to-diagram";
296
301
  } | {
297
302
  name: "commandPalette";
298
303
  } | {
@@ -364,7 +369,6 @@ export declare const actionChangeStrokeWidth: {
364
369
  shown: true;
365
370
  data: import("../charts").Spreadsheet;
366
371
  };
367
- pendingImageElementId: string | null;
368
372
  showHyperlinkPopup: false | "editor" | "info";
369
373
  selectedLinearElement: LinearElementEditor | null;
370
374
  snapLines: readonly import("../snapping").SnapLine[];
@@ -377,20 +381,18 @@ export declare const actionChangeStrokeWidth: {
377
381
  followedBy: Set<import("../types").SocketId>;
378
382
  isCropping: boolean;
379
383
  croppingElementId: string | null;
380
- searchMatches: readonly {
381
- id: string;
382
- focus: boolean;
383
- matchedLines: {
384
- offsetX: number;
385
- offsetY: number;
386
- width: number;
387
- height: number;
388
- }[];
389
- }[];
384
+ searchMatches: Readonly<{
385
+ focusedId: string | null;
386
+ matches: readonly import("../types").SearchMatch[];
387
+ }> | null;
388
+ activeLockedId: string | null;
389
+ lockedMultiSelections: {
390
+ [groupId: string]: true;
391
+ };
390
392
  };
391
393
  captureUpdate: "IMMEDIATELY";
392
394
  };
393
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
395
+ PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
394
396
  } & {
395
397
  keyTest?: undefined;
396
398
  };
@@ -412,7 +414,7 @@ export declare const actionChangeSloppiness: {
412
414
  errorMessage: import("react").ReactNode;
413
415
  activeEmbeddable: {
414
416
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
415
- state: "hover" | "active";
417
+ state: "active" | "hover";
416
418
  } | null;
417
419
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
418
420
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -420,7 +422,7 @@ export declare const actionChangeSloppiness: {
420
422
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
421
423
  isBindingEnabled: boolean;
422
424
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
423
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
425
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
424
426
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
425
427
  frameRendering: {
426
428
  enabled: boolean;
@@ -468,7 +470,7 @@ export declare const actionChangeSloppiness: {
468
470
  zoom: Readonly<{
469
471
  value: import("../types").NormalizedZoomValue;
470
472
  }>;
471
- openMenu: "shape" | "canvas" | null;
473
+ openMenu: "canvas" | "shape" | null;
472
474
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
473
475
  openSidebar: {
474
476
  name: string;
@@ -478,7 +480,7 @@ export declare const actionChangeSloppiness: {
478
480
  name: "imageExport" | "help" | "jsonExport";
479
481
  } | {
480
482
  name: "ttd";
481
- tab: "text-to-diagram" | "mermaid";
483
+ tab: "mermaid" | "text-to-diagram";
482
484
  } | {
483
485
  name: "commandPalette";
484
486
  } | {
@@ -550,7 +552,6 @@ export declare const actionChangeSloppiness: {
550
552
  shown: true;
551
553
  data: import("../charts").Spreadsheet;
552
554
  };
553
- pendingImageElementId: string | null;
554
555
  showHyperlinkPopup: false | "editor" | "info";
555
556
  selectedLinearElement: LinearElementEditor | null;
556
557
  snapLines: readonly import("../snapping").SnapLine[];
@@ -563,20 +564,18 @@ export declare const actionChangeSloppiness: {
563
564
  followedBy: Set<import("../types").SocketId>;
564
565
  isCropping: boolean;
565
566
  croppingElementId: string | null;
566
- searchMatches: readonly {
567
- id: string;
568
- focus: boolean;
569
- matchedLines: {
570
- offsetX: number;
571
- offsetY: number;
572
- width: number;
573
- height: number;
574
- }[];
575
- }[];
567
+ searchMatches: Readonly<{
568
+ focusedId: string | null;
569
+ matches: readonly import("../types").SearchMatch[];
570
+ }> | null;
571
+ activeLockedId: string | null;
572
+ lockedMultiSelections: {
573
+ [groupId: string]: true;
574
+ };
576
575
  };
577
576
  captureUpdate: "IMMEDIATELY";
578
577
  };
579
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
578
+ PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
580
579
  } & {
581
580
  keyTest?: undefined;
582
581
  };
@@ -598,7 +597,7 @@ export declare const actionChangeStrokeStyle: {
598
597
  errorMessage: import("react").ReactNode;
599
598
  activeEmbeddable: {
600
599
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
601
- state: "hover" | "active";
600
+ state: "active" | "hover";
602
601
  } | null;
603
602
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
604
603
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -606,7 +605,7 @@ export declare const actionChangeStrokeStyle: {
606
605
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
607
606
  isBindingEnabled: boolean;
608
607
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
609
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
608
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
610
609
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
611
610
  frameRendering: {
612
611
  enabled: boolean;
@@ -654,7 +653,7 @@ export declare const actionChangeStrokeStyle: {
654
653
  zoom: Readonly<{
655
654
  value: import("../types").NormalizedZoomValue;
656
655
  }>;
657
- openMenu: "shape" | "canvas" | null;
656
+ openMenu: "canvas" | "shape" | null;
658
657
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
659
658
  openSidebar: {
660
659
  name: string;
@@ -664,7 +663,7 @@ export declare const actionChangeStrokeStyle: {
664
663
  name: "imageExport" | "help" | "jsonExport";
665
664
  } | {
666
665
  name: "ttd";
667
- tab: "text-to-diagram" | "mermaid";
666
+ tab: "mermaid" | "text-to-diagram";
668
667
  } | {
669
668
  name: "commandPalette";
670
669
  } | {
@@ -736,7 +735,6 @@ export declare const actionChangeStrokeStyle: {
736
735
  shown: true;
737
736
  data: import("../charts").Spreadsheet;
738
737
  };
739
- pendingImageElementId: string | null;
740
738
  showHyperlinkPopup: false | "editor" | "info";
741
739
  selectedLinearElement: LinearElementEditor | null;
742
740
  snapLines: readonly import("../snapping").SnapLine[];
@@ -749,20 +747,18 @@ export declare const actionChangeStrokeStyle: {
749
747
  followedBy: Set<import("../types").SocketId>;
750
748
  isCropping: boolean;
751
749
  croppingElementId: string | null;
752
- searchMatches: readonly {
753
- id: string;
754
- focus: boolean;
755
- matchedLines: {
756
- offsetX: number;
757
- offsetY: number;
758
- width: number;
759
- height: number;
760
- }[];
761
- }[];
750
+ searchMatches: Readonly<{
751
+ focusedId: string | null;
752
+ matches: readonly import("../types").SearchMatch[];
753
+ }> | null;
754
+ activeLockedId: string | null;
755
+ lockedMultiSelections: {
756
+ [groupId: string]: true;
757
+ };
762
758
  };
763
759
  captureUpdate: "IMMEDIATELY";
764
760
  };
765
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
761
+ PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
766
762
  } & {
767
763
  keyTest?: undefined;
768
764
  };
@@ -784,7 +780,7 @@ export declare const actionChangeOpacity: {
784
780
  errorMessage: import("react").ReactNode;
785
781
  activeEmbeddable: {
786
782
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
787
- state: "hover" | "active";
783
+ state: "active" | "hover";
788
784
  } | null;
789
785
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
790
786
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -792,7 +788,7 @@ export declare const actionChangeOpacity: {
792
788
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
793
789
  isBindingEnabled: boolean;
794
790
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
795
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
791
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
796
792
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
797
793
  frameRendering: {
798
794
  enabled: boolean;
@@ -840,7 +836,7 @@ export declare const actionChangeOpacity: {
840
836
  zoom: Readonly<{
841
837
  value: import("../types").NormalizedZoomValue;
842
838
  }>;
843
- openMenu: "shape" | "canvas" | null;
839
+ openMenu: "canvas" | "shape" | null;
844
840
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
845
841
  openSidebar: {
846
842
  name: string;
@@ -850,7 +846,7 @@ export declare const actionChangeOpacity: {
850
846
  name: "imageExport" | "help" | "jsonExport";
851
847
  } | {
852
848
  name: "ttd";
853
- tab: "text-to-diagram" | "mermaid";
849
+ tab: "mermaid" | "text-to-diagram";
854
850
  } | {
855
851
  name: "commandPalette";
856
852
  } | {
@@ -922,7 +918,6 @@ export declare const actionChangeOpacity: {
922
918
  shown: true;
923
919
  data: import("../charts").Spreadsheet;
924
920
  };
925
- pendingImageElementId: string | null;
926
921
  showHyperlinkPopup: false | "editor" | "info";
927
922
  selectedLinearElement: LinearElementEditor | null;
928
923
  snapLines: readonly import("../snapping").SnapLine[];
@@ -935,20 +930,18 @@ export declare const actionChangeOpacity: {
935
930
  followedBy: Set<import("../types").SocketId>;
936
931
  isCropping: boolean;
937
932
  croppingElementId: string | null;
938
- searchMatches: readonly {
939
- id: string;
940
- focus: boolean;
941
- matchedLines: {
942
- offsetX: number;
943
- offsetY: number;
944
- width: number;
945
- height: number;
946
- }[];
947
- }[];
933
+ searchMatches: Readonly<{
934
+ focusedId: string | null;
935
+ matches: readonly import("../types").SearchMatch[];
936
+ }> | null;
937
+ activeLockedId: string | null;
938
+ lockedMultiSelections: {
939
+ [groupId: string]: true;
940
+ };
948
941
  };
949
942
  captureUpdate: "IMMEDIATELY";
950
943
  };
951
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
944
+ PanelComponent: ({ app, updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
952
945
  } & {
953
946
  keyTest?: undefined;
954
947
  };
@@ -970,7 +963,7 @@ export declare const actionChangeFontSize: {
970
963
  errorMessage: import("react").ReactNode;
971
964
  activeEmbeddable: {
972
965
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
973
- state: "hover" | "active";
966
+ state: "active" | "hover";
974
967
  } | null;
975
968
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
976
969
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -978,7 +971,7 @@ export declare const actionChangeFontSize: {
978
971
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
979
972
  isBindingEnabled: boolean;
980
973
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
981
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
974
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
982
975
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
983
976
  frameRendering: {
984
977
  enabled: boolean;
@@ -1026,7 +1019,7 @@ export declare const actionChangeFontSize: {
1026
1019
  zoom: Readonly<{
1027
1020
  value: import("../types").NormalizedZoomValue;
1028
1021
  }>;
1029
- openMenu: "shape" | "canvas" | null;
1022
+ openMenu: "canvas" | "shape" | null;
1030
1023
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
1031
1024
  openSidebar: {
1032
1025
  name: string;
@@ -1036,7 +1029,7 @@ export declare const actionChangeFontSize: {
1036
1029
  name: "imageExport" | "help" | "jsonExport";
1037
1030
  } | {
1038
1031
  name: "ttd";
1039
- tab: "text-to-diagram" | "mermaid";
1032
+ tab: "mermaid" | "text-to-diagram";
1040
1033
  } | {
1041
1034
  name: "commandPalette";
1042
1035
  } | {
@@ -1108,7 +1101,6 @@ export declare const actionChangeFontSize: {
1108
1101
  shown: true;
1109
1102
  data: import("../charts").Spreadsheet;
1110
1103
  };
1111
- pendingImageElementId: string | null;
1112
1104
  showHyperlinkPopup: false | "editor" | "info";
1113
1105
  selectedLinearElement: LinearElementEditor | null;
1114
1106
  snapLines: readonly import("../snapping").SnapLine[];
@@ -1121,16 +1113,14 @@ export declare const actionChangeFontSize: {
1121
1113
  followedBy: Set<import("../types").SocketId>;
1122
1114
  isCropping: boolean;
1123
1115
  croppingElementId: string | null;
1124
- searchMatches: readonly {
1125
- id: string;
1126
- focus: boolean;
1127
- matchedLines: {
1128
- offsetX: number;
1129
- offsetY: number;
1130
- width: number;
1131
- height: number;
1132
- }[];
1133
- }[];
1116
+ searchMatches: Readonly<{
1117
+ focusedId: string | null;
1118
+ matches: readonly import("../types").SearchMatch[];
1119
+ }> | null;
1120
+ activeLockedId: string | null;
1121
+ lockedMultiSelections: {
1122
+ [groupId: string]: true;
1123
+ };
1134
1124
  };
1135
1125
  captureUpdate: "IMMEDIATELY";
1136
1126
  };
@@ -1157,7 +1147,7 @@ export declare const actionDecreaseFontSize: {
1157
1147
  errorMessage: import("react").ReactNode;
1158
1148
  activeEmbeddable: {
1159
1149
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
1160
- state: "hover" | "active";
1150
+ state: "active" | "hover";
1161
1151
  } | null;
1162
1152
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
1163
1153
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -1165,7 +1155,7 @@ export declare const actionDecreaseFontSize: {
1165
1155
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1166
1156
  isBindingEnabled: boolean;
1167
1157
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
1168
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
1158
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
1169
1159
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1170
1160
  frameRendering: {
1171
1161
  enabled: boolean;
@@ -1213,7 +1203,7 @@ export declare const actionDecreaseFontSize: {
1213
1203
  zoom: Readonly<{
1214
1204
  value: import("../types").NormalizedZoomValue;
1215
1205
  }>;
1216
- openMenu: "shape" | "canvas" | null;
1206
+ openMenu: "canvas" | "shape" | null;
1217
1207
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
1218
1208
  openSidebar: {
1219
1209
  name: string;
@@ -1223,7 +1213,7 @@ export declare const actionDecreaseFontSize: {
1223
1213
  name: "imageExport" | "help" | "jsonExport";
1224
1214
  } | {
1225
1215
  name: "ttd";
1226
- tab: "text-to-diagram" | "mermaid";
1216
+ tab: "mermaid" | "text-to-diagram";
1227
1217
  } | {
1228
1218
  name: "commandPalette";
1229
1219
  } | {
@@ -1295,7 +1285,6 @@ export declare const actionDecreaseFontSize: {
1295
1285
  shown: true;
1296
1286
  data: import("../charts").Spreadsheet;
1297
1287
  };
1298
- pendingImageElementId: string | null;
1299
1288
  showHyperlinkPopup: false | "editor" | "info";
1300
1289
  selectedLinearElement: LinearElementEditor | null;
1301
1290
  snapLines: readonly import("../snapping").SnapLine[];
@@ -1308,16 +1297,14 @@ export declare const actionDecreaseFontSize: {
1308
1297
  followedBy: Set<import("../types").SocketId>;
1309
1298
  isCropping: boolean;
1310
1299
  croppingElementId: string | null;
1311
- searchMatches: readonly {
1312
- id: string;
1313
- focus: boolean;
1314
- matchedLines: {
1315
- offsetX: number;
1316
- offsetY: number;
1317
- width: number;
1318
- height: number;
1319
- }[];
1320
- }[];
1300
+ searchMatches: Readonly<{
1301
+ focusedId: string | null;
1302
+ matches: readonly import("../types").SearchMatch[];
1303
+ }> | null;
1304
+ activeLockedId: string | null;
1305
+ lockedMultiSelections: {
1306
+ [groupId: string]: true;
1307
+ };
1321
1308
  };
1322
1309
  captureUpdate: "IMMEDIATELY";
1323
1310
  };
@@ -1344,7 +1331,7 @@ export declare const actionIncreaseFontSize: {
1344
1331
  errorMessage: import("react").ReactNode;
1345
1332
  activeEmbeddable: {
1346
1333
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
1347
- state: "hover" | "active";
1334
+ state: "active" | "hover";
1348
1335
  } | null;
1349
1336
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
1350
1337
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -1352,7 +1339,7 @@ export declare const actionIncreaseFontSize: {
1352
1339
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1353
1340
  isBindingEnabled: boolean;
1354
1341
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
1355
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
1342
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
1356
1343
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1357
1344
  frameRendering: {
1358
1345
  enabled: boolean;
@@ -1400,7 +1387,7 @@ export declare const actionIncreaseFontSize: {
1400
1387
  zoom: Readonly<{
1401
1388
  value: import("../types").NormalizedZoomValue;
1402
1389
  }>;
1403
- openMenu: "shape" | "canvas" | null;
1390
+ openMenu: "canvas" | "shape" | null;
1404
1391
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
1405
1392
  openSidebar: {
1406
1393
  name: string;
@@ -1410,7 +1397,7 @@ export declare const actionIncreaseFontSize: {
1410
1397
  name: "imageExport" | "help" | "jsonExport";
1411
1398
  } | {
1412
1399
  name: "ttd";
1413
- tab: "text-to-diagram" | "mermaid";
1400
+ tab: "mermaid" | "text-to-diagram";
1414
1401
  } | {
1415
1402
  name: "commandPalette";
1416
1403
  } | {
@@ -1482,7 +1469,6 @@ export declare const actionIncreaseFontSize: {
1482
1469
  shown: true;
1483
1470
  data: import("../charts").Spreadsheet;
1484
1471
  };
1485
- pendingImageElementId: string | null;
1486
1472
  showHyperlinkPopup: false | "editor" | "info";
1487
1473
  selectedLinearElement: LinearElementEditor | null;
1488
1474
  snapLines: readonly import("../snapping").SnapLine[];
@@ -1495,16 +1481,14 @@ export declare const actionIncreaseFontSize: {
1495
1481
  followedBy: Set<import("../types").SocketId>;
1496
1482
  isCropping: boolean;
1497
1483
  croppingElementId: string | null;
1498
- searchMatches: readonly {
1499
- id: string;
1500
- focus: boolean;
1501
- matchedLines: {
1502
- offsetX: number;
1503
- offsetY: number;
1504
- width: number;
1505
- height: number;
1506
- }[];
1507
- }[];
1484
+ searchMatches: Readonly<{
1485
+ focusedId: string | null;
1486
+ matches: readonly import("../types").SearchMatch[];
1487
+ }> | null;
1488
+ activeLockedId: string | null;
1489
+ lockedMultiSelections: {
1490
+ [groupId: string]: true;
1491
+ };
1508
1492
  };
1509
1493
  captureUpdate: "IMMEDIATELY";
1510
1494
  };
@@ -1518,8 +1502,8 @@ export declare const actionChangeFontFamily: {
1518
1502
  trackEvent: false;
1519
1503
  perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, value: any, app: AppClassProperties) => {
1520
1504
  appState: {
1521
- currentHoveredFontFamily: number | null;
1522
1505
  currentItemFontFamily: number;
1506
+ currentHoveredFontFamily: number | null;
1523
1507
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
1524
1508
  contextMenu: {
1525
1509
  items: import("../components/ContextMenu").ContextMenuItems;
@@ -1531,7 +1515,7 @@ export declare const actionChangeFontFamily: {
1531
1515
  errorMessage: import("react").ReactNode;
1532
1516
  activeEmbeddable: {
1533
1517
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
1534
- state: "hover" | "active";
1518
+ state: "active" | "hover";
1535
1519
  } | null;
1536
1520
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
1537
1521
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -1539,7 +1523,7 @@ export declare const actionChangeFontFamily: {
1539
1523
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1540
1524
  isBindingEnabled: boolean;
1541
1525
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
1542
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
1526
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
1543
1527
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1544
1528
  frameRendering: {
1545
1529
  enabled: boolean;
@@ -1586,7 +1570,7 @@ export declare const actionChangeFontFamily: {
1586
1570
  zoom: Readonly<{
1587
1571
  value: import("../types").NormalizedZoomValue;
1588
1572
  }>;
1589
- openMenu: "shape" | "canvas" | null;
1573
+ openMenu: "canvas" | "shape" | null;
1590
1574
  openSidebar: {
1591
1575
  name: string;
1592
1576
  tab?: string | undefined;
@@ -1595,7 +1579,7 @@ export declare const actionChangeFontFamily: {
1595
1579
  name: "imageExport" | "help" | "jsonExport";
1596
1580
  } | {
1597
1581
  name: "ttd";
1598
- tab: "text-to-diagram" | "mermaid";
1582
+ tab: "mermaid" | "text-to-diagram";
1599
1583
  } | {
1600
1584
  name: "commandPalette";
1601
1585
  } | {
@@ -1667,7 +1651,6 @@ export declare const actionChangeFontFamily: {
1667
1651
  shown: true;
1668
1652
  data: import("../charts").Spreadsheet;
1669
1653
  };
1670
- pendingImageElementId: string | null;
1671
1654
  showHyperlinkPopup: false | "editor" | "info";
1672
1655
  selectedLinearElement: LinearElementEditor | null;
1673
1656
  snapLines: readonly import("../snapping").SnapLine[];
@@ -1680,23 +1663,21 @@ export declare const actionChangeFontFamily: {
1680
1663
  followedBy: Set<import("../types").SocketId>;
1681
1664
  isCropping: boolean;
1682
1665
  croppingElementId: string | null;
1683
- searchMatches: readonly {
1684
- id: string;
1685
- focus: boolean;
1686
- matchedLines: {
1687
- offsetX: number;
1688
- offsetY: number;
1689
- width: number;
1690
- height: number;
1691
- }[];
1692
- }[];
1666
+ searchMatches: Readonly<{
1667
+ focusedId: string | null;
1668
+ matches: readonly import("../types").SearchMatch[];
1669
+ }> | null;
1670
+ activeLockedId: string | null;
1671
+ lockedMultiSelections: {
1672
+ [groupId: string]: true;
1673
+ };
1693
1674
  };
1694
1675
  captureUpdate: "IMMEDIATELY" | "EVENTUALLY";
1695
1676
  } | {
1696
1677
  elements: ExcalidrawElement[];
1697
1678
  appState: {
1698
- currentHoveredFontFamily: number | null;
1699
1679
  currentItemFontFamily: number;
1680
+ currentHoveredFontFamily: number | null;
1700
1681
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
1701
1682
  contextMenu: {
1702
1683
  items: import("../components/ContextMenu").ContextMenuItems;
@@ -1708,7 +1689,7 @@ export declare const actionChangeFontFamily: {
1708
1689
  errorMessage: import("react").ReactNode;
1709
1690
  activeEmbeddable: {
1710
1691
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
1711
- state: "hover" | "active";
1692
+ state: "active" | "hover";
1712
1693
  } | null;
1713
1694
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
1714
1695
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -1716,7 +1697,7 @@ export declare const actionChangeFontFamily: {
1716
1697
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1717
1698
  isBindingEnabled: boolean;
1718
1699
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
1719
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
1700
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
1720
1701
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1721
1702
  frameRendering: {
1722
1703
  enabled: boolean;
@@ -1763,7 +1744,7 @@ export declare const actionChangeFontFamily: {
1763
1744
  zoom: Readonly<{
1764
1745
  value: import("../types").NormalizedZoomValue;
1765
1746
  }>;
1766
- openMenu: "shape" | "canvas" | null;
1747
+ openMenu: "canvas" | "shape" | null;
1767
1748
  openSidebar: {
1768
1749
  name: string;
1769
1750
  tab?: string | undefined;
@@ -1772,7 +1753,7 @@ export declare const actionChangeFontFamily: {
1772
1753
  name: "imageExport" | "help" | "jsonExport";
1773
1754
  } | {
1774
1755
  name: "ttd";
1775
- tab: "text-to-diagram" | "mermaid";
1756
+ tab: "mermaid" | "text-to-diagram";
1776
1757
  } | {
1777
1758
  name: "commandPalette";
1778
1759
  } | {
@@ -1844,7 +1825,6 @@ export declare const actionChangeFontFamily: {
1844
1825
  shown: true;
1845
1826
  data: import("../charts").Spreadsheet;
1846
1827
  };
1847
- pendingImageElementId: string | null;
1848
1828
  showHyperlinkPopup: false | "editor" | "info";
1849
1829
  selectedLinearElement: LinearElementEditor | null;
1850
1830
  snapLines: readonly import("../snapping").SnapLine[];
@@ -1857,16 +1837,14 @@ export declare const actionChangeFontFamily: {
1857
1837
  followedBy: Set<import("../types").SocketId>;
1858
1838
  isCropping: boolean;
1859
1839
  croppingElementId: string | null;
1860
- searchMatches: readonly {
1861
- id: string;
1862
- focus: boolean;
1863
- matchedLines: {
1864
- offsetX: number;
1865
- offsetY: number;
1866
- width: number;
1867
- height: number;
1868
- }[];
1869
- }[];
1840
+ searchMatches: Readonly<{
1841
+ focusedId: string | null;
1842
+ matches: readonly import("../types").SearchMatch[];
1843
+ }> | null;
1844
+ activeLockedId: string | null;
1845
+ lockedMultiSelections: {
1846
+ [groupId: string]: true;
1847
+ };
1870
1848
  };
1871
1849
  captureUpdate: "NEVER";
1872
1850
  };
@@ -1892,7 +1870,7 @@ export declare const actionChangeTextAlign: {
1892
1870
  errorMessage: import("react").ReactNode;
1893
1871
  activeEmbeddable: {
1894
1872
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
1895
- state: "hover" | "active";
1873
+ state: "active" | "hover";
1896
1874
  } | null;
1897
1875
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
1898
1876
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -1900,7 +1878,7 @@ export declare const actionChangeTextAlign: {
1900
1878
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1901
1879
  isBindingEnabled: boolean;
1902
1880
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
1903
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
1881
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
1904
1882
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1905
1883
  frameRendering: {
1906
1884
  enabled: boolean;
@@ -1948,7 +1926,7 @@ export declare const actionChangeTextAlign: {
1948
1926
  zoom: Readonly<{
1949
1927
  value: import("../types").NormalizedZoomValue;
1950
1928
  }>;
1951
- openMenu: "shape" | "canvas" | null;
1929
+ openMenu: "canvas" | "shape" | null;
1952
1930
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
1953
1931
  openSidebar: {
1954
1932
  name: string;
@@ -1958,7 +1936,7 @@ export declare const actionChangeTextAlign: {
1958
1936
  name: "imageExport" | "help" | "jsonExport";
1959
1937
  } | {
1960
1938
  name: "ttd";
1961
- tab: "text-to-diagram" | "mermaid";
1939
+ tab: "mermaid" | "text-to-diagram";
1962
1940
  } | {
1963
1941
  name: "commandPalette";
1964
1942
  } | {
@@ -2030,7 +2008,6 @@ export declare const actionChangeTextAlign: {
2030
2008
  shown: true;
2031
2009
  data: import("../charts").Spreadsheet;
2032
2010
  };
2033
- pendingImageElementId: string | null;
2034
2011
  showHyperlinkPopup: false | "editor" | "info";
2035
2012
  selectedLinearElement: LinearElementEditor | null;
2036
2013
  snapLines: readonly import("../snapping").SnapLine[];
@@ -2043,16 +2020,14 @@ export declare const actionChangeTextAlign: {
2043
2020
  followedBy: Set<import("../types").SocketId>;
2044
2021
  isCropping: boolean;
2045
2022
  croppingElementId: string | null;
2046
- searchMatches: readonly {
2047
- id: string;
2048
- focus: boolean;
2049
- matchedLines: {
2050
- offsetX: number;
2051
- offsetY: number;
2052
- width: number;
2053
- height: number;
2054
- }[];
2055
- }[];
2023
+ searchMatches: Readonly<{
2024
+ focusedId: string | null;
2025
+ matches: readonly import("../types").SearchMatch[];
2026
+ }> | null;
2027
+ activeLockedId: string | null;
2028
+ lockedMultiSelections: {
2029
+ [groupId: string]: true;
2030
+ };
2056
2031
  };
2057
2032
  captureUpdate: "IMMEDIATELY";
2058
2033
  };
@@ -2079,7 +2054,7 @@ export declare const actionChangeVerticalAlign: {
2079
2054
  errorMessage: import("react").ReactNode;
2080
2055
  activeEmbeddable: {
2081
2056
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
2082
- state: "hover" | "active";
2057
+ state: "active" | "hover";
2083
2058
  } | null;
2084
2059
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
2085
2060
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -2087,7 +2062,7 @@ export declare const actionChangeVerticalAlign: {
2087
2062
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
2088
2063
  isBindingEnabled: boolean;
2089
2064
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
2090
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
2065
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
2091
2066
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
2092
2067
  frameRendering: {
2093
2068
  enabled: boolean;
@@ -2136,7 +2111,7 @@ export declare const actionChangeVerticalAlign: {
2136
2111
  zoom: Readonly<{
2137
2112
  value: import("../types").NormalizedZoomValue;
2138
2113
  }>;
2139
- openMenu: "shape" | "canvas" | null;
2114
+ openMenu: "canvas" | "shape" | null;
2140
2115
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
2141
2116
  openSidebar: {
2142
2117
  name: string;
@@ -2146,7 +2121,7 @@ export declare const actionChangeVerticalAlign: {
2146
2121
  name: "imageExport" | "help" | "jsonExport";
2147
2122
  } | {
2148
2123
  name: "ttd";
2149
- tab: "text-to-diagram" | "mermaid";
2124
+ tab: "mermaid" | "text-to-diagram";
2150
2125
  } | {
2151
2126
  name: "commandPalette";
2152
2127
  } | {
@@ -2218,7 +2193,6 @@ export declare const actionChangeVerticalAlign: {
2218
2193
  shown: true;
2219
2194
  data: import("../charts").Spreadsheet;
2220
2195
  };
2221
- pendingImageElementId: string | null;
2222
2196
  showHyperlinkPopup: false | "editor" | "info";
2223
2197
  selectedLinearElement: LinearElementEditor | null;
2224
2198
  snapLines: readonly import("../snapping").SnapLine[];
@@ -2231,16 +2205,14 @@ export declare const actionChangeVerticalAlign: {
2231
2205
  followedBy: Set<import("../types").SocketId>;
2232
2206
  isCropping: boolean;
2233
2207
  croppingElementId: string | null;
2234
- searchMatches: readonly {
2235
- id: string;
2236
- focus: boolean;
2237
- matchedLines: {
2238
- offsetX: number;
2239
- offsetY: number;
2240
- width: number;
2241
- height: number;
2242
- }[];
2243
- }[];
2208
+ searchMatches: Readonly<{
2209
+ focusedId: string | null;
2210
+ matches: readonly import("../types").SearchMatch[];
2211
+ }> | null;
2212
+ activeLockedId: string | null;
2213
+ lockedMultiSelections: {
2214
+ [groupId: string]: true;
2215
+ };
2244
2216
  };
2245
2217
  captureUpdate: "IMMEDIATELY";
2246
2218
  };
@@ -2266,7 +2238,7 @@ export declare const actionChangeRoundness: {
2266
2238
  errorMessage: import("react").ReactNode;
2267
2239
  activeEmbeddable: {
2268
2240
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
2269
- state: "hover" | "active";
2241
+ state: "active" | "hover";
2270
2242
  } | null;
2271
2243
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
2272
2244
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -2274,7 +2246,7 @@ export declare const actionChangeRoundness: {
2274
2246
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
2275
2247
  isBindingEnabled: boolean;
2276
2248
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
2277
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
2249
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
2278
2250
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
2279
2251
  frameRendering: {
2280
2252
  enabled: boolean;
@@ -2322,7 +2294,7 @@ export declare const actionChangeRoundness: {
2322
2294
  zoom: Readonly<{
2323
2295
  value: import("../types").NormalizedZoomValue;
2324
2296
  }>;
2325
- openMenu: "shape" | "canvas" | null;
2297
+ openMenu: "canvas" | "shape" | null;
2326
2298
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
2327
2299
  openSidebar: {
2328
2300
  name: string;
@@ -2332,7 +2304,7 @@ export declare const actionChangeRoundness: {
2332
2304
  name: "imageExport" | "help" | "jsonExport";
2333
2305
  } | {
2334
2306
  name: "ttd";
2335
- tab: "text-to-diagram" | "mermaid";
2307
+ tab: "mermaid" | "text-to-diagram";
2336
2308
  } | {
2337
2309
  name: "commandPalette";
2338
2310
  } | {
@@ -2404,7 +2376,6 @@ export declare const actionChangeRoundness: {
2404
2376
  shown: true;
2405
2377
  data: import("../charts").Spreadsheet;
2406
2378
  };
2407
- pendingImageElementId: string | null;
2408
2379
  showHyperlinkPopup: false | "editor" | "info";
2409
2380
  selectedLinearElement: LinearElementEditor | null;
2410
2381
  snapLines: readonly import("../snapping").SnapLine[];
@@ -2417,20 +2388,18 @@ export declare const actionChangeRoundness: {
2417
2388
  followedBy: Set<import("../types").SocketId>;
2418
2389
  isCropping: boolean;
2419
2390
  croppingElementId: string | null;
2420
- searchMatches: readonly {
2421
- id: string;
2422
- focus: boolean;
2423
- matchedLines: {
2424
- offsetX: number;
2425
- offsetY: number;
2426
- width: number;
2427
- height: number;
2428
- }[];
2429
- }[];
2391
+ searchMatches: Readonly<{
2392
+ focusedId: string | null;
2393
+ matches: readonly import("../types").SearchMatch[];
2394
+ }> | null;
2395
+ activeLockedId: string | null;
2396
+ lockedMultiSelections: {
2397
+ [groupId: string]: true;
2398
+ };
2430
2399
  };
2431
2400
  captureUpdate: "IMMEDIATELY";
2432
2401
  };
2433
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
2402
+ PanelComponent: ({ elements, appState, updateData, app, renderAction }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
2434
2403
  } & {
2435
2404
  keyTest?: undefined;
2436
2405
  };
@@ -2454,7 +2423,7 @@ export declare const actionChangeArrowhead: {
2454
2423
  errorMessage: import("react").ReactNode;
2455
2424
  activeEmbeddable: {
2456
2425
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
2457
- state: "hover" | "active";
2426
+ state: "active" | "hover";
2458
2427
  } | null;
2459
2428
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
2460
2429
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -2462,7 +2431,7 @@ export declare const actionChangeArrowhead: {
2462
2431
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
2463
2432
  isBindingEnabled: boolean;
2464
2433
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
2465
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
2434
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
2466
2435
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
2467
2436
  frameRendering: {
2468
2437
  enabled: boolean;
@@ -2511,7 +2480,7 @@ export declare const actionChangeArrowhead: {
2511
2480
  zoom: Readonly<{
2512
2481
  value: import("../types").NormalizedZoomValue;
2513
2482
  }>;
2514
- openMenu: "shape" | "canvas" | null;
2483
+ openMenu: "canvas" | "shape" | null;
2515
2484
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
2516
2485
  openSidebar: {
2517
2486
  name: string;
@@ -2521,7 +2490,7 @@ export declare const actionChangeArrowhead: {
2521
2490
  name: "imageExport" | "help" | "jsonExport";
2522
2491
  } | {
2523
2492
  name: "ttd";
2524
- tab: "text-to-diagram" | "mermaid";
2493
+ tab: "mermaid" | "text-to-diagram";
2525
2494
  } | {
2526
2495
  name: "commandPalette";
2527
2496
  } | {
@@ -2593,7 +2562,6 @@ export declare const actionChangeArrowhead: {
2593
2562
  shown: true;
2594
2563
  data: import("../charts").Spreadsheet;
2595
2564
  };
2596
- pendingImageElementId: string | null;
2597
2565
  showHyperlinkPopup: false | "editor" | "info";
2598
2566
  selectedLinearElement: LinearElementEditor | null;
2599
2567
  snapLines: readonly import("../snapping").SnapLine[];
@@ -2606,20 +2574,18 @@ export declare const actionChangeArrowhead: {
2606
2574
  followedBy: Set<import("../types").SocketId>;
2607
2575
  isCropping: boolean;
2608
2576
  croppingElementId: string | null;
2609
- searchMatches: readonly {
2610
- id: string;
2611
- focus: boolean;
2612
- matchedLines: {
2613
- offsetX: number;
2614
- offsetY: number;
2615
- width: number;
2616
- height: number;
2617
- }[];
2618
- }[];
2577
+ searchMatches: Readonly<{
2578
+ focusedId: string | null;
2579
+ matches: readonly import("../types").SearchMatch[];
2580
+ }> | null;
2581
+ activeLockedId: string | null;
2582
+ lockedMultiSelections: {
2583
+ [groupId: string]: true;
2584
+ };
2619
2585
  };
2620
2586
  captureUpdate: "IMMEDIATELY";
2621
2587
  };
2622
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
2588
+ PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
2623
2589
  } & {
2624
2590
  keyTest?: undefined;
2625
2591
  };
@@ -2641,7 +2607,7 @@ export declare const actionChangeArrowType: {
2641
2607
  errorMessage: import("react").ReactNode;
2642
2608
  activeEmbeddable: {
2643
2609
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
2644
- state: "hover" | "active";
2610
+ state: "active" | "hover";
2645
2611
  } | null;
2646
2612
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
2647
2613
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -2649,7 +2615,7 @@ export declare const actionChangeArrowType: {
2649
2615
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
2650
2616
  isBindingEnabled: boolean;
2651
2617
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
2652
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
2618
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
2653
2619
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
2654
2620
  frameRendering: {
2655
2621
  enabled: boolean;
@@ -2697,7 +2663,7 @@ export declare const actionChangeArrowType: {
2697
2663
  zoom: Readonly<{
2698
2664
  value: import("../types").NormalizedZoomValue;
2699
2665
  }>;
2700
- openMenu: "shape" | "canvas" | null;
2666
+ openMenu: "canvas" | "shape" | null;
2701
2667
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
2702
2668
  openSidebar: {
2703
2669
  name: string;
@@ -2707,7 +2673,7 @@ export declare const actionChangeArrowType: {
2707
2673
  name: "imageExport" | "help" | "jsonExport";
2708
2674
  } | {
2709
2675
  name: "ttd";
2710
- tab: "text-to-diagram" | "mermaid";
2676
+ tab: "mermaid" | "text-to-diagram";
2711
2677
  } | {
2712
2678
  name: "commandPalette";
2713
2679
  } | {
@@ -2779,7 +2745,6 @@ export declare const actionChangeArrowType: {
2779
2745
  shown: true;
2780
2746
  data: import("../charts").Spreadsheet;
2781
2747
  };
2782
- pendingImageElementId: string | null;
2783
2748
  showHyperlinkPopup: false | "editor" | "info";
2784
2749
  selectedLinearElement: LinearElementEditor | null;
2785
2750
  snapLines: readonly import("../snapping").SnapLine[];
@@ -2792,20 +2757,18 @@ export declare const actionChangeArrowType: {
2792
2757
  followedBy: Set<import("../types").SocketId>;
2793
2758
  isCropping: boolean;
2794
2759
  croppingElementId: string | null;
2795
- searchMatches: readonly {
2796
- id: string;
2797
- focus: boolean;
2798
- matchedLines: {
2799
- offsetX: number;
2800
- offsetY: number;
2801
- width: number;
2802
- height: number;
2803
- }[];
2804
- }[];
2760
+ searchMatches: Readonly<{
2761
+ focusedId: string | null;
2762
+ matches: readonly import("../types").SearchMatch[];
2763
+ }> | null;
2764
+ activeLockedId: string | null;
2765
+ lockedMultiSelections: {
2766
+ [groupId: string]: true;
2767
+ };
2805
2768
  };
2806
2769
  captureUpdate: "IMMEDIATELY";
2807
2770
  };
2808
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
2771
+ PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
2809
2772
  } & {
2810
2773
  keyTest?: undefined;
2811
2774
  };