@excalidraw/excalidraw 0.18.0-6fc8502 → 0.18.0-864353b

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 (164) hide show
  1. package/dist/dev/{chunk-X3RYHLJU.js → chunk-7YMZV3TY.js} +14 -4
  2. package/dist/dev/chunk-7YMZV3TY.js.map +7 -0
  3. package/dist/dev/chunk-BBNNHA7I.js +7 -0
  4. package/dist/dev/chunk-BBNNHA7I.js.map +7 -0
  5. package/dist/dev/{chunk-KYBDXI6F.js → chunk-LL55DS44.js} +15037 -10099
  6. package/dist/dev/chunk-LL55DS44.js.map +7 -0
  7. package/dist/dev/data/{image-NKFINVKH.js → image-OFYK7EOY.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 +3531 -6486
  11. package/dist/dev/index.js.map +4 -4
  12. package/dist/dev/locales/{en-CKWC2GMK.js → en-KIY5SGI3.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-F44EGBV2.js +33 -0
  16. package/dist/prod/{chunk-IUH5AXLB.js → chunk-OUULIERA.js} +4 -4
  17. package/dist/prod/chunk-UH6Q3EIV.js +7 -0
  18. package/dist/prod/data/image-CUOH64HE.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-SBO6ZHT2.js → en-GCLCIHXH.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 +11 -1
  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 +22 -4
  30. package/dist/types/{excalidraw/scene → element/src}/Scene.d.ts +11 -14
  31. package/dist/types/element/src/ShapeCache.d.ts +1 -1
  32. package/dist/types/element/src/align.d.ts +3 -3
  33. package/dist/types/element/src/binding.d.ts +19 -12
  34. package/dist/types/element/src/bounds.d.ts +2 -2
  35. package/dist/types/element/src/collision.d.ts +1 -1
  36. package/dist/types/{excalidraw/change.d.ts → element/src/delta.d.ts} +40 -35
  37. package/dist/types/element/src/dragElements.d.ts +3 -2
  38. package/dist/types/element/src/duplicate.d.ts +10 -13
  39. package/dist/types/element/src/elbowArrow.d.ts +1 -1
  40. package/dist/types/element/src/flowchart.d.ts +3 -2
  41. package/dist/types/element/src/fractionalIndex.d.ts +2 -2
  42. package/dist/types/element/src/frame.d.ts +5 -4
  43. package/dist/types/element/src/index.d.ts +45 -2
  44. package/dist/types/element/src/linearElementEditor.d.ts +20 -31
  45. package/dist/types/element/src/mutateElement.d.ts +10 -2
  46. package/dist/types/element/src/newElement.d.ts +4 -3
  47. package/dist/types/element/src/resizeElements.d.ts +4 -4
  48. package/dist/types/element/src/selection.d.ts +11 -5
  49. package/dist/types/element/src/shapes.d.ts +5 -1
  50. package/dist/types/element/src/sizeHelpers.d.ts +2 -2
  51. package/dist/types/element/src/store.d.ts +227 -0
  52. package/dist/types/element/src/textElement.d.ts +5 -3
  53. package/dist/types/element/src/transformHandles.d.ts +4 -4
  54. package/dist/types/element/src/typeChecks.d.ts +15 -1
  55. package/dist/types/element/src/types.d.ts +14 -1
  56. package/dist/types/element/src/zindex.d.ts +1 -1
  57. package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +39 -45
  58. package/dist/types/excalidraw/actions/actionAlign.d.ts +8 -8
  59. package/dist/types/excalidraw/actions/actionBoundText.d.ts +26 -30
  60. package/dist/types/excalidraw/actions/actionCanvas.d.ts +262 -288
  61. package/dist/types/excalidraw/actions/actionClipboard.d.ts +81 -92
  62. package/dist/types/excalidraw/actions/actionCropEditor.d.ts +13 -15
  63. package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +38 -43
  64. package/dist/types/excalidraw/actions/actionDistribute.d.ts +4 -4
  65. package/dist/types/excalidraw/actions/actionDuplicateSelection.d.ts +2 -2
  66. package/dist/types/excalidraw/actions/actionElementLink.d.ts +13 -15
  67. package/dist/types/excalidraw/actions/actionElementLock.d.ts +41 -46
  68. package/dist/types/excalidraw/actions/actionEmbeddable.d.ts +13 -15
  69. package/dist/types/excalidraw/actions/actionExport.d.ts +210 -228
  70. package/dist/types/excalidraw/actions/actionFinalize.d.ts +72 -36
  71. package/dist/types/excalidraw/actions/actionFlip.d.ts +4 -4
  72. package/dist/types/excalidraw/actions/actionFrame.d.ts +96 -104
  73. package/dist/types/excalidraw/actions/actionGroup.d.ts +32 -36
  74. package/dist/types/excalidraw/actions/actionHistory.d.ts +1 -2
  75. package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +505 -14
  76. package/dist/types/excalidraw/actions/actionLink.d.ts +13 -15
  77. package/dist/types/excalidraw/actions/actionMenu.d.ts +39 -45
  78. package/dist/types/excalidraw/actions/actionNavigate.d.ts +25 -29
  79. package/dist/types/excalidraw/actions/actionProperties.d.ts +192 -214
  80. package/dist/types/excalidraw/actions/actionSelectAll.d.ts +15 -17
  81. package/dist/types/excalidraw/actions/actionStyles.d.ts +17 -19
  82. package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +15 -17
  83. package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +15 -17
  84. package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +15 -190
  85. package/dist/types/excalidraw/actions/actionToggleShapeSwitch.d.ts +19 -0
  86. package/dist/types/excalidraw/actions/actionToggleStats.d.ts +15 -17
  87. package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +15 -17
  88. package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +15 -17
  89. package/dist/types/excalidraw/actions/actionZindex.d.ts +8 -8
  90. package/dist/types/excalidraw/actions/types.d.ts +4 -3
  91. package/dist/types/excalidraw/appState.d.ts +38 -29
  92. package/dist/types/excalidraw/components/App.d.ts +24 -11
  93. package/dist/types/excalidraw/components/ButtonIcon.d.ts +1 -0
  94. package/dist/types/excalidraw/components/ColorPicker/ColorInput.d.ts +2 -1
  95. package/dist/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +5 -1
  96. package/dist/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +1 -1
  97. package/dist/types/excalidraw/components/ColorPicker/Picker.d.ts +2 -3
  98. package/dist/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +2 -3
  99. package/dist/types/excalidraw/components/ColorPicker/ShadeList.d.ts +2 -2
  100. package/dist/types/excalidraw/components/ColorPicker/TopPicks.d.ts +1 -1
  101. package/dist/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +1 -1
  102. package/dist/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +1 -1
  103. package/dist/types/excalidraw/components/ConvertElementTypePopup.d.ts +23 -0
  104. package/dist/types/excalidraw/components/ElementLinkDialog.d.ts +4 -3
  105. package/dist/types/excalidraw/components/{ButtonIconSelect.d.ts → RadioSelection.d.ts} +1 -1
  106. package/dist/types/excalidraw/components/Range.d.ts +3 -3
  107. package/dist/types/excalidraw/components/Stats/Angle.d.ts +1 -1
  108. package/dist/types/excalidraw/components/Stats/CanvasGrid.d.ts +1 -1
  109. package/dist/types/excalidraw/components/Stats/Collapsible.d.ts +2 -1
  110. package/dist/types/excalidraw/components/Stats/Dimension.d.ts +1 -1
  111. package/dist/types/excalidraw/components/Stats/DragInput.d.ts +1 -1
  112. package/dist/types/excalidraw/components/Stats/FontSize.d.ts +1 -1
  113. package/dist/types/excalidraw/components/Stats/MultiAngle.d.ts +1 -1
  114. package/dist/types/excalidraw/components/Stats/MultiDimension.d.ts +1 -1
  115. package/dist/types/excalidraw/components/Stats/MultiFontSize.d.ts +1 -1
  116. package/dist/types/excalidraw/components/Stats/MultiPosition.d.ts +1 -1
  117. package/dist/types/excalidraw/components/Stats/Position.d.ts +1 -1
  118. package/dist/types/excalidraw/components/Stats/utils.d.ts +4 -11
  119. package/dist/types/excalidraw/components/UnlockPopup.d.ts +8 -0
  120. package/dist/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +1 -0
  121. package/dist/types/excalidraw/components/hyperlink/Hyperlink.d.ts +3 -2
  122. package/dist/types/excalidraw/components/hyperlink/helpers.d.ts +2 -1
  123. package/dist/types/excalidraw/components/icons.d.ts +3 -0
  124. package/dist/types/excalidraw/components/shapes.d.ts +1 -1
  125. package/dist/types/excalidraw/data/blob.d.ts +1 -1
  126. package/dist/types/excalidraw/data/transform.d.ts +1 -1
  127. package/dist/types/excalidraw/editor-jotai.d.ts +6 -6
  128. package/dist/types/excalidraw/eraser/index.d.ts +14 -0
  129. package/dist/types/excalidraw/fonts/Fonts.d.ts +1 -1
  130. package/dist/types/excalidraw/history.d.ts +14 -22
  131. package/dist/types/excalidraw/hooks/useEmitter.d.ts +1 -1
  132. package/dist/types/excalidraw/index.d.ts +9 -9
  133. package/dist/types/excalidraw/lasso/index.d.ts +1 -0
  134. package/dist/types/excalidraw/lasso/utils.d.ts +1 -2
  135. package/dist/types/excalidraw/renderer/helpers.d.ts +7 -2
  136. package/dist/types/excalidraw/scene/Renderer.d.ts +1 -1
  137. package/dist/types/excalidraw/scene/index.d.ts +2 -2
  138. package/dist/types/excalidraw/scene/scrollbars.d.ts +2 -3
  139. package/dist/types/excalidraw/scene/types.d.ts +2 -0
  140. package/dist/types/excalidraw/snapping.d.ts +2 -2
  141. package/dist/types/excalidraw/types.d.ts +28 -6
  142. package/dist/types/excalidraw/visualdebug.d.ts +1 -1
  143. package/dist/types/excalidraw/wysiwyg/textWysiwyg.d.ts +3 -1
  144. package/dist/types/math/src/angle.d.ts +2 -0
  145. package/dist/types/math/src/curve.d.ts +2 -0
  146. package/dist/types/math/src/point.d.ts +1 -1
  147. package/dist/types/math/src/types.d.ts +1 -0
  148. package/dist/types/math/src/vector.d.ts +4 -0
  149. package/dist/types/utils/src/bbox.d.ts +1 -1
  150. package/dist/types/utils/src/index.d.ts +1 -1
  151. package/dist/types/utils/src/withinBounds.d.ts +1 -1
  152. package/history.ts +68 -94
  153. package/package.json +3 -3
  154. package/dist/dev/chunk-H7XJ5UVD.js +0 -7
  155. package/dist/dev/chunk-H7XJ5UVD.js.map +0 -7
  156. package/dist/dev/chunk-KYBDXI6F.js.map +0 -7
  157. package/dist/dev/chunk-X3RYHLJU.js.map +0 -7
  158. package/dist/prod/chunk-CAN5RS4P.js +0 -31
  159. package/dist/prod/chunk-KJYFYP64.js +0 -7
  160. package/dist/prod/data/image-5XD47O4X.js +0 -1
  161. package/dist/types/excalidraw/components/ButtonSelect.d.ts +0 -9
  162. package/dist/types/excalidraw/store.d.ts +0 -129
  163. /package/dist/dev/data/{image-NKFINVKH.js.map → image-OFYK7EOY.js.map} +0 -0
  164. /package/dist/dev/locales/{en-CKWC2GMK.js.map → en-KIY5SGI3.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
  };
@@ -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;
@@ -179,7 +187,7 @@ export declare const actionChangeFillStyle: {
179
187
  data: import("../charts").Spreadsheet;
180
188
  };
181
189
  pendingImageElementId: string | null;
182
- showHyperlinkPopup: false | "editor" | "info";
190
+ showHyperlinkPopup: false | "info" | "editor";
183
191
  selectedLinearElement: LinearElementEditor | null;
184
192
  snapLines: readonly import("../snapping").SnapLine[];
185
193
  originSnapOffset: {
@@ -191,20 +199,18 @@ export declare const actionChangeFillStyle: {
191
199
  followedBy: Set<import("../types").SocketId>;
192
200
  isCropping: boolean;
193
201
  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
- }[];
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
+ };
204
210
  };
205
211
  captureUpdate: "IMMEDIATELY";
206
212
  };
207
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
213
+ PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
208
214
  } & {
209
215
  keyTest?: undefined;
210
216
  };
@@ -234,7 +240,7 @@ export declare const actionChangeStrokeWidth: {
234
240
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
235
241
  isBindingEnabled: boolean;
236
242
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
237
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
243
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
238
244
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
239
245
  frameRendering: {
240
246
  enabled: boolean;
@@ -282,7 +288,7 @@ export declare const actionChangeStrokeWidth: {
282
288
  zoom: Readonly<{
283
289
  value: import("../types").NormalizedZoomValue;
284
290
  }>;
285
- openMenu: "shape" | "canvas" | null;
291
+ openMenu: "canvas" | "shape" | null;
286
292
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
287
293
  openSidebar: {
288
294
  name: string;
@@ -365,7 +371,7 @@ export declare const actionChangeStrokeWidth: {
365
371
  data: import("../charts").Spreadsheet;
366
372
  };
367
373
  pendingImageElementId: string | null;
368
- showHyperlinkPopup: false | "editor" | "info";
374
+ showHyperlinkPopup: false | "info" | "editor";
369
375
  selectedLinearElement: LinearElementEditor | null;
370
376
  snapLines: readonly import("../snapping").SnapLine[];
371
377
  originSnapOffset: {
@@ -377,20 +383,18 @@ export declare const actionChangeStrokeWidth: {
377
383
  followedBy: Set<import("../types").SocketId>;
378
384
  isCropping: boolean;
379
385
  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
- }[];
386
+ searchMatches: Readonly<{
387
+ focusedId: string | null;
388
+ matches: readonly import("../types").SearchMatch[];
389
+ }> | null;
390
+ activeLockedId: string | null;
391
+ lockedMultiSelections: {
392
+ [groupId: string]: true;
393
+ };
390
394
  };
391
395
  captureUpdate: "IMMEDIATELY";
392
396
  };
393
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
397
+ PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
394
398
  } & {
395
399
  keyTest?: undefined;
396
400
  };
@@ -420,7 +424,7 @@ export declare const actionChangeSloppiness: {
420
424
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
421
425
  isBindingEnabled: boolean;
422
426
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
423
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
427
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
424
428
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
425
429
  frameRendering: {
426
430
  enabled: boolean;
@@ -468,7 +472,7 @@ export declare const actionChangeSloppiness: {
468
472
  zoom: Readonly<{
469
473
  value: import("../types").NormalizedZoomValue;
470
474
  }>;
471
- openMenu: "shape" | "canvas" | null;
475
+ openMenu: "canvas" | "shape" | null;
472
476
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
473
477
  openSidebar: {
474
478
  name: string;
@@ -551,7 +555,7 @@ export declare const actionChangeSloppiness: {
551
555
  data: import("../charts").Spreadsheet;
552
556
  };
553
557
  pendingImageElementId: string | null;
554
- showHyperlinkPopup: false | "editor" | "info";
558
+ showHyperlinkPopup: false | "info" | "editor";
555
559
  selectedLinearElement: LinearElementEditor | null;
556
560
  snapLines: readonly import("../snapping").SnapLine[];
557
561
  originSnapOffset: {
@@ -563,20 +567,18 @@ export declare const actionChangeSloppiness: {
563
567
  followedBy: Set<import("../types").SocketId>;
564
568
  isCropping: boolean;
565
569
  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
- }[];
570
+ searchMatches: Readonly<{
571
+ focusedId: string | null;
572
+ matches: readonly import("../types").SearchMatch[];
573
+ }> | null;
574
+ activeLockedId: string | null;
575
+ lockedMultiSelections: {
576
+ [groupId: string]: true;
577
+ };
576
578
  };
577
579
  captureUpdate: "IMMEDIATELY";
578
580
  };
579
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
581
+ PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
580
582
  } & {
581
583
  keyTest?: undefined;
582
584
  };
@@ -606,7 +608,7 @@ export declare const actionChangeStrokeStyle: {
606
608
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
607
609
  isBindingEnabled: boolean;
608
610
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
609
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
611
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
610
612
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
611
613
  frameRendering: {
612
614
  enabled: boolean;
@@ -654,7 +656,7 @@ export declare const actionChangeStrokeStyle: {
654
656
  zoom: Readonly<{
655
657
  value: import("../types").NormalizedZoomValue;
656
658
  }>;
657
- openMenu: "shape" | "canvas" | null;
659
+ openMenu: "canvas" | "shape" | null;
658
660
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
659
661
  openSidebar: {
660
662
  name: string;
@@ -737,7 +739,7 @@ export declare const actionChangeStrokeStyle: {
737
739
  data: import("../charts").Spreadsheet;
738
740
  };
739
741
  pendingImageElementId: string | null;
740
- showHyperlinkPopup: false | "editor" | "info";
742
+ showHyperlinkPopup: false | "info" | "editor";
741
743
  selectedLinearElement: LinearElementEditor | null;
742
744
  snapLines: readonly import("../snapping").SnapLine[];
743
745
  originSnapOffset: {
@@ -749,20 +751,18 @@ export declare const actionChangeStrokeStyle: {
749
751
  followedBy: Set<import("../types").SocketId>;
750
752
  isCropping: boolean;
751
753
  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
- }[];
754
+ searchMatches: Readonly<{
755
+ focusedId: string | null;
756
+ matches: readonly import("../types").SearchMatch[];
757
+ }> | null;
758
+ activeLockedId: string | null;
759
+ lockedMultiSelections: {
760
+ [groupId: string]: true;
761
+ };
762
762
  };
763
763
  captureUpdate: "IMMEDIATELY";
764
764
  };
765
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
765
+ PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
766
766
  } & {
767
767
  keyTest?: undefined;
768
768
  };
@@ -792,7 +792,7 @@ export declare const actionChangeOpacity: {
792
792
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
793
793
  isBindingEnabled: boolean;
794
794
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
795
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
795
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
796
796
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
797
797
  frameRendering: {
798
798
  enabled: boolean;
@@ -840,7 +840,7 @@ export declare const actionChangeOpacity: {
840
840
  zoom: Readonly<{
841
841
  value: import("../types").NormalizedZoomValue;
842
842
  }>;
843
- openMenu: "shape" | "canvas" | null;
843
+ openMenu: "canvas" | "shape" | null;
844
844
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
845
845
  openSidebar: {
846
846
  name: string;
@@ -923,7 +923,7 @@ export declare const actionChangeOpacity: {
923
923
  data: import("../charts").Spreadsheet;
924
924
  };
925
925
  pendingImageElementId: string | null;
926
- showHyperlinkPopup: false | "editor" | "info";
926
+ showHyperlinkPopup: false | "info" | "editor";
927
927
  selectedLinearElement: LinearElementEditor | null;
928
928
  snapLines: readonly import("../snapping").SnapLine[];
929
929
  originSnapOffset: {
@@ -935,20 +935,18 @@ export declare const actionChangeOpacity: {
935
935
  followedBy: Set<import("../types").SocketId>;
936
936
  isCropping: boolean;
937
937
  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
- }[];
938
+ searchMatches: Readonly<{
939
+ focusedId: string | null;
940
+ matches: readonly import("../types").SearchMatch[];
941
+ }> | null;
942
+ activeLockedId: string | null;
943
+ lockedMultiSelections: {
944
+ [groupId: string]: true;
945
+ };
948
946
  };
949
947
  captureUpdate: "IMMEDIATELY";
950
948
  };
951
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
949
+ PanelComponent: ({ app, updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
952
950
  } & {
953
951
  keyTest?: undefined;
954
952
  };
@@ -978,7 +976,7 @@ export declare const actionChangeFontSize: {
978
976
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
979
977
  isBindingEnabled: boolean;
980
978
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
981
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
979
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
982
980
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
983
981
  frameRendering: {
984
982
  enabled: boolean;
@@ -1026,7 +1024,7 @@ export declare const actionChangeFontSize: {
1026
1024
  zoom: Readonly<{
1027
1025
  value: import("../types").NormalizedZoomValue;
1028
1026
  }>;
1029
- openMenu: "shape" | "canvas" | null;
1027
+ openMenu: "canvas" | "shape" | null;
1030
1028
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
1031
1029
  openSidebar: {
1032
1030
  name: string;
@@ -1109,7 +1107,7 @@ export declare const actionChangeFontSize: {
1109
1107
  data: import("../charts").Spreadsheet;
1110
1108
  };
1111
1109
  pendingImageElementId: string | null;
1112
- showHyperlinkPopup: false | "editor" | "info";
1110
+ showHyperlinkPopup: false | "info" | "editor";
1113
1111
  selectedLinearElement: LinearElementEditor | null;
1114
1112
  snapLines: readonly import("../snapping").SnapLine[];
1115
1113
  originSnapOffset: {
@@ -1121,16 +1119,14 @@ export declare const actionChangeFontSize: {
1121
1119
  followedBy: Set<import("../types").SocketId>;
1122
1120
  isCropping: boolean;
1123
1121
  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
- }[];
1122
+ searchMatches: Readonly<{
1123
+ focusedId: string | null;
1124
+ matches: readonly import("../types").SearchMatch[];
1125
+ }> | null;
1126
+ activeLockedId: string | null;
1127
+ lockedMultiSelections: {
1128
+ [groupId: string]: true;
1129
+ };
1134
1130
  };
1135
1131
  captureUpdate: "IMMEDIATELY";
1136
1132
  };
@@ -1165,7 +1161,7 @@ export declare const actionDecreaseFontSize: {
1165
1161
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1166
1162
  isBindingEnabled: boolean;
1167
1163
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
1168
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
1164
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
1169
1165
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1170
1166
  frameRendering: {
1171
1167
  enabled: boolean;
@@ -1213,7 +1209,7 @@ export declare const actionDecreaseFontSize: {
1213
1209
  zoom: Readonly<{
1214
1210
  value: import("../types").NormalizedZoomValue;
1215
1211
  }>;
1216
- openMenu: "shape" | "canvas" | null;
1212
+ openMenu: "canvas" | "shape" | null;
1217
1213
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
1218
1214
  openSidebar: {
1219
1215
  name: string;
@@ -1296,7 +1292,7 @@ export declare const actionDecreaseFontSize: {
1296
1292
  data: import("../charts").Spreadsheet;
1297
1293
  };
1298
1294
  pendingImageElementId: string | null;
1299
- showHyperlinkPopup: false | "editor" | "info";
1295
+ showHyperlinkPopup: false | "info" | "editor";
1300
1296
  selectedLinearElement: LinearElementEditor | null;
1301
1297
  snapLines: readonly import("../snapping").SnapLine[];
1302
1298
  originSnapOffset: {
@@ -1308,22 +1304,20 @@ export declare const actionDecreaseFontSize: {
1308
1304
  followedBy: Set<import("../types").SocketId>;
1309
1305
  isCropping: boolean;
1310
1306
  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
- }[];
1307
+ searchMatches: Readonly<{
1308
+ focusedId: string | null;
1309
+ matches: readonly import("../types").SearchMatch[];
1310
+ }> | null;
1311
+ activeLockedId: string | null;
1312
+ lockedMultiSelections: {
1313
+ [groupId: string]: true;
1314
+ };
1321
1315
  };
1322
1316
  captureUpdate: "IMMEDIATELY";
1323
1317
  };
1324
- keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
1318
+ keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
1325
1319
  } & {
1326
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
1320
+ keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
1327
1321
  };
1328
1322
  export declare const actionIncreaseFontSize: {
1329
1323
  name: "increaseFontSize";
@@ -1352,7 +1346,7 @@ export declare const actionIncreaseFontSize: {
1352
1346
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1353
1347
  isBindingEnabled: boolean;
1354
1348
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
1355
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
1349
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
1356
1350
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1357
1351
  frameRendering: {
1358
1352
  enabled: boolean;
@@ -1400,7 +1394,7 @@ export declare const actionIncreaseFontSize: {
1400
1394
  zoom: Readonly<{
1401
1395
  value: import("../types").NormalizedZoomValue;
1402
1396
  }>;
1403
- openMenu: "shape" | "canvas" | null;
1397
+ openMenu: "canvas" | "shape" | null;
1404
1398
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
1405
1399
  openSidebar: {
1406
1400
  name: string;
@@ -1483,7 +1477,7 @@ export declare const actionIncreaseFontSize: {
1483
1477
  data: import("../charts").Spreadsheet;
1484
1478
  };
1485
1479
  pendingImageElementId: string | null;
1486
- showHyperlinkPopup: false | "editor" | "info";
1480
+ showHyperlinkPopup: false | "info" | "editor";
1487
1481
  selectedLinearElement: LinearElementEditor | null;
1488
1482
  snapLines: readonly import("../snapping").SnapLine[];
1489
1483
  originSnapOffset: {
@@ -1495,22 +1489,20 @@ export declare const actionIncreaseFontSize: {
1495
1489
  followedBy: Set<import("../types").SocketId>;
1496
1490
  isCropping: boolean;
1497
1491
  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
- }[];
1492
+ searchMatches: Readonly<{
1493
+ focusedId: string | null;
1494
+ matches: readonly import("../types").SearchMatch[];
1495
+ }> | null;
1496
+ activeLockedId: string | null;
1497
+ lockedMultiSelections: {
1498
+ [groupId: string]: true;
1499
+ };
1508
1500
  };
1509
1501
  captureUpdate: "IMMEDIATELY";
1510
1502
  };
1511
- keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
1503
+ keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
1512
1504
  } & {
1513
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
1505
+ keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
1514
1506
  };
1515
1507
  export declare const actionChangeFontFamily: {
1516
1508
  name: "changeFontFamily";
@@ -1518,8 +1510,8 @@ export declare const actionChangeFontFamily: {
1518
1510
  trackEvent: false;
1519
1511
  perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, value: any, app: AppClassProperties) => {
1520
1512
  appState: {
1521
- currentHoveredFontFamily: number | null;
1522
1513
  currentItemFontFamily: number;
1514
+ currentHoveredFontFamily: number | null;
1523
1515
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
1524
1516
  contextMenu: {
1525
1517
  items: import("../components/ContextMenu").ContextMenuItems;
@@ -1539,7 +1531,7 @@ export declare const actionChangeFontFamily: {
1539
1531
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1540
1532
  isBindingEnabled: boolean;
1541
1533
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
1542
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
1534
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
1543
1535
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1544
1536
  frameRendering: {
1545
1537
  enabled: boolean;
@@ -1586,7 +1578,7 @@ export declare const actionChangeFontFamily: {
1586
1578
  zoom: Readonly<{
1587
1579
  value: import("../types").NormalizedZoomValue;
1588
1580
  }>;
1589
- openMenu: "shape" | "canvas" | null;
1581
+ openMenu: "canvas" | "shape" | null;
1590
1582
  openSidebar: {
1591
1583
  name: string;
1592
1584
  tab?: string | undefined;
@@ -1668,7 +1660,7 @@ export declare const actionChangeFontFamily: {
1668
1660
  data: import("../charts").Spreadsheet;
1669
1661
  };
1670
1662
  pendingImageElementId: string | null;
1671
- showHyperlinkPopup: false | "editor" | "info";
1663
+ showHyperlinkPopup: false | "info" | "editor";
1672
1664
  selectedLinearElement: LinearElementEditor | null;
1673
1665
  snapLines: readonly import("../snapping").SnapLine[];
1674
1666
  originSnapOffset: {
@@ -1680,23 +1672,21 @@ export declare const actionChangeFontFamily: {
1680
1672
  followedBy: Set<import("../types").SocketId>;
1681
1673
  isCropping: boolean;
1682
1674
  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
- }[];
1675
+ searchMatches: Readonly<{
1676
+ focusedId: string | null;
1677
+ matches: readonly import("../types").SearchMatch[];
1678
+ }> | null;
1679
+ activeLockedId: string | null;
1680
+ lockedMultiSelections: {
1681
+ [groupId: string]: true;
1682
+ };
1693
1683
  };
1694
1684
  captureUpdate: "IMMEDIATELY" | "EVENTUALLY";
1695
1685
  } | {
1696
1686
  elements: ExcalidrawElement[];
1697
1687
  appState: {
1698
- currentHoveredFontFamily: number | null;
1699
1688
  currentItemFontFamily: number;
1689
+ currentHoveredFontFamily: number | null;
1700
1690
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
1701
1691
  contextMenu: {
1702
1692
  items: import("../components/ContextMenu").ContextMenuItems;
@@ -1716,7 +1706,7 @@ export declare const actionChangeFontFamily: {
1716
1706
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1717
1707
  isBindingEnabled: boolean;
1718
1708
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
1719
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
1709
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
1720
1710
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1721
1711
  frameRendering: {
1722
1712
  enabled: boolean;
@@ -1763,7 +1753,7 @@ export declare const actionChangeFontFamily: {
1763
1753
  zoom: Readonly<{
1764
1754
  value: import("../types").NormalizedZoomValue;
1765
1755
  }>;
1766
- openMenu: "shape" | "canvas" | null;
1756
+ openMenu: "canvas" | "shape" | null;
1767
1757
  openSidebar: {
1768
1758
  name: string;
1769
1759
  tab?: string | undefined;
@@ -1845,7 +1835,7 @@ export declare const actionChangeFontFamily: {
1845
1835
  data: import("../charts").Spreadsheet;
1846
1836
  };
1847
1837
  pendingImageElementId: string | null;
1848
- showHyperlinkPopup: false | "editor" | "info";
1838
+ showHyperlinkPopup: false | "info" | "editor";
1849
1839
  selectedLinearElement: LinearElementEditor | null;
1850
1840
  snapLines: readonly import("../snapping").SnapLine[];
1851
1841
  originSnapOffset: {
@@ -1857,16 +1847,14 @@ export declare const actionChangeFontFamily: {
1857
1847
  followedBy: Set<import("../types").SocketId>;
1858
1848
  isCropping: boolean;
1859
1849
  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
- }[];
1850
+ searchMatches: Readonly<{
1851
+ focusedId: string | null;
1852
+ matches: readonly import("../types").SearchMatch[];
1853
+ }> | null;
1854
+ activeLockedId: string | null;
1855
+ lockedMultiSelections: {
1856
+ [groupId: string]: true;
1857
+ };
1870
1858
  };
1871
1859
  captureUpdate: "NEVER";
1872
1860
  };
@@ -1900,7 +1888,7 @@ export declare const actionChangeTextAlign: {
1900
1888
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1901
1889
  isBindingEnabled: boolean;
1902
1890
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
1903
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
1891
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
1904
1892
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1905
1893
  frameRendering: {
1906
1894
  enabled: boolean;
@@ -1948,7 +1936,7 @@ export declare const actionChangeTextAlign: {
1948
1936
  zoom: Readonly<{
1949
1937
  value: import("../types").NormalizedZoomValue;
1950
1938
  }>;
1951
- openMenu: "shape" | "canvas" | null;
1939
+ openMenu: "canvas" | "shape" | null;
1952
1940
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
1953
1941
  openSidebar: {
1954
1942
  name: string;
@@ -2031,7 +2019,7 @@ export declare const actionChangeTextAlign: {
2031
2019
  data: import("../charts").Spreadsheet;
2032
2020
  };
2033
2021
  pendingImageElementId: string | null;
2034
- showHyperlinkPopup: false | "editor" | "info";
2022
+ showHyperlinkPopup: false | "info" | "editor";
2035
2023
  selectedLinearElement: LinearElementEditor | null;
2036
2024
  snapLines: readonly import("../snapping").SnapLine[];
2037
2025
  originSnapOffset: {
@@ -2043,16 +2031,14 @@ export declare const actionChangeTextAlign: {
2043
2031
  followedBy: Set<import("../types").SocketId>;
2044
2032
  isCropping: boolean;
2045
2033
  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
- }[];
2034
+ searchMatches: Readonly<{
2035
+ focusedId: string | null;
2036
+ matches: readonly import("../types").SearchMatch[];
2037
+ }> | null;
2038
+ activeLockedId: string | null;
2039
+ lockedMultiSelections: {
2040
+ [groupId: string]: true;
2041
+ };
2056
2042
  };
2057
2043
  captureUpdate: "IMMEDIATELY";
2058
2044
  };
@@ -2087,7 +2073,7 @@ export declare const actionChangeVerticalAlign: {
2087
2073
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
2088
2074
  isBindingEnabled: boolean;
2089
2075
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
2090
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
2076
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
2091
2077
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
2092
2078
  frameRendering: {
2093
2079
  enabled: boolean;
@@ -2136,7 +2122,7 @@ export declare const actionChangeVerticalAlign: {
2136
2122
  zoom: Readonly<{
2137
2123
  value: import("../types").NormalizedZoomValue;
2138
2124
  }>;
2139
- openMenu: "shape" | "canvas" | null;
2125
+ openMenu: "canvas" | "shape" | null;
2140
2126
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
2141
2127
  openSidebar: {
2142
2128
  name: string;
@@ -2219,7 +2205,7 @@ export declare const actionChangeVerticalAlign: {
2219
2205
  data: import("../charts").Spreadsheet;
2220
2206
  };
2221
2207
  pendingImageElementId: string | null;
2222
- showHyperlinkPopup: false | "editor" | "info";
2208
+ showHyperlinkPopup: false | "info" | "editor";
2223
2209
  selectedLinearElement: LinearElementEditor | null;
2224
2210
  snapLines: readonly import("../snapping").SnapLine[];
2225
2211
  originSnapOffset: {
@@ -2231,16 +2217,14 @@ export declare const actionChangeVerticalAlign: {
2231
2217
  followedBy: Set<import("../types").SocketId>;
2232
2218
  isCropping: boolean;
2233
2219
  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
- }[];
2220
+ searchMatches: Readonly<{
2221
+ focusedId: string | null;
2222
+ matches: readonly import("../types").SearchMatch[];
2223
+ }> | null;
2224
+ activeLockedId: string | null;
2225
+ lockedMultiSelections: {
2226
+ [groupId: string]: true;
2227
+ };
2244
2228
  };
2245
2229
  captureUpdate: "IMMEDIATELY";
2246
2230
  };
@@ -2274,7 +2258,7 @@ export declare const actionChangeRoundness: {
2274
2258
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
2275
2259
  isBindingEnabled: boolean;
2276
2260
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
2277
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
2261
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
2278
2262
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
2279
2263
  frameRendering: {
2280
2264
  enabled: boolean;
@@ -2322,7 +2306,7 @@ export declare const actionChangeRoundness: {
2322
2306
  zoom: Readonly<{
2323
2307
  value: import("../types").NormalizedZoomValue;
2324
2308
  }>;
2325
- openMenu: "shape" | "canvas" | null;
2309
+ openMenu: "canvas" | "shape" | null;
2326
2310
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
2327
2311
  openSidebar: {
2328
2312
  name: string;
@@ -2405,7 +2389,7 @@ export declare const actionChangeRoundness: {
2405
2389
  data: import("../charts").Spreadsheet;
2406
2390
  };
2407
2391
  pendingImageElementId: string | null;
2408
- showHyperlinkPopup: false | "editor" | "info";
2392
+ showHyperlinkPopup: false | "info" | "editor";
2409
2393
  selectedLinearElement: LinearElementEditor | null;
2410
2394
  snapLines: readonly import("../snapping").SnapLine[];
2411
2395
  originSnapOffset: {
@@ -2417,20 +2401,18 @@ export declare const actionChangeRoundness: {
2417
2401
  followedBy: Set<import("../types").SocketId>;
2418
2402
  isCropping: boolean;
2419
2403
  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
- }[];
2404
+ searchMatches: Readonly<{
2405
+ focusedId: string | null;
2406
+ matches: readonly import("../types").SearchMatch[];
2407
+ }> | null;
2408
+ activeLockedId: string | null;
2409
+ lockedMultiSelections: {
2410
+ [groupId: string]: true;
2411
+ };
2430
2412
  };
2431
2413
  captureUpdate: "IMMEDIATELY";
2432
2414
  };
2433
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
2415
+ PanelComponent: ({ elements, appState, updateData, app, renderAction }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
2434
2416
  } & {
2435
2417
  keyTest?: undefined;
2436
2418
  };
@@ -2462,7 +2444,7 @@ export declare const actionChangeArrowhead: {
2462
2444
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
2463
2445
  isBindingEnabled: boolean;
2464
2446
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
2465
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
2447
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
2466
2448
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
2467
2449
  frameRendering: {
2468
2450
  enabled: boolean;
@@ -2511,7 +2493,7 @@ export declare const actionChangeArrowhead: {
2511
2493
  zoom: Readonly<{
2512
2494
  value: import("../types").NormalizedZoomValue;
2513
2495
  }>;
2514
- openMenu: "shape" | "canvas" | null;
2496
+ openMenu: "canvas" | "shape" | null;
2515
2497
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
2516
2498
  openSidebar: {
2517
2499
  name: string;
@@ -2594,7 +2576,7 @@ export declare const actionChangeArrowhead: {
2594
2576
  data: import("../charts").Spreadsheet;
2595
2577
  };
2596
2578
  pendingImageElementId: string | null;
2597
- showHyperlinkPopup: false | "editor" | "info";
2579
+ showHyperlinkPopup: false | "info" | "editor";
2598
2580
  selectedLinearElement: LinearElementEditor | null;
2599
2581
  snapLines: readonly import("../snapping").SnapLine[];
2600
2582
  originSnapOffset: {
@@ -2606,20 +2588,18 @@ export declare const actionChangeArrowhead: {
2606
2588
  followedBy: Set<import("../types").SocketId>;
2607
2589
  isCropping: boolean;
2608
2590
  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
- }[];
2591
+ searchMatches: Readonly<{
2592
+ focusedId: string | null;
2593
+ matches: readonly import("../types").SearchMatch[];
2594
+ }> | null;
2595
+ activeLockedId: string | null;
2596
+ lockedMultiSelections: {
2597
+ [groupId: string]: true;
2598
+ };
2619
2599
  };
2620
2600
  captureUpdate: "IMMEDIATELY";
2621
2601
  };
2622
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
2602
+ PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
2623
2603
  } & {
2624
2604
  keyTest?: undefined;
2625
2605
  };
@@ -2649,7 +2629,7 @@ export declare const actionChangeArrowType: {
2649
2629
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
2650
2630
  isBindingEnabled: boolean;
2651
2631
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
2652
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
2632
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
2653
2633
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
2654
2634
  frameRendering: {
2655
2635
  enabled: boolean;
@@ -2697,7 +2677,7 @@ export declare const actionChangeArrowType: {
2697
2677
  zoom: Readonly<{
2698
2678
  value: import("../types").NormalizedZoomValue;
2699
2679
  }>;
2700
- openMenu: "shape" | "canvas" | null;
2680
+ openMenu: "canvas" | "shape" | null;
2701
2681
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
2702
2682
  openSidebar: {
2703
2683
  name: string;
@@ -2780,7 +2760,7 @@ export declare const actionChangeArrowType: {
2780
2760
  data: import("../charts").Spreadsheet;
2781
2761
  };
2782
2762
  pendingImageElementId: string | null;
2783
- showHyperlinkPopup: false | "editor" | "info";
2763
+ showHyperlinkPopup: false | "info" | "editor";
2784
2764
  selectedLinearElement: LinearElementEditor | null;
2785
2765
  snapLines: readonly import("../snapping").SnapLine[];
2786
2766
  originSnapOffset: {
@@ -2792,20 +2772,18 @@ export declare const actionChangeArrowType: {
2792
2772
  followedBy: Set<import("../types").SocketId>;
2793
2773
  isCropping: boolean;
2794
2774
  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
- }[];
2775
+ searchMatches: Readonly<{
2776
+ focusedId: string | null;
2777
+ matches: readonly import("../types").SearchMatch[];
2778
+ }> | null;
2779
+ activeLockedId: string | null;
2780
+ lockedMultiSelections: {
2781
+ [groupId: string]: true;
2782
+ };
2805
2783
  };
2806
2784
  captureUpdate: "IMMEDIATELY";
2807
2785
  };
2808
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
2786
+ PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
2809
2787
  } & {
2810
2788
  keyTest?: undefined;
2811
2789
  };