@myoc/excalidraw 0.19.506 → 0.19.508

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 (86) hide show
  1. package/CHANGELOG.md +106 -0
  2. package/dist/dev/{chunk-CUCA2WKB.js → chunk-4FUVQKPQ.js} +37 -43
  3. package/dist/dev/chunk-4FUVQKPQ.js.map +7 -0
  4. package/dist/dev/{chunk-KLM3KPI7.js → chunk-55P7U5EB.js} +4 -1
  5. package/dist/dev/chunk-55P7U5EB.js.map +7 -0
  6. package/dist/dev/{chunk-KCN2IL3S.js → chunk-TW3GG6X2.js} +2 -2
  7. package/dist/dev/data/{image-KG7C5ZXU.js → image-BLMJ34ZZ.js} +3 -3
  8. package/dist/dev/index.css +11 -3
  9. package/dist/dev/index.css.map +2 -2
  10. package/dist/dev/index.js +1391 -972
  11. package/dist/dev/index.js.map +4 -4
  12. package/dist/dev/locales/{en-I7VEBYIX.js → en-MHJYLCUG.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-5HKPV526.js +4 -0
  16. package/dist/prod/{chunk-74H5OWWZ.js → chunk-GYDQTBSQ.js} +1 -1
  17. package/dist/prod/{chunk-3FGJVPJS.js → chunk-QIZKYIJ7.js} +3 -3
  18. package/dist/prod/data/image-S4O4TFPQ.js +1 -0
  19. package/dist/prod/index.css +1 -1
  20. package/dist/prod/index.js +19 -19
  21. package/dist/prod/locales/{en-Y2V7YPBM.js → en-YKHOUQAO.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/element/src/Scene.d.ts +5 -3
  25. package/dist/types/element/src/bounds.d.ts +4 -2
  26. package/dist/types/element/src/duplicate.d.ts +1 -0
  27. package/dist/types/element/src/frame.d.ts +7 -6
  28. package/dist/types/element/src/linearElementEditor.d.ts +2 -2
  29. package/dist/types/element/src/selection.d.ts +2 -2
  30. package/dist/types/element/src/shape.d.ts +1 -1
  31. package/dist/types/element/src/typeChecks.d.ts +1 -0
  32. package/dist/types/element/src/utils.d.ts +1 -1
  33. package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +3 -3
  34. package/dist/types/excalidraw/actions/actionBoundText.d.ts +2 -2
  35. package/dist/types/excalidraw/actions/actionCanvas.d.ts +11 -11
  36. package/dist/types/excalidraw/actions/actionClipboard.d.ts +2 -2
  37. package/dist/types/excalidraw/actions/actionCropEditor.d.ts +1 -1
  38. package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +3 -3
  39. package/dist/types/excalidraw/actions/actionDeselect.d.ts +168 -0
  40. package/dist/types/excalidraw/actions/actionElementLink.d.ts +1 -1
  41. package/dist/types/excalidraw/actions/actionElementLock.d.ts +2 -2
  42. package/dist/types/excalidraw/actions/actionEmbeddable.d.ts +1 -1
  43. package/dist/types/excalidraw/actions/actionExport.d.ts +2 -2
  44. package/dist/types/excalidraw/actions/actionFrame.d.ts +4 -4
  45. package/dist/types/excalidraw/actions/actionGroup.d.ts +2 -2
  46. package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +1 -1
  47. package/dist/types/excalidraw/actions/actionLink.d.ts +1 -1
  48. package/dist/types/excalidraw/actions/actionMenu.d.ts +1 -1
  49. package/dist/types/excalidraw/actions/actionProperties.d.ts +2 -2
  50. package/dist/types/excalidraw/actions/actionSelectAll.d.ts +1 -1
  51. package/dist/types/excalidraw/actions/actionStyles.d.ts +1 -1
  52. package/dist/types/excalidraw/actions/actionToggleArrowBinding.d.ts +1 -1
  53. package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +1 -1
  54. package/dist/types/excalidraw/actions/actionToggleMidpointSnapping.d.ts +1 -1
  55. package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +1 -1
  56. package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +1 -1
  57. package/dist/types/excalidraw/actions/actionToggleStats.d.ts +1 -1
  58. package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +1 -1
  59. package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +1 -1
  60. package/dist/types/excalidraw/actions/index.d.ts +1 -0
  61. package/dist/types/excalidraw/actions/types.d.ts +1 -1
  62. package/dist/types/excalidraw/appState.d.ts +1 -0
  63. package/dist/types/excalidraw/components/App.d.ts +9 -0
  64. package/dist/types/excalidraw/components/PublishLibrary.d.ts +3 -2
  65. package/dist/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +1 -1
  66. package/dist/types/excalidraw/components/canvases/NewElementCanvas.d.ts +1 -0
  67. package/dist/types/excalidraw/components/canvases/StaticCanvas.d.ts +1 -1
  68. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContentRadio.d.ts +2 -1
  69. package/dist/types/excalidraw/components/main-menu/DefaultItems.d.ts +1 -0
  70. package/dist/types/excalidraw/components/shapes.d.ts +7 -0
  71. package/dist/types/excalidraw/data/blob.d.ts +4 -8
  72. package/dist/types/excalidraw/data/json.d.ts +1 -1
  73. package/dist/types/excalidraw/index.d.ts +1 -1
  74. package/dist/types/excalidraw/scene/Renderer.d.ts +425 -19
  75. package/dist/types/excalidraw/types.d.ts +15 -2
  76. package/dist/types/fractional-indexing/src/index.d.ts +29 -0
  77. package/dist/types/math/src/constants.d.ts +0 -1
  78. package/dist/types/math/src/curve.d.ts +4 -1
  79. package/package.json +4 -5
  80. package/dist/dev/chunk-CUCA2WKB.js.map +0 -7
  81. package/dist/dev/chunk-KLM3KPI7.js.map +0 -7
  82. package/dist/prod/chunk-DAHBMDEO.js +0 -4
  83. package/dist/prod/data/image-OZR7E4WV.js +0 -1
  84. /package/dist/dev/{chunk-KCN2IL3S.js.map → chunk-TW3GG6X2.js.map} +0 -0
  85. /package/dist/dev/data/{image-KG7C5ZXU.js.map → image-BLMJ34ZZ.js.map} +0 -0
  86. /package/dist/dev/locales/{en-I7VEBYIX.js.map → en-MHJYLCUG.js.map} +0 -0
@@ -1 +1 @@
1
- import{A,B,C,D,E,F,G,H,I,J,K,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z}from"../chunk-3FGJVPJS.js";import"../chunk-SRAX5OIU.js";export{f as alerts,e as buttons,l as canvasError,t as clearCanvasDialog,D as colorPicker,B as colors,I as commandPalette,w as confirmDialog,K as default,i as element,b as elementLink,y as encrypted,p as errorDialog,m as errorSplash,g as errors,r as exportDialog,G as fontList,j as headings,s as helpDialog,k as hints,x as imageExportDialog,J as keys,a as labels,c as library,E as overwriteConfirm,q as progressDialog,u as publishDialog,v as publishSuccessDialog,F as quickSearch,o as roomDialog,d as search,n as shareDialog,z as stats,A as toast,h as toolBar,H as userList,C as welcomeScreen};
1
+ import{A,B,C,D,E,F,G,H,I,J,K,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z}from"../chunk-QIZKYIJ7.js";import"../chunk-SRAX5OIU.js";export{f as alerts,e as buttons,l as canvasError,t as clearCanvasDialog,D as colorPicker,B as colors,I as commandPalette,w as confirmDialog,K as default,i as element,b as elementLink,y as encrypted,p as errorDialog,m as errorSplash,g as errors,r as exportDialog,G as fontList,j as headings,s as helpDialog,k as hints,x as imageExportDialog,J as keys,a as labels,c as library,E as overwriteConfirm,q as progressDialog,u as publishDialog,v as publishSuccessDialog,F as quickSearch,o as roomDialog,d as search,n as shareDialog,z as stats,A as toast,h as toolBar,H as userList,C as welcomeScreen};
@@ -1 +1 @@
1
- import{a,b,c,d}from"./chunk-Z5NKEFVG.js";import"./chunk-74H5OWWZ.js";import"./chunk-SRAX5OIU.js";export{a as Commands,b as subsetToBase64,c as subsetToBinary,d as toBase64};
1
+ import{a,b,c,d}from"./chunk-Z5NKEFVG.js";import"./chunk-GYDQTBSQ.js";import"./chunk-SRAX5OIU.js";export{a as Commands,b as subsetToBase64,c as subsetToBinary,d as toBase64};
@@ -1 +1 @@
1
- import{a as r,c as t}from"./chunk-Z5NKEFVG.js";import"./chunk-74H5OWWZ.js";import"./chunk-SRAX5OIU.js";var s=import.meta.url?new URL(import.meta.url):void 0;typeof window>"u"&&typeof self<"u"&&(self.onmessage=async e=>{switch(e.data.command){case r.Subset:let a=await t(e.data.arrayBuffer,e.data.codePoints);self.postMessage(a,{transfer:[a]});break}});export{s as WorkerUrl};
1
+ import{a as r,c as t}from"./chunk-Z5NKEFVG.js";import"./chunk-GYDQTBSQ.js";import"./chunk-SRAX5OIU.js";var s=import.meta.url?new URL(import.meta.url):void 0;typeof window>"u"&&typeof self<"u"&&(self.onmessage=async e=>{switch(e.data.command){case r.Subset:let a=await t(e.data.arrayBuffer,e.data.codePoints);self.postMessage(a,{transfer:[a]});break}});export{s as WorkerUrl};
@@ -63,10 +63,12 @@ export declare class Scene {
63
63
  triggerUpdate(): void;
64
64
  onUpdate(cb: SceneStateCallback): SceneStateCallbackRemover;
65
65
  destroy(): void;
66
- insertElementAtIndex(element: ExcalidrawElement, index: number): void;
67
- insertElementsAtIndex(elements: ExcalidrawElement[], index: number): void;
66
+ /** low-level - generally use app.insertNewElements() */
67
+ insertElementsAtIndex(elements: ExcalidrawElement[],
68
+ /** null indicates end of the array */
69
+ index: number | null): void;
70
+ /** low-level - generally use app.insertNewElement() */
68
71
  insertElement: (element: ExcalidrawElement) => void;
69
- insertElements: (elements: ExcalidrawElement[]) => void;
70
72
  getElementIndex(elementId: string): number;
71
73
  getContainerElement: (element: (ExcalidrawElement & {
72
74
  containerId: ExcalidrawElement["id"] | null;
@@ -2,7 +2,7 @@ import { type Bounds } from "@excalidraw/common";
2
2
  import type { Degrees, GlobalPoint, LineSegment, LocalPoint } from "@excalidraw/math";
3
3
  import type { AppState } from "@excalidraw/excalidraw/types";
4
4
  import type { Drawable, Op } from "roughjs/bin/core";
5
- import type { Arrowhead, ElementsMap, ElementsMapOrArray, ExcalidrawElement, ExcalidrawFreeDrawElement, ExcalidrawLinearElement, NonDeleted } from "./types";
5
+ import type { Arrowhead, ElementsMap, ElementsMapOrArray, ExcalidrawElement, ExcalidrawLinearElement, NonDeleted } from "./types";
6
6
  export type RectangleBox = {
7
7
  x: number;
8
8
  y: number;
@@ -38,7 +38,7 @@ export declare const getRectangleBoxAbsoluteCoords: (boxSceneCoords: RectangleBo
38
38
  export declare const getDiamondPoints: (element: ExcalidrawElement) => number[];
39
39
  export declare const getCubicBezierCurveBound: (p0: GlobalPoint, p1: GlobalPoint, p2: GlobalPoint, p3: GlobalPoint) => Bounds;
40
40
  export declare const getMinMaxXYFromCurvePathOps: (ops: Op[], transformXY?: (p: GlobalPoint) => GlobalPoint) => Bounds;
41
- export declare const getBoundsFromPoints: (points: ExcalidrawFreeDrawElement["points"]) => Bounds;
41
+ export declare const getBoundsFromPoints: <P extends GlobalPoint | LocalPoint>(points: readonly P[], padding?: number) => Bounds;
42
42
  /** @returns number in pixels */
43
43
  export declare const getArrowheadSize: (arrowhead: Arrowhead) => number;
44
44
  /** @returns number in degrees */
@@ -77,5 +77,7 @@ export declare const getCenterForBounds: (bounds: Bounds) => GlobalPoint;
77
77
  */
78
78
  export declare const aabbForElement: (element: Readonly<ExcalidrawElement>, elementsMap: ElementsMap, offset?: [number, number, number, number]) => Bounds;
79
79
  export declare const pointInsideBounds: <P extends GlobalPoint | LocalPoint>(p: P, bounds: Bounds) => boolean;
80
+ export declare const pointInsideBoundsInclusive: <P extends GlobalPoint | LocalPoint>(p: P, bounds: Bounds) => boolean;
80
81
  export declare const doBoundsIntersect: (bounds1: Bounds | null, bounds2: Bounds | null) => boolean;
82
+ export declare const boundsContainBounds: (outerBounds: Bounds, innerBounds: Bounds) => boolean;
81
83
  export declare const elementCenterPoint: (element: ExcalidrawElement, elementsMap: ElementsMap, xOffset?: number, yOffset?: number) => GlobalPoint;
@@ -31,6 +31,7 @@ export declare const duplicateElements: (opts: {
31
31
  * user interaction.
32
32
  */
33
33
  type: "everything";
34
+ preserveFrameChildrenOrder?: boolean;
34
35
  } | {
35
36
  /**
36
37
  * Duplicates specified elements and inserts them back into the array
@@ -36,17 +36,18 @@ export declare const omitPartialGroups: (elements: ExcalidrawElement[], frame: E
36
36
  export declare const getContainingFrame: (element: ExcalidrawElement, elementsMap: ElementsMap) => ExcalidrawFrameLikeElement | null;
37
37
  /** */
38
38
  export declare const filterElementsEligibleAsFrameChildren: (elements: readonly ExcalidrawElement[], frame: ExcalidrawFrameLikeElement) => ExcalidrawElement[];
39
+ export declare const getCommonFrameId: (elements: readonly ExcalidrawElement[]) => string | null;
40
+ export declare const getFrameChildrenInsertionIndex: (elements: readonly ExcalidrawElement[], frameId: ExcalidrawFrameLikeElement["id"]) => number | null;
39
41
  /**
40
- * Retains (or repairs for target frame) the ordering invriant where children
41
- * elements come right before the parent frame:
42
- * [el, el, child, child, frame, el]
42
+ * Adds elements and their bound elements to frame. Reorders added elements to
43
+ * be just below frame, or just above its highest child (whichever is higher).
43
44
  *
44
45
  * @returns mutated allElements (same data structure)
45
46
  */
46
- export declare const addElementsToFrame: <T extends ElementsMapOrArray>(allElements: T, elementsToAdd: NonDeletedExcalidrawElement[], frame: ExcalidrawFrameLikeElement, appState: AppState) => T;
47
+ export declare const addElementsToFrame: <T extends ElementsMapOrArray>(allElements: T, elementsToAdd: NonDeletedExcalidrawElement[], frame: ExcalidrawFrameLikeElement) => T;
47
48
  export declare const removeElementsFromFrame: (elementsToRemove: ReadonlySetLike<NonDeletedExcalidrawElement>, elementsMap: ElementsMap) => void;
48
49
  export declare const removeAllElementsFromFrame: <T extends ExcalidrawElement>(allElements: readonly T[], frame: ExcalidrawFrameLikeElement) => readonly T[];
49
- export declare const replaceAllElementsInFrame: <T extends ExcalidrawElement>(allElements: readonly T[], nextElementsInFrame: ExcalidrawElement[], frame: ExcalidrawFrameLikeElement, app: AppClassProperties) => T[];
50
+ export declare const replaceAllElementsInFrame: <T extends ExcalidrawElement>(allElements: readonly T[], nextElementsInFrame: ExcalidrawElement[], frame: ExcalidrawFrameLikeElement) => T[];
50
51
  /** does not mutate elements, but returns new ones */
51
52
  export declare const updateFrameMembershipOfSelectedElements: <T extends ElementsMapOrArray>(allElements: T, appState: AppState, app: AppClassProperties) => T;
52
53
  /**
@@ -70,5 +71,5 @@ export declare const isElementInFrame: (element: ExcalidrawElement, allElementsM
70
71
  export declare const shouldApplyFrameClip: (element: ExcalidrawElement, frame: ExcalidrawFrameLikeElement, appState: StaticCanvasAppState, elementsMap: ElementsMap, checkedGroups?: Map<string, boolean>) => boolean;
71
72
  export declare const getDefaultFrameName: (element: ExcalidrawFrameLikeElement) => "Frame" | "AI Frame";
72
73
  export declare const getFrameLikeTitle: (element: ExcalidrawFrameLikeElement) => string;
73
- export declare const getElementsOverlappingFrame: (elements: readonly ExcalidrawElement[], frame: ExcalidrawFrameLikeElement) => NonDeletedExcalidrawElement[];
74
+ export declare const getElementsOverlappingFrame: (elements: readonly ExcalidrawElement[], frame: ExcalidrawFrameLikeElement, elementsMap: ElementsMap) => ExcalidrawElement[];
74
75
  export declare const frameAndChildrenSelectedTogether: (selectedElements: readonly ExcalidrawElement[]) => boolean;
@@ -55,8 +55,8 @@ export declare class LinearElementEditor {
55
55
  x: number;
56
56
  y: number;
57
57
  }, appState: AppState, elementsMap: ElementsMap) => GlobalPoint | null;
58
- static isSegmentTooShort<P extends GlobalPoint | LocalPoint>(element: NonDeleted<ExcalidrawLinearElement>, startPoint: P, endPoint: P, index: number, zoom: Zoom): boolean;
59
- static getSegmentMidPoint(element: NonDeleted<ExcalidrawLinearElement>, index: number): GlobalPoint;
58
+ static isSegmentTooShort<P extends GlobalPoint | LocalPoint>(element: NonDeleted<ExcalidrawLinearElement>, startPoint: P, endPoint: P, index: number, zoom: Zoom, elementsMap: ElementsMap): boolean;
59
+ static getSegmentMidPoint(element: NonDeleted<ExcalidrawLinearElement>, index: number, elementsMap: ElementsMap): GlobalPoint;
60
60
  static getSegmentMidPointIndex(linearElementEditor: LinearElementEditor, appState: AppState, midPoint: GlobalPoint, elementsMap: ElementsMap): number;
61
61
  static handlePointerDown(event: React.PointerEvent<HTMLElement>, app: AppClassProperties, store: Store, scenePointer: {
62
62
  x: number;
@@ -1,4 +1,4 @@
1
- import type { AppState, InteractiveCanvasAppState } from "@excalidraw/excalidraw/types";
1
+ import type { AppState, BoxSelectionMode, InteractiveCanvasAppState } from "@excalidraw/excalidraw/types";
2
2
  import { LinearElementEditor } from "./linearElementEditor";
3
3
  import type { ElementsMap, ElementsMapOrArray, ExcalidrawElement, NonDeleted, NonDeletedExcalidrawElement } from "./types";
4
4
  /**
@@ -8,7 +8,7 @@ import type { ElementsMap, ElementsMapOrArray, ExcalidrawElement, NonDeleted, No
8
8
  * @param selectedElements
9
9
  */
10
10
  export declare const excludeElementsInFramesFromSelection: <T extends ExcalidrawElement>(selectedElements: readonly T[]) => T[];
11
- export declare const getElementsWithinSelection: (elements: readonly NonDeletedExcalidrawElement[], selection: NonDeletedExcalidrawElement, elementsMap: ElementsMap, excludeElementsInFrames?: boolean) => NonDeletedExcalidrawElement[];
11
+ export declare const getElementsWithinSelection: (elements: readonly NonDeletedExcalidrawElement[], selection: NonDeletedExcalidrawElement, elementsMap: ElementsMap, excludeElementsInFrames?: boolean, boxSelectionMode?: BoxSelectionMode) => NonDeletedExcalidrawElement[];
12
12
  export declare const getVisibleAndNonSelectedElements: (elements: readonly NonDeletedExcalidrawElement[], selectedElements: readonly NonDeletedExcalidrawElement[], appState: AppState, elementsMap: ElementsMap) => NonDeletedExcalidrawElement[];
13
13
  export declare const isSomeElementSelected: {
14
14
  (elements: readonly NonDeletedExcalidrawElement[], appState: Pick<AppState, "selectedElementIds">): boolean;
@@ -27,7 +27,7 @@ export declare class ShapeCache {
27
27
  } | null) => ((T["type"] extends keyof ElementShapes ? ElementShapes[T["type"]] | undefined : ElementShape | undefined) & {}) | (T["type"] extends keyof ElementShapes ? ElementShapes[T["type"]] : Drawable | null);
28
28
  }
29
29
  export declare const generateRoughOptions: (element: ExcalidrawElement, continuousPath?: boolean, isDarkMode?: boolean) => Options;
30
- export declare const generateLinearCollisionShape: (element: ExcalidrawLinearElement | ExcalidrawFreeDrawElement) => {
30
+ export declare const generateLinearCollisionShape: (element: ExcalidrawLinearElement | ExcalidrawFreeDrawElement, elementsMap: ElementsMap) => {
31
31
  op: string;
32
32
  data: number[];
33
33
  }[];
@@ -52,3 +52,4 @@ export declare const getLinearElementSubType: (element: ExcalidrawLinearElement)
52
52
  */
53
53
  export declare const isValidPolygon: (points: ExcalidrawLineElement["points"]) => boolean;
54
54
  export declare const canBecomePolygon: (points: ExcalidrawLineElement["points"]) => boolean;
55
+ export declare const isEligibleFrameChildType: (type: ElementOrToolType) => boolean;
@@ -8,7 +8,7 @@ import type { ElementsMap, ExcalidrawArrowElement, ExcalidrawBindableElement, Ex
8
8
  * @param element The linear element to deconstruct
9
9
  * @returns The rotated in components.
10
10
  */
11
- export declare function deconstructLinearOrFreeDrawElement(element: ExcalidrawLinearElement | ExcalidrawFreeDrawElement): [LineSegment<GlobalPoint>[], Curve<GlobalPoint>[]];
11
+ export declare function deconstructLinearOrFreeDrawElement(element: ExcalidrawLinearElement | ExcalidrawFreeDrawElement, elementsMap: ElementsMap): [LineSegment<GlobalPoint>[], Curve<GlobalPoint>[]];
12
12
  /**
13
13
  * Get the building components of a rectanguloid element in the form of
14
14
  * line segments and curves **unrotated**.
@@ -38,9 +38,9 @@ export declare const actionAddToLibrary: {
38
38
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
39
39
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
40
40
  isBindingEnabled: boolean;
41
+ boxSelectionMode: import("../types").BoxSelectionMode;
41
42
  bindingPreference: "enabled" | "disabled";
42
43
  isMidpointSnappingEnabled: boolean;
43
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
44
44
  suggestedBinding: {
45
45
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
46
46
  midPoint?: import("@excalidraw/math").GlobalPoint;
@@ -201,9 +201,9 @@ export declare const actionAddToLibrary: {
201
201
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
202
202
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
203
203
  isBindingEnabled: boolean;
204
+ boxSelectionMode: import("../types").BoxSelectionMode;
204
205
  bindingPreference: "enabled" | "disabled";
205
206
  isMidpointSnappingEnabled: boolean;
206
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
207
207
  suggestedBinding: {
208
208
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
209
209
  midPoint?: import("@excalidraw/math").GlobalPoint;
@@ -369,9 +369,9 @@ export declare const actionAddToLibrary: {
369
369
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
370
370
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
371
371
  isBindingEnabled: boolean;
372
+ boxSelectionMode: import("../types").BoxSelectionMode;
372
373
  bindingPreference: "enabled" | "disabled";
373
374
  isMidpointSnappingEnabled: boolean;
374
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
375
375
  suggestedBinding: {
376
376
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
377
377
  midPoint?: import("@excalidraw/math").GlobalPoint;
@@ -58,9 +58,9 @@ export declare const actionBindText: {
58
58
  multiElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawLinearElement> | null;
59
59
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
60
60
  isBindingEnabled: boolean;
61
+ boxSelectionMode: import("../types").BoxSelectionMode;
61
62
  bindingPreference: "enabled" | "disabled";
62
63
  isMidpointSnappingEnabled: boolean;
63
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
64
64
  suggestedBinding: {
65
65
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
66
66
  midPoint?: import("@excalidraw/math").GlobalPoint;
@@ -238,9 +238,9 @@ export declare const actionWrapTextInContainer: {
238
238
  multiElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawLinearElement> | null;
239
239
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
240
240
  isBindingEnabled: boolean;
241
+ boxSelectionMode: import("../types").BoxSelectionMode;
241
242
  bindingPreference: "enabled" | "disabled";
242
243
  isMidpointSnappingEnabled: boolean;
243
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
244
244
  suggestedBinding: {
245
245
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
246
246
  midPoint?: import("@excalidraw/math").GlobalPoint;
@@ -49,9 +49,9 @@ export declare const actionZoomIn: {
49
49
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
50
50
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
51
51
  isBindingEnabled: boolean;
52
+ boxSelectionMode: import("../types").BoxSelectionMode;
52
53
  bindingPreference: "enabled" | "disabled";
53
54
  isMidpointSnappingEnabled: boolean;
54
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
55
55
  suggestedBinding: {
56
56
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
57
57
  midPoint?: import("@excalidraw/math").GlobalPoint;
@@ -233,9 +233,9 @@ export declare const actionZoomOut: {
233
233
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
234
234
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
235
235
  isBindingEnabled: boolean;
236
+ boxSelectionMode: import("../types").BoxSelectionMode;
236
237
  bindingPreference: "enabled" | "disabled";
237
238
  isMidpointSnappingEnabled: boolean;
238
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
239
239
  suggestedBinding: {
240
240
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
241
241
  midPoint?: import("@excalidraw/math").GlobalPoint;
@@ -417,9 +417,9 @@ export declare const actionResetZoom: {
417
417
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
418
418
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
419
419
  isBindingEnabled: boolean;
420
+ boxSelectionMode: import("../types").BoxSelectionMode;
420
421
  bindingPreference: "enabled" | "disabled";
421
422
  isMidpointSnappingEnabled: boolean;
422
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
423
423
  suggestedBinding: {
424
424
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
425
425
  midPoint?: import("@excalidraw/math").GlobalPoint;
@@ -602,9 +602,9 @@ export declare const zoomToFitBounds: ({ bounds, appState, canvasOffsets, fitToV
602
602
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
603
603
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
604
604
  isBindingEnabled: boolean;
605
+ boxSelectionMode: import("../types").BoxSelectionMode;
605
606
  bindingPreference: "enabled" | "disabled";
606
607
  isMidpointSnappingEnabled: boolean;
607
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
608
608
  suggestedBinding: {
609
609
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
610
610
  midPoint?: import("@excalidraw/math").GlobalPoint;
@@ -783,9 +783,9 @@ export declare const zoomToFit: ({ canvasOffsets, targetElements, appState, fitT
783
783
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
784
784
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
785
785
  isBindingEnabled: boolean;
786
+ boxSelectionMode: import("../types").BoxSelectionMode;
786
787
  bindingPreference: "enabled" | "disabled";
787
788
  isMidpointSnappingEnabled: boolean;
788
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
789
789
  suggestedBinding: {
790
790
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
791
791
  midPoint?: import("@excalidraw/math").GlobalPoint;
@@ -961,9 +961,9 @@ export declare const actionZoomToFitSelectionInViewport: {
961
961
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
962
962
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
963
963
  isBindingEnabled: boolean;
964
+ boxSelectionMode: import("../types").BoxSelectionMode;
964
965
  bindingPreference: "enabled" | "disabled";
965
966
  isMidpointSnappingEnabled: boolean;
966
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
967
967
  suggestedBinding: {
968
968
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
969
969
  midPoint?: import("@excalidraw/math").GlobalPoint;
@@ -1143,9 +1143,9 @@ export declare const actionZoomToFitSelection: {
1143
1143
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
1144
1144
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1145
1145
  isBindingEnabled: boolean;
1146
+ boxSelectionMode: import("../types").BoxSelectionMode;
1146
1147
  bindingPreference: "enabled" | "disabled";
1147
1148
  isMidpointSnappingEnabled: boolean;
1148
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
1149
1149
  suggestedBinding: {
1150
1150
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
1151
1151
  midPoint?: import("@excalidraw/math").GlobalPoint;
@@ -1326,9 +1326,9 @@ export declare const actionZoomToFit: {
1326
1326
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
1327
1327
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1328
1328
  isBindingEnabled: boolean;
1329
+ boxSelectionMode: import("../types").BoxSelectionMode;
1329
1330
  bindingPreference: "enabled" | "disabled";
1330
1331
  isMidpointSnappingEnabled: boolean;
1331
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
1332
1332
  suggestedBinding: {
1333
1333
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
1334
1334
  midPoint?: import("@excalidraw/math").GlobalPoint;
@@ -1509,9 +1509,9 @@ export declare const actionToggleEraserTool: {
1509
1509
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
1510
1510
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1511
1511
  isBindingEnabled: boolean;
1512
+ boxSelectionMode: import("../types").BoxSelectionMode;
1512
1513
  bindingPreference: "enabled" | "disabled";
1513
1514
  isMidpointSnappingEnabled: boolean;
1514
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
1515
1515
  suggestedBinding: {
1516
1516
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
1517
1517
  midPoint?: import("@excalidraw/math").GlobalPoint;
@@ -1683,9 +1683,9 @@ export declare const actionToggleLassoTool: {
1683
1683
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
1684
1684
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1685
1685
  isBindingEnabled: boolean;
1686
+ boxSelectionMode: import("../types").BoxSelectionMode;
1686
1687
  bindingPreference: "enabled" | "disabled";
1687
1688
  isMidpointSnappingEnabled: boolean;
1688
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
1689
1689
  suggestedBinding: {
1690
1690
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
1691
1691
  midPoint?: import("@excalidraw/math").GlobalPoint;
@@ -1856,9 +1856,9 @@ export declare const actionToggleHandTool: {
1856
1856
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
1857
1857
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1858
1858
  isBindingEnabled: boolean;
1859
+ boxSelectionMode: import("../types").BoxSelectionMode;
1859
1860
  bindingPreference: "enabled" | "disabled";
1860
1861
  isMidpointSnappingEnabled: boolean;
1861
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
1862
1862
  suggestedBinding: {
1863
1863
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
1864
1864
  midPoint?: import("@excalidraw/math").GlobalPoint;
@@ -39,9 +39,9 @@ export declare const actionPaste: {
39
39
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
40
40
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
41
41
  isBindingEnabled: boolean;
42
+ boxSelectionMode: import("../types").BoxSelectionMode;
42
43
  bindingPreference: "enabled" | "disabled";
43
44
  isMidpointSnappingEnabled: boolean;
44
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
45
45
  suggestedBinding: {
46
46
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
47
47
  midPoint?: import("@excalidraw/math").GlobalPoint;
@@ -257,9 +257,9 @@ export declare const actionCopyAsPng: {
257
257
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
258
258
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
259
259
  isBindingEnabled: boolean;
260
+ boxSelectionMode: import("../types").BoxSelectionMode;
260
261
  bindingPreference: "enabled" | "disabled";
261
262
  isMidpointSnappingEnabled: boolean;
262
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
263
263
  suggestedBinding: {
264
264
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
265
265
  midPoint?: import("@excalidraw/math").GlobalPoint;
@@ -40,9 +40,9 @@ export declare const actionToggleCropEditor: {
40
40
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
41
41
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
42
42
  isBindingEnabled: boolean;
43
+ boxSelectionMode: import("../types").BoxSelectionMode;
43
44
  bindingPreference: "enabled" | "disabled";
44
45
  isMidpointSnappingEnabled: boolean;
45
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
46
46
  suggestedBinding: {
47
47
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
48
48
  midPoint?: import("@excalidraw/math").GlobalPoint;
@@ -41,9 +41,9 @@ export declare const actionDeleteSelected: {
41
41
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
42
42
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
43
43
  isBindingEnabled: boolean;
44
+ boxSelectionMode: import("../types").BoxSelectionMode;
44
45
  bindingPreference: "enabled" | "disabled";
45
46
  isMidpointSnappingEnabled: boolean;
46
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
47
47
  suggestedBinding: {
48
48
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
49
49
  midPoint?: import("@excalidraw/math").GlobalPoint;
@@ -242,9 +242,9 @@ export declare const actionDeleteSelected: {
242
242
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
243
243
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
244
244
  isBindingEnabled: boolean;
245
+ boxSelectionMode: import("../types").BoxSelectionMode;
245
246
  bindingPreference: "enabled" | "disabled";
246
247
  isMidpointSnappingEnabled: boolean;
247
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
248
248
  suggestedBinding: {
249
249
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
250
250
  midPoint?: import("@excalidraw/math").GlobalPoint;
@@ -416,9 +416,9 @@ export declare const actionDeleteSelected: {
416
416
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
417
417
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
418
418
  isBindingEnabled: boolean;
419
+ boxSelectionMode: import("../types").BoxSelectionMode;
419
420
  bindingPreference: "enabled" | "disabled";
420
421
  isMidpointSnappingEnabled: boolean;
421
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
422
422
  suggestedBinding: {
423
423
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
424
424
  midPoint?: import("@excalidraw/math").GlobalPoint;
@@ -0,0 +1,168 @@
1
+ import type { AppClassProperties, AppState } from "../types";
2
+ export declare const actionDeselect: {
3
+ name: "deselect";
4
+ label: string;
5
+ trackEvent: false;
6
+ perform: (_elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: AppClassProperties) => {
7
+ appState: {
8
+ activeEmbeddable: null;
9
+ activeTool: {
10
+ lastActiveTool: import("../types").ActiveTool | null;
11
+ locked: boolean;
12
+ fromSelection: boolean;
13
+ } & import("../types").ActiveTool;
14
+ selectedLinearElement: null;
15
+ selectionElement: null;
16
+ showHyperlinkPopup: false;
17
+ suggestedBinding: null;
18
+ frameToHighlight: null;
19
+ editingGroupId: AppState["editingGroupId"];
20
+ selectedElementIds: AppState["selectedElementIds"];
21
+ selectedGroupIds: AppState["selectedGroupIds"];
22
+ contextMenu: {
23
+ items: import("../components/ContextMenu").ContextMenuItems;
24
+ top: number;
25
+ left: number;
26
+ } | null;
27
+ showWelcomeScreen: boolean;
28
+ isLoading: boolean;
29
+ myocSimplifiedMode: boolean;
30
+ dontResizeLimitMBs: number;
31
+ hideMainMenus: boolean;
32
+ wheelZoomsOnDefault?: boolean;
33
+ arrangeConfiguration: {
34
+ algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
35
+ gap: number;
36
+ };
37
+ normaliseConfiguration: {
38
+ mode: import("../types").NormaliseMode;
39
+ metric: import("../types").NormaliseMetric;
40
+ };
41
+ errorMessage: React.ReactNode;
42
+ newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
43
+ resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
44
+ multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
45
+ isBindingEnabled: boolean;
46
+ boxSelectionMode: import("../types").BoxSelectionMode;
47
+ bindingPreference: "enabled" | "disabled";
48
+ isMidpointSnappingEnabled: boolean;
49
+ frameRendering: {
50
+ enabled: boolean;
51
+ name: boolean;
52
+ outline: boolean;
53
+ clip: boolean;
54
+ };
55
+ editingFrame: string | null;
56
+ elementsToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawElement>[] | null;
57
+ editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null;
58
+ preferredSelectionTool: {
59
+ type: "selection" | "lasso";
60
+ initialized: boolean;
61
+ };
62
+ penMode: boolean;
63
+ penDetected: boolean;
64
+ exportBackground: boolean;
65
+ exportEmbedScene: boolean;
66
+ exportWithDarkMode: boolean;
67
+ exportScale: number;
68
+ currentItemStrokeColor: string;
69
+ currentItemBackgroundColor: string;
70
+ currentItemFillStyle: import("@excalidraw/element/types").ExcalidrawElement["fillStyle"];
71
+ currentItemStrokeWidth: number;
72
+ currentItemStrokeStyle: import("@excalidraw/element/types").ExcalidrawElement["strokeStyle"];
73
+ currentItemRoughness: number;
74
+ currentItemOpacity: number;
75
+ currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
76
+ currentItemFontSize: number;
77
+ currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
78
+ currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
79
+ currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
80
+ currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
81
+ currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
82
+ currentItemArrowType: "sharp" | "round" | "elbow";
83
+ viewBackgroundColor: string;
84
+ scrollX: number;
85
+ scrollY: number;
86
+ cursorButton: "up" | "down";
87
+ scrolledOutside: boolean;
88
+ name: string | null;
89
+ isResizing: boolean;
90
+ isRotating: boolean;
91
+ zoom: import("../types").Zoom;
92
+ openMenu: "canvas" | null;
93
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
94
+ openSidebar: {
95
+ name: import("../types").SidebarName;
96
+ tab?: import("../types").SidebarTabName;
97
+ } | null;
98
+ openDialog: null | {
99
+ name: "imageExport" | "help" | "jsonExport";
100
+ } | {
101
+ name: "commandPalette";
102
+ } | {
103
+ name: "settings";
104
+ } | {
105
+ name: "elementLinkSelector";
106
+ sourceElementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
107
+ } | {
108
+ name: "charts";
109
+ data: import("../charts").Spreadsheet;
110
+ rawText: string;
111
+ };
112
+ defaultSidebarDockedPreference: boolean;
113
+ lastPointerDownWith: import("@excalidraw/element/types").PointerType;
114
+ hoveredElementIds: Readonly<{
115
+ [id: string]: true;
116
+ }>;
117
+ previousSelectedElementIds: {
118
+ [id: string]: true;
119
+ };
120
+ selectedElementsAreBeingDragged: boolean;
121
+ shouldCacheIgnoreZoom: boolean;
122
+ toast: {
123
+ message: React.ReactNode;
124
+ closable?: boolean;
125
+ duration?: number;
126
+ } | null;
127
+ zenModeEnabled: boolean;
128
+ theme: import("@excalidraw/element/types").Theme;
129
+ gridSize: number;
130
+ gridStep: number;
131
+ gridModeEnabled: boolean;
132
+ viewModeEnabled: boolean;
133
+ width: number;
134
+ height: number;
135
+ offsetTop: number;
136
+ offsetLeft: number;
137
+ fileHandle: FileSystemFileHandle | null;
138
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
139
+ stats: {
140
+ open: boolean;
141
+ panels: number;
142
+ };
143
+ snapLines: readonly import("../snapping").SnapLine[];
144
+ originSnapOffset: {
145
+ x: number;
146
+ y: number;
147
+ } | null;
148
+ objectsSnapModeEnabled: boolean;
149
+ userToFollow: import("../types").UserToFollow | null;
150
+ followedBy: Set<import("../types").SocketId>;
151
+ isCropping: boolean;
152
+ croppingElementId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
153
+ searchMatches: Readonly<{
154
+ focusedId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
155
+ matches: readonly import("../types").SearchMatch[];
156
+ }> | null;
157
+ activeLockedId: string | null;
158
+ lockedMultiSelections: {
159
+ [groupId: string]: true;
160
+ };
161
+ bindMode: import("@excalidraw/element/types").BindMode;
162
+ };
163
+ captureUpdate: "IMMEDIATELY";
164
+ };
165
+ keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent, appState: AppState, _: readonly import("@excalidraw/element/types").ExcalidrawElement[], app: AppClassProperties) => boolean;
166
+ } & {
167
+ keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent, appState: AppState, _: readonly import("@excalidraw/element/types").ExcalidrawElement[], app: AppClassProperties) => boolean) | undefined;
168
+ };
@@ -69,9 +69,9 @@ export declare const actionLinkToElement: {
69
69
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
70
70
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
71
71
  isBindingEnabled: boolean;
72
+ boxSelectionMode: import("../types").BoxSelectionMode;
72
73
  bindingPreference: "enabled" | "disabled";
73
74
  isMidpointSnappingEnabled: boolean;
74
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
75
75
  suggestedBinding: {
76
76
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
77
77
  midPoint?: import("@excalidraw/math").GlobalPoint;
@@ -51,9 +51,9 @@ export declare const actionToggleElementLock: {
51
51
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
52
52
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
53
53
  isBindingEnabled: boolean;
54
+ boxSelectionMode: import("../types").BoxSelectionMode;
54
55
  bindingPreference: "enabled" | "disabled";
55
56
  isMidpointSnappingEnabled: boolean;
56
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
57
57
  suggestedBinding: {
58
58
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
59
59
  midPoint?: import("@excalidraw/math").GlobalPoint;
@@ -230,9 +230,9 @@ export declare const actionUnlockAllElements: {
230
230
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
231
231
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
232
232
  isBindingEnabled: boolean;
233
+ boxSelectionMode: import("../types").BoxSelectionMode;
233
234
  bindingPreference: "enabled" | "disabled";
234
235
  isMidpointSnappingEnabled: boolean;
235
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
236
236
  suggestedBinding: {
237
237
  element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
238
238
  midPoint?: import("@excalidraw/math").GlobalPoint;