@excalidraw/excalidraw 0.18.0-c4c0649 → 0.18.0-d2463f87d

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 (121) 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-JCUIYZXF.js → chunk-QF5FRM6O.js} +6 -2
  6. package/dist/dev/chunk-QF5FRM6O.js.map +7 -0
  7. package/dist/dev/data/{image-SLEZBMLG.js → image-SURZSZNX.js} +3 -3
  8. package/dist/dev/index.css +47 -20
  9. package/dist/dev/index.css.map +3 -3
  10. package/dist/dev/index.js +5873 -3369
  11. package/dist/dev/index.js.map +4 -4
  12. package/dist/dev/locales/{en-ZDTPSZNL.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-GCFVWREF.js → chunk-I4UNSFV6.js} +4 -4
  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 -18
  21. package/dist/prod/locales/{en-MHZ26NAR.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 +18 -3
  25. package/dist/types/common/src/utils.d.ts +3 -5
  26. package/dist/types/element/src/Scene.d.ts +1 -1
  27. package/dist/types/element/src/binding.d.ts +10 -7
  28. package/dist/types/element/src/bounds.d.ts +11 -3
  29. package/dist/types/element/src/collision.d.ts +18 -12
  30. package/dist/types/element/src/cropElement.d.ts +1 -1
  31. package/dist/types/element/src/delta.d.ts +26 -6
  32. package/dist/types/element/src/distance.d.ts +2 -2
  33. package/dist/types/element/src/fractionalIndex.d.ts +8 -2
  34. package/dist/types/element/src/frame.d.ts +2 -2
  35. package/dist/types/element/src/index.d.ts +1 -3
  36. package/dist/types/element/src/linearElementEditor.d.ts +12 -22
  37. package/dist/types/element/src/mutateElement.d.ts +1 -1
  38. package/dist/types/element/src/newElement.d.ts +2 -1
  39. package/dist/types/element/src/resizeElements.d.ts +1 -0
  40. package/dist/types/element/src/selection.d.ts +1 -1
  41. package/dist/types/element/src/shape.d.ts +42 -0
  42. package/dist/types/element/src/sizeHelpers.d.ts +2 -1
  43. package/dist/types/element/src/store.d.ts +12 -8
  44. package/dist/types/element/src/transformHandles.d.ts +4 -4
  45. package/dist/types/element/src/typeChecks.d.ts +15 -1
  46. package/dist/types/element/src/types.d.ts +8 -3
  47. package/dist/types/element/src/utils.d.ts +16 -6
  48. package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +21 -12
  49. package/dist/types/excalidraw/actions/actionAlign.d.ts +8 -8
  50. package/dist/types/excalidraw/actions/actionBoundText.d.ts +14 -8
  51. package/dist/types/excalidraw/actions/actionCanvas.d.ts +181 -142
  52. package/dist/types/excalidraw/actions/actionClipboard.d.ts +47 -28
  53. package/dist/types/excalidraw/actions/actionCropEditor.d.ts +7 -4
  54. package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +24 -14
  55. package/dist/types/excalidraw/actions/actionDistribute.d.ts +4 -4
  56. package/dist/types/excalidraw/actions/actionDuplicateSelection.d.ts +2 -2
  57. package/dist/types/excalidraw/actions/actionElementLink.d.ts +6 -3
  58. package/dist/types/excalidraw/actions/actionElementLock.d.ts +29 -24
  59. package/dist/types/excalidraw/actions/actionEmbeddable.d.ts +7 -4
  60. package/dist/types/excalidraw/actions/actionExport.d.ts +148 -121
  61. package/dist/types/excalidraw/actions/actionFinalize.d.ts +63 -17
  62. package/dist/types/excalidraw/actions/actionFlip.d.ts +4 -4
  63. package/dist/types/excalidraw/actions/actionFrame.d.ts +78 -66
  64. package/dist/types/excalidraw/actions/actionGroup.d.ts +20 -14
  65. package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +500 -4
  66. package/dist/types/excalidraw/actions/actionLink.d.ts +8 -5
  67. package/dist/types/excalidraw/actions/actionMenu.d.ts +22 -13
  68. package/dist/types/excalidraw/actions/actionNavigate.d.ts +14 -8
  69. package/dist/types/excalidraw/actions/actionProperties.d.ts +119 -66
  70. package/dist/types/excalidraw/actions/actionSelectAll.d.ts +10 -7
  71. package/dist/types/excalidraw/actions/actionStyles.d.ts +11 -8
  72. package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +9 -6
  73. package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +9 -6
  74. package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +8 -5
  75. package/dist/types/excalidraw/actions/actionToggleStats.d.ts +9 -6
  76. package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +9 -6
  77. package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +9 -6
  78. package/dist/types/excalidraw/actions/actionZindex.d.ts +8 -8
  79. package/dist/types/excalidraw/actions/types.d.ts +2 -1
  80. package/dist/types/excalidraw/appState.d.ts +29 -20
  81. package/dist/types/excalidraw/components/App.d.ts +13 -16
  82. package/dist/types/excalidraw/components/ButtonIcon.d.ts +1 -0
  83. package/dist/types/excalidraw/components/{ButtonIconSelect.d.ts → RadioSelection.d.ts} +1 -1
  84. package/dist/types/excalidraw/components/Stats/DragInput.d.ts +11 -1
  85. package/dist/types/excalidraw/components/UnlockPopup.d.ts +8 -0
  86. package/dist/types/excalidraw/components/hyperlink/helpers.d.ts +1 -0
  87. package/dist/types/excalidraw/components/icons.d.ts +2 -0
  88. package/dist/types/excalidraw/components/shapes.d.ts +1 -1
  89. package/dist/types/excalidraw/data/blob.d.ts +1 -1
  90. package/dist/types/excalidraw/eraser/index.d.ts +0 -2
  91. package/dist/types/excalidraw/history.d.ts +21 -5
  92. package/dist/types/excalidraw/lasso/index.d.ts +1 -0
  93. package/dist/types/excalidraw/lasso/utils.d.ts +2 -1
  94. package/dist/types/excalidraw/renderer/helpers.d.ts +4 -4
  95. package/dist/types/excalidraw/scene/Renderer.d.ts +0 -1
  96. package/dist/types/excalidraw/types.d.ts +10 -4
  97. package/dist/types/math/src/angle.d.ts +2 -0
  98. package/dist/types/math/src/constants.d.ts +3 -0
  99. package/dist/types/math/src/curve.d.ts +32 -0
  100. package/dist/types/math/src/index.d.ts +1 -0
  101. package/dist/types/math/src/point.d.ts +1 -1
  102. package/dist/types/math/src/rectangle.d.ts +2 -0
  103. package/dist/types/math/src/vector.d.ts +4 -2
  104. package/history.ts +108 -45
  105. package/package.json +12 -9
  106. package/dist/dev/chunk-HNRFOURL.js +0 -23482
  107. package/dist/dev/chunk-HNRFOURL.js.map +0 -7
  108. package/dist/dev/chunk-JCUIYZXF.js.map +0 -7
  109. package/dist/dev/chunk-VKWYDXFZ.js +0 -7
  110. package/dist/dev/chunk-VKWYDXFZ.js.map +0 -7
  111. package/dist/prod/chunk-G6SRO7HP.js +0 -7
  112. package/dist/prod/chunk-M3D5LUUK.js +0 -33
  113. package/dist/prod/data/image-PMKVN4IF.js +0 -1
  114. package/dist/types/element/src/Shape.d.ts +0 -17
  115. package/dist/types/element/src/ShapeCache.d.ts +0 -25
  116. package/dist/types/element/src/shapes.d.ts +0 -23
  117. package/dist/types/excalidraw/components/ButtonSelect.d.ts +0 -9
  118. package/dist/types/excalidraw/visualdebug.d.ts +0 -41
  119. package/dist/types/utils/src/collision.d.ts +0 -8
  120. /package/dist/dev/data/{image-SLEZBMLG.js.map → image-SURZSZNX.js.map} +0 -0
  121. /package/dist/dev/locales/{en-ZDTPSZNL.js.map → en-SMAPCEOQ.js.map} +0 -0
@@ -51,40 +51,94 @@ export declare const actionClearCanvas: {
51
51
  locked: boolean;
52
52
  fromSelection: boolean;
53
53
  } & import("../types").ActiveTool;
54
+ viewBackgroundColor: string;
55
+ frameRendering: {
56
+ enabled: boolean;
57
+ name: boolean;
58
+ outline: boolean;
59
+ clip: boolean;
60
+ };
61
+ name: string | null;
62
+ zoom: Readonly<{
63
+ value: import("../types").NormalizedZoomValue;
64
+ }>;
65
+ scrollX: number;
66
+ scrollY: number;
67
+ viewModeEnabled: boolean;
68
+ openDialog: {
69
+ name: "imageExport" | "help" | "jsonExport";
70
+ } | {
71
+ name: "ttd";
72
+ tab: "mermaid" | "text-to-diagram";
73
+ } | {
74
+ name: "commandPalette";
75
+ } | {
76
+ name: "elementLinkSelector";
77
+ sourceElementId: string;
78
+ } | null;
79
+ editingGroupId: string | null;
80
+ selectedElementIds: Readonly<{
81
+ [id: string]: true;
82
+ }>;
83
+ frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
84
+ activeEmbeddable: {
85
+ element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
86
+ state: "active" | "hover";
87
+ } | null;
88
+ editingLinearElement: import("@excalidraw/element").LinearElementEditor | null;
89
+ selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
90
+ selectedGroupIds: {
91
+ [groupId: string]: boolean;
92
+ };
93
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
94
+ multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
95
+ isBindingEnabled: boolean;
96
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
97
+ isRotating: boolean;
98
+ elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
99
+ collaborators: Map<import("../types").SocketId, Readonly<{
100
+ pointer?: import("../types").CollaboratorPointer | undefined;
101
+ button?: "up" | "down" | undefined;
102
+ selectedElementIds?: Readonly<{
103
+ [id: string]: true;
104
+ }> | undefined;
105
+ username?: string | null | undefined;
106
+ userState?: import("@excalidraw/common").UserIdleState | undefined;
107
+ color?: {
108
+ background: string;
109
+ stroke: string;
110
+ } | undefined;
111
+ avatarUrl?: string | undefined;
112
+ id?: string | undefined;
113
+ socketId?: import("../types").SocketId | undefined;
114
+ isCurrentUser?: boolean | undefined;
115
+ isInCall?: boolean | undefined;
116
+ isSpeaking?: boolean | undefined;
117
+ isMuted?: boolean | undefined;
118
+ }>>;
119
+ snapLines: readonly import("../snapping").SnapLine[];
120
+ zenModeEnabled: boolean;
121
+ editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
122
+ isCropping: boolean;
123
+ croppingElementId: string | null;
124
+ searchMatches: Readonly<{
125
+ focusedId: string | null;
126
+ matches: readonly import("../types").SearchMatch[];
127
+ }> | null;
128
+ activeLockedId: string | null;
54
129
  contextMenu: {
55
130
  items: import("../components/ContextMenu").ContextMenuItems;
56
131
  top: number;
57
132
  left: number;
58
133
  } | null;
59
- exportWithDarkMode: boolean;
60
- suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
61
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
62
- cursorButton: "up" | "down";
63
- scrollX: number;
64
- scrollY: number;
65
134
  showWelcomeScreen: boolean;
66
135
  isLoading: boolean;
67
136
  errorMessage: import("react").ReactNode;
68
- activeEmbeddable: {
69
- element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
70
- state: "hover" | "active";
71
- } | null;
72
137
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
73
138
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
74
- multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
75
- selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
76
- isBindingEnabled: boolean;
77
- frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
78
- frameRendering: {
79
- enabled: boolean;
80
- name: boolean;
81
- outline: boolean;
82
- clip: boolean;
83
- };
139
+ startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
84
140
  editingFrame: string | null;
85
- elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
86
- editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
87
- editingLinearElement: import("@excalidraw/element").LinearElementEditor | null;
141
+ exportWithDarkMode: boolean;
88
142
  exportScale: number;
89
143
  currentItemStrokeColor: string;
90
144
  currentItemBackgroundColor: string;
@@ -101,36 +155,17 @@ export declare const actionClearCanvas: {
101
155
  currentHoveredFontFamily: number | null;
102
156
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
103
157
  currentItemArrowType: "round" | "sharp" | "elbow";
104
- viewBackgroundColor: string;
158
+ cursorButton: "up" | "down";
105
159
  scrolledOutside: boolean;
106
- name: string | null;
107
160
  isResizing: boolean;
108
- isRotating: boolean;
109
- zoom: Readonly<{
110
- value: import("../types").NormalizedZoomValue;
111
- }>;
112
161
  openMenu: "canvas" | "shape" | null;
113
162
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
114
163
  openSidebar: {
115
164
  name: string;
116
165
  tab?: string | undefined;
117
166
  } | null;
118
- openDialog: {
119
- name: "imageExport" | "help" | "jsonExport";
120
- } | {
121
- name: "ttd";
122
- tab: "text-to-diagram" | "mermaid";
123
- } | {
124
- name: "commandPalette";
125
- } | {
126
- name: "elementLinkSelector";
127
- sourceElementId: string;
128
- } | null;
129
167
  defaultSidebarDockedPreference: boolean;
130
168
  lastPointerDownWith: import("@excalidraw/element/types").PointerType;
131
- selectedElementIds: Readonly<{
132
- [id: string]: true;
133
- }>;
134
169
  hoveredElementIds: Readonly<{
135
170
  [id: string]: true;
136
171
  }>;
@@ -144,38 +179,9 @@ export declare const actionClearCanvas: {
144
179
  closable?: boolean | undefined;
145
180
  duration?: number | undefined;
146
181
  } | null;
147
- zenModeEnabled: boolean;
148
- viewModeEnabled: boolean;
149
- selectedGroupIds: {
150
- [groupId: string]: boolean;
151
- };
152
- editingGroupId: string | null;
153
182
  fileHandle: import("browser-fs-access").FileSystemHandle | null;
154
- collaborators: Map<import("../types").SocketId, Readonly<{
155
- pointer?: import("../types").CollaboratorPointer | undefined;
156
- button?: "up" | "down" | undefined;
157
- selectedElementIds?: Readonly<{
158
- [id: string]: true;
159
- }> | undefined;
160
- username?: string | null | undefined;
161
- userState?: import("@excalidraw/common").UserIdleState | undefined;
162
- color?: {
163
- background: string;
164
- stroke: string;
165
- } | undefined;
166
- avatarUrl?: string | undefined;
167
- id?: string | undefined;
168
- socketId?: import("../types").SocketId | undefined;
169
- isCurrentUser?: boolean | undefined;
170
- isInCall?: boolean | undefined;
171
- isSpeaking?: boolean | undefined;
172
- isMuted?: boolean | undefined;
173
- }>>;
174
183
  currentChartType: import("@excalidraw/element/types").ChartType;
175
- pendingImageElementId: string | null;
176
- showHyperlinkPopup: false | "info" | "editor";
177
- selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
178
- snapLines: readonly import("../snapping").SnapLine[];
184
+ showHyperlinkPopup: false | "editor" | "info";
179
185
  originSnapOffset: {
180
186
  x: number;
181
187
  y: number;
@@ -183,12 +189,9 @@ export declare const actionClearCanvas: {
183
189
  objectsSnapModeEnabled: boolean;
184
190
  userToFollow: import("../types").UserToFollow | null;
185
191
  followedBy: Set<import("../types").SocketId>;
186
- isCropping: boolean;
187
- croppingElementId: string | null;
188
- searchMatches: Readonly<{
189
- focusedId: string | null;
190
- matches: readonly import("../types").SearchMatch[];
191
- }> | null;
192
+ lockedMultiSelections: {
193
+ [groupId: string]: true;
194
+ };
192
195
  };
193
196
  captureUpdate: "IMMEDIATELY";
194
197
  };
@@ -221,7 +224,7 @@ export declare const actionZoomIn: {
221
224
  errorMessage: import("react").ReactNode;
222
225
  activeEmbeddable: {
223
226
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
224
- state: "hover" | "active";
227
+ state: "active" | "hover";
225
228
  } | null;
226
229
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
227
230
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -283,7 +286,7 @@ export declare const actionZoomIn: {
283
286
  name: "imageExport" | "help" | "jsonExport";
284
287
  } | {
285
288
  name: "ttd";
286
- tab: "text-to-diagram" | "mermaid";
289
+ tab: "mermaid" | "text-to-diagram";
287
290
  } | {
288
291
  name: "commandPalette";
289
292
  } | {
@@ -355,8 +358,7 @@ export declare const actionZoomIn: {
355
358
  shown: true;
356
359
  data: import("../charts").Spreadsheet;
357
360
  };
358
- pendingImageElementId: string | null;
359
- showHyperlinkPopup: false | "info" | "editor";
361
+ showHyperlinkPopup: false | "editor" | "info";
360
362
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
361
363
  snapLines: readonly import("../snapping").SnapLine[];
362
364
  originSnapOffset: {
@@ -371,13 +373,17 @@ export declare const actionZoomIn: {
371
373
  focusedId: string | null;
372
374
  matches: readonly import("../types").SearchMatch[];
373
375
  }> | null;
376
+ activeLockedId: string | null;
377
+ lockedMultiSelections: {
378
+ [groupId: string]: true;
379
+ };
374
380
  };
375
381
  captureUpdate: "EVENTUALLY";
376
382
  };
377
383
  PanelComponent: ({ updateData, appState }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
378
- keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
384
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
379
385
  } & {
380
- keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
386
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
381
387
  };
382
388
  export declare const actionZoomOut: {
383
389
  name: "zoomOut";
@@ -405,7 +411,7 @@ export declare const actionZoomOut: {
405
411
  errorMessage: import("react").ReactNode;
406
412
  activeEmbeddable: {
407
413
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
408
- state: "hover" | "active";
414
+ state: "active" | "hover";
409
415
  } | null;
410
416
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
411
417
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -467,7 +473,7 @@ export declare const actionZoomOut: {
467
473
  name: "imageExport" | "help" | "jsonExport";
468
474
  } | {
469
475
  name: "ttd";
470
- tab: "text-to-diagram" | "mermaid";
476
+ tab: "mermaid" | "text-to-diagram";
471
477
  } | {
472
478
  name: "commandPalette";
473
479
  } | {
@@ -539,8 +545,7 @@ export declare const actionZoomOut: {
539
545
  shown: true;
540
546
  data: import("../charts").Spreadsheet;
541
547
  };
542
- pendingImageElementId: string | null;
543
- showHyperlinkPopup: false | "info" | "editor";
548
+ showHyperlinkPopup: false | "editor" | "info";
544
549
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
545
550
  snapLines: readonly import("../snapping").SnapLine[];
546
551
  originSnapOffset: {
@@ -555,13 +560,17 @@ export declare const actionZoomOut: {
555
560
  focusedId: string | null;
556
561
  matches: readonly import("../types").SearchMatch[];
557
562
  }> | null;
563
+ activeLockedId: string | null;
564
+ lockedMultiSelections: {
565
+ [groupId: string]: true;
566
+ };
558
567
  };
559
568
  captureUpdate: "EVENTUALLY";
560
569
  };
561
570
  PanelComponent: ({ updateData, appState }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
562
- keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
571
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
563
572
  } & {
564
- keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
573
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
565
574
  };
566
575
  export declare const actionResetZoom: {
567
576
  name: "resetZoom";
@@ -589,7 +598,7 @@ export declare const actionResetZoom: {
589
598
  errorMessage: import("react").ReactNode;
590
599
  activeEmbeddable: {
591
600
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
592
- state: "hover" | "active";
601
+ state: "active" | "hover";
593
602
  } | null;
594
603
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
595
604
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -651,7 +660,7 @@ export declare const actionResetZoom: {
651
660
  name: "imageExport" | "help" | "jsonExport";
652
661
  } | {
653
662
  name: "ttd";
654
- tab: "text-to-diagram" | "mermaid";
663
+ tab: "mermaid" | "text-to-diagram";
655
664
  } | {
656
665
  name: "commandPalette";
657
666
  } | {
@@ -723,8 +732,7 @@ export declare const actionResetZoom: {
723
732
  shown: true;
724
733
  data: import("../charts").Spreadsheet;
725
734
  };
726
- pendingImageElementId: string | null;
727
- showHyperlinkPopup: false | "info" | "editor";
735
+ showHyperlinkPopup: false | "editor" | "info";
728
736
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
729
737
  snapLines: readonly import("../snapping").SnapLine[];
730
738
  originSnapOffset: {
@@ -739,13 +747,17 @@ export declare const actionResetZoom: {
739
747
  focusedId: string | null;
740
748
  matches: readonly import("../types").SearchMatch[];
741
749
  }> | null;
750
+ activeLockedId: string | null;
751
+ lockedMultiSelections: {
752
+ [groupId: string]: true;
753
+ };
742
754
  };
743
755
  captureUpdate: "EVENTUALLY";
744
756
  };
745
757
  PanelComponent: ({ updateData, appState }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
746
- keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
758
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
747
759
  } & {
748
- keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
760
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
749
761
  };
750
762
  export declare const zoomToFitBounds: ({ bounds, appState, canvasOffsets, fitToViewport, viewportZoomFactor, minZoom, maxZoom, }: {
751
763
  bounds: SceneBounds;
@@ -779,7 +791,7 @@ export declare const zoomToFitBounds: ({ bounds, appState, canvasOffsets, fitToV
779
791
  errorMessage: import("react").ReactNode;
780
792
  activeEmbeddable: {
781
793
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
782
- state: "hover" | "active";
794
+ state: "active" | "hover";
783
795
  } | null;
784
796
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
785
797
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -841,7 +853,7 @@ export declare const zoomToFitBounds: ({ bounds, appState, canvasOffsets, fitToV
841
853
  name: "imageExport" | "help" | "jsonExport";
842
854
  } | {
843
855
  name: "ttd";
844
- tab: "text-to-diagram" | "mermaid";
856
+ tab: "mermaid" | "text-to-diagram";
845
857
  } | {
846
858
  name: "commandPalette";
847
859
  } | {
@@ -913,8 +925,7 @@ export declare const zoomToFitBounds: ({ bounds, appState, canvasOffsets, fitToV
913
925
  shown: true;
914
926
  data: import("../charts").Spreadsheet;
915
927
  };
916
- pendingImageElementId: string | null;
917
- showHyperlinkPopup: false | "info" | "editor";
928
+ showHyperlinkPopup: false | "editor" | "info";
918
929
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
919
930
  snapLines: readonly import("../snapping").SnapLine[];
920
931
  originSnapOffset: {
@@ -930,6 +941,10 @@ export declare const zoomToFitBounds: ({ bounds, appState, canvasOffsets, fitToV
930
941
  focusedId: string | null;
931
942
  matches: readonly import("../types").SearchMatch[];
932
943
  }> | null;
944
+ activeLockedId: string | null;
945
+ lockedMultiSelections: {
946
+ [groupId: string]: true;
947
+ };
933
948
  };
934
949
  captureUpdate: "EVENTUALLY";
935
950
  };
@@ -965,7 +980,7 @@ export declare const zoomToFit: ({ canvasOffsets, targetElements, appState, fitT
965
980
  errorMessage: import("react").ReactNode;
966
981
  activeEmbeddable: {
967
982
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
968
- state: "hover" | "active";
983
+ state: "active" | "hover";
969
984
  } | null;
970
985
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
971
986
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -1027,7 +1042,7 @@ export declare const zoomToFit: ({ canvasOffsets, targetElements, appState, fitT
1027
1042
  name: "imageExport" | "help" | "jsonExport";
1028
1043
  } | {
1029
1044
  name: "ttd";
1030
- tab: "text-to-diagram" | "mermaid";
1045
+ tab: "mermaid" | "text-to-diagram";
1031
1046
  } | {
1032
1047
  name: "commandPalette";
1033
1048
  } | {
@@ -1099,8 +1114,7 @@ export declare const zoomToFit: ({ canvasOffsets, targetElements, appState, fitT
1099
1114
  shown: true;
1100
1115
  data: import("../charts").Spreadsheet;
1101
1116
  };
1102
- pendingImageElementId: string | null;
1103
- showHyperlinkPopup: false | "info" | "editor";
1117
+ showHyperlinkPopup: false | "editor" | "info";
1104
1118
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
1105
1119
  snapLines: readonly import("../snapping").SnapLine[];
1106
1120
  originSnapOffset: {
@@ -1116,6 +1130,10 @@ export declare const zoomToFit: ({ canvasOffsets, targetElements, appState, fitT
1116
1130
  focusedId: string | null;
1117
1131
  matches: readonly import("../types").SearchMatch[];
1118
1132
  }> | null;
1133
+ activeLockedId: string | null;
1134
+ lockedMultiSelections: {
1135
+ [groupId: string]: true;
1136
+ };
1119
1137
  };
1120
1138
  captureUpdate: "EVENTUALLY";
1121
1139
  };
@@ -1143,7 +1161,7 @@ export declare const actionZoomToFitSelectionInViewport: {
1143
1161
  errorMessage: import("react").ReactNode;
1144
1162
  activeEmbeddable: {
1145
1163
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
1146
- state: "hover" | "active";
1164
+ state: "active" | "hover";
1147
1165
  } | null;
1148
1166
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
1149
1167
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -1205,7 +1223,7 @@ export declare const actionZoomToFitSelectionInViewport: {
1205
1223
  name: "imageExport" | "help" | "jsonExport";
1206
1224
  } | {
1207
1225
  name: "ttd";
1208
- tab: "text-to-diagram" | "mermaid";
1226
+ tab: "mermaid" | "text-to-diagram";
1209
1227
  } | {
1210
1228
  name: "commandPalette";
1211
1229
  } | {
@@ -1277,8 +1295,7 @@ export declare const actionZoomToFitSelectionInViewport: {
1277
1295
  shown: true;
1278
1296
  data: import("../charts").Spreadsheet;
1279
1297
  };
1280
- pendingImageElementId: string | null;
1281
- showHyperlinkPopup: false | "info" | "editor";
1298
+ showHyperlinkPopup: false | "editor" | "info";
1282
1299
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
1283
1300
  snapLines: readonly import("../snapping").SnapLine[];
1284
1301
  originSnapOffset: {
@@ -1294,12 +1311,16 @@ export declare const actionZoomToFitSelectionInViewport: {
1294
1311
  focusedId: string | null;
1295
1312
  matches: readonly import("../types").SearchMatch[];
1296
1313
  }> | null;
1314
+ activeLockedId: string | null;
1315
+ lockedMultiSelections: {
1316
+ [groupId: string]: true;
1317
+ };
1297
1318
  };
1298
1319
  captureUpdate: "EVENTUALLY";
1299
1320
  };
1300
- keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
1321
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
1301
1322
  } & {
1302
- keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
1323
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
1303
1324
  };
1304
1325
  export declare const actionZoomToFitSelection: {
1305
1326
  name: "zoomToFitSelection";
@@ -1325,7 +1346,7 @@ export declare const actionZoomToFitSelection: {
1325
1346
  errorMessage: import("react").ReactNode;
1326
1347
  activeEmbeddable: {
1327
1348
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
1328
- state: "hover" | "active";
1349
+ state: "active" | "hover";
1329
1350
  } | null;
1330
1351
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
1331
1352
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -1387,7 +1408,7 @@ export declare const actionZoomToFitSelection: {
1387
1408
  name: "imageExport" | "help" | "jsonExport";
1388
1409
  } | {
1389
1410
  name: "ttd";
1390
- tab: "text-to-diagram" | "mermaid";
1411
+ tab: "mermaid" | "text-to-diagram";
1391
1412
  } | {
1392
1413
  name: "commandPalette";
1393
1414
  } | {
@@ -1459,8 +1480,7 @@ export declare const actionZoomToFitSelection: {
1459
1480
  shown: true;
1460
1481
  data: import("../charts").Spreadsheet;
1461
1482
  };
1462
- pendingImageElementId: string | null;
1463
- showHyperlinkPopup: false | "info" | "editor";
1483
+ showHyperlinkPopup: false | "editor" | "info";
1464
1484
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
1465
1485
  snapLines: readonly import("../snapping").SnapLine[];
1466
1486
  originSnapOffset: {
@@ -1476,12 +1496,16 @@ export declare const actionZoomToFitSelection: {
1476
1496
  focusedId: string | null;
1477
1497
  matches: readonly import("../types").SearchMatch[];
1478
1498
  }> | null;
1499
+ activeLockedId: string | null;
1500
+ lockedMultiSelections: {
1501
+ [groupId: string]: true;
1502
+ };
1479
1503
  };
1480
1504
  captureUpdate: "EVENTUALLY";
1481
1505
  };
1482
- keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
1506
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
1483
1507
  } & {
1484
- keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
1508
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
1485
1509
  };
1486
1510
  export declare const actionZoomToFit: {
1487
1511
  name: "zoomToFit";
@@ -1508,7 +1532,7 @@ export declare const actionZoomToFit: {
1508
1532
  errorMessage: import("react").ReactNode;
1509
1533
  activeEmbeddable: {
1510
1534
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
1511
- state: "hover" | "active";
1535
+ state: "active" | "hover";
1512
1536
  } | null;
1513
1537
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
1514
1538
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -1570,7 +1594,7 @@ export declare const actionZoomToFit: {
1570
1594
  name: "imageExport" | "help" | "jsonExport";
1571
1595
  } | {
1572
1596
  name: "ttd";
1573
- tab: "text-to-diagram" | "mermaid";
1597
+ tab: "mermaid" | "text-to-diagram";
1574
1598
  } | {
1575
1599
  name: "commandPalette";
1576
1600
  } | {
@@ -1642,8 +1666,7 @@ export declare const actionZoomToFit: {
1642
1666
  shown: true;
1643
1667
  data: import("../charts").Spreadsheet;
1644
1668
  };
1645
- pendingImageElementId: string | null;
1646
- showHyperlinkPopup: false | "info" | "editor";
1669
+ showHyperlinkPopup: false | "editor" | "info";
1647
1670
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
1648
1671
  snapLines: readonly import("../snapping").SnapLine[];
1649
1672
  originSnapOffset: {
@@ -1659,12 +1682,16 @@ export declare const actionZoomToFit: {
1659
1682
  focusedId: string | null;
1660
1683
  matches: readonly import("../types").SearchMatch[];
1661
1684
  }> | null;
1685
+ activeLockedId: string | null;
1686
+ lockedMultiSelections: {
1687
+ [groupId: string]: true;
1688
+ };
1662
1689
  };
1663
1690
  captureUpdate: "EVENTUALLY";
1664
1691
  };
1665
- keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
1692
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
1666
1693
  } & {
1667
- keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
1694
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
1668
1695
  };
1669
1696
  export declare const actionToggleTheme: {
1670
1697
  name: "toggleTheme";
@@ -1688,7 +1715,7 @@ export declare const actionToggleTheme: {
1688
1715
  errorMessage: import("react").ReactNode;
1689
1716
  activeEmbeddable: {
1690
1717
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
1691
- state: "hover" | "active";
1718
+ state: "active" | "hover";
1692
1719
  } | null;
1693
1720
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
1694
1721
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -1755,7 +1782,7 @@ export declare const actionToggleTheme: {
1755
1782
  name: "imageExport" | "help" | "jsonExport";
1756
1783
  } | {
1757
1784
  name: "ttd";
1758
- tab: "text-to-diagram" | "mermaid";
1785
+ tab: "mermaid" | "text-to-diagram";
1759
1786
  } | {
1760
1787
  name: "commandPalette";
1761
1788
  } | {
@@ -1826,8 +1853,7 @@ export declare const actionToggleTheme: {
1826
1853
  shown: true;
1827
1854
  data: import("../charts").Spreadsheet;
1828
1855
  };
1829
- pendingImageElementId: string | null;
1830
- showHyperlinkPopup: false | "info" | "editor";
1856
+ showHyperlinkPopup: false | "editor" | "info";
1831
1857
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
1832
1858
  snapLines: readonly import("../snapping").SnapLine[];
1833
1859
  originSnapOffset: {
@@ -1843,13 +1869,17 @@ export declare const actionToggleTheme: {
1843
1869
  focusedId: string | null;
1844
1870
  matches: readonly import("../types").SearchMatch[];
1845
1871
  }> | null;
1872
+ activeLockedId: string | null;
1873
+ lockedMultiSelections: {
1874
+ [groupId: string]: true;
1875
+ };
1846
1876
  };
1847
1877
  captureUpdate: "EVENTUALLY";
1848
1878
  };
1849
- keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
1879
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
1850
1880
  predicate: (elements: readonly ExcalidrawElement[], appState: AppState, props: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
1851
1881
  } & {
1852
- keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
1882
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
1853
1883
  };
1854
1884
  export declare const actionToggleEraserTool: {
1855
1885
  name: "toggleEraserTool";
@@ -1935,7 +1965,7 @@ export declare const actionToggleEraserTool: {
1935
1965
  name: "imageExport" | "help" | "jsonExport";
1936
1966
  } | {
1937
1967
  name: "ttd";
1938
- tab: "text-to-diagram" | "mermaid";
1968
+ tab: "mermaid" | "text-to-diagram";
1939
1969
  } | {
1940
1970
  name: "commandPalette";
1941
1971
  } | {
@@ -2001,8 +2031,7 @@ export declare const actionToggleEraserTool: {
2001
2031
  shown: true;
2002
2032
  data: import("../charts").Spreadsheet;
2003
2033
  };
2004
- pendingImageElementId: string | null;
2005
- showHyperlinkPopup: false | "info" | "editor";
2034
+ showHyperlinkPopup: false | "editor" | "info";
2006
2035
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
2007
2036
  snapLines: readonly import("../snapping").SnapLine[];
2008
2037
  originSnapOffset: {
@@ -2018,12 +2047,16 @@ export declare const actionToggleEraserTool: {
2018
2047
  focusedId: string | null;
2019
2048
  matches: readonly import("../types").SearchMatch[];
2020
2049
  }> | null;
2050
+ activeLockedId: string | null;
2051
+ lockedMultiSelections: {
2052
+ [groupId: string]: true;
2053
+ };
2021
2054
  };
2022
2055
  captureUpdate: "IMMEDIATELY";
2023
2056
  };
2024
- keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
2057
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
2025
2058
  } & {
2026
- keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
2059
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
2027
2060
  };
2028
2061
  export declare const actionToggleLassoTool: {
2029
2062
  name: "toggleLassoTool";
@@ -2110,7 +2143,7 @@ export declare const actionToggleLassoTool: {
2110
2143
  name: "imageExport" | "help" | "jsonExport";
2111
2144
  } | {
2112
2145
  name: "ttd";
2113
- tab: "text-to-diagram" | "mermaid";
2146
+ tab: "mermaid" | "text-to-diagram";
2114
2147
  } | {
2115
2148
  name: "commandPalette";
2116
2149
  } | {
@@ -2176,8 +2209,7 @@ export declare const actionToggleLassoTool: {
2176
2209
  shown: true;
2177
2210
  data: import("../charts").Spreadsheet;
2178
2211
  };
2179
- pendingImageElementId: string | null;
2180
- showHyperlinkPopup: false | "info" | "editor";
2212
+ showHyperlinkPopup: false | "editor" | "info";
2181
2213
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
2182
2214
  snapLines: readonly import("../snapping").SnapLine[];
2183
2215
  originSnapOffset: {
@@ -2193,6 +2225,10 @@ export declare const actionToggleLassoTool: {
2193
2225
  focusedId: string | null;
2194
2226
  matches: readonly import("../types").SearchMatch[];
2195
2227
  }> | null;
2228
+ activeLockedId: string | null;
2229
+ lockedMultiSelections: {
2230
+ [groupId: string]: true;
2231
+ };
2196
2232
  };
2197
2233
  captureUpdate: "NEVER";
2198
2234
  };
@@ -2285,7 +2321,7 @@ export declare const actionToggleHandTool: {
2285
2321
  name: "imageExport" | "help" | "jsonExport";
2286
2322
  } | {
2287
2323
  name: "ttd";
2288
- tab: "text-to-diagram" | "mermaid";
2324
+ tab: "mermaid" | "text-to-diagram";
2289
2325
  } | {
2290
2326
  name: "commandPalette";
2291
2327
  } | {
@@ -2351,8 +2387,7 @@ export declare const actionToggleHandTool: {
2351
2387
  shown: true;
2352
2388
  data: import("../charts").Spreadsheet;
2353
2389
  };
2354
- pendingImageElementId: string | null;
2355
- showHyperlinkPopup: false | "info" | "editor";
2390
+ showHyperlinkPopup: false | "editor" | "info";
2356
2391
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
2357
2392
  snapLines: readonly import("../snapping").SnapLine[];
2358
2393
  originSnapOffset: {
@@ -2368,10 +2403,14 @@ export declare const actionToggleHandTool: {
2368
2403
  focusedId: string | null;
2369
2404
  matches: readonly import("../types").SearchMatch[];
2370
2405
  }> | null;
2406
+ activeLockedId: string | null;
2407
+ lockedMultiSelections: {
2408
+ [groupId: string]: true;
2409
+ };
2371
2410
  };
2372
2411
  captureUpdate: "IMMEDIATELY";
2373
2412
  };
2374
- keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
2413
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
2375
2414
  } & {
2376
- keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
2415
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
2377
2416
  };