@zsviczian/excalidraw 0.17.1-obsidian-29 → 0.17.1-obsidian-30

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zsviczian/excalidraw",
3
- "version": "0.17.1-obsidian-29",
3
+ "version": "0.17.1-obsidian-30",
4
4
  "main": "main.js",
5
5
  "types": "types/excalidraw/index.d.ts",
6
6
  "files": [
@@ -8,7 +8,6 @@ import { LinearElementEditor } from "../element/linearElementEditor";
8
8
  import type { ExcalidrawElement, ExcalidrawLinearElement, NonDeleted, NonDeletedExcalidrawElement, ExcalidrawFrameLikeElement, ExcalidrawIframeElement, ExcalidrawEmbeddableElement, Ordered } from "../element/types";
9
9
  import { History } from "../history";
10
10
  import Scene from "../scene/Scene";
11
- import type { GeometricShape } from "../../utils/geometry/shape";
12
11
  import type { AppClassProperties, AppProps, AppState, ExcalidrawImperativeAPI, BinaryFiles, LibraryItems, SceneData, Device, FrameNameBoundsCache, SidebarName, SidebarTabName, ToolType, OnUserFollowedPayload } from "../types";
13
12
  import type { FileSystemHandle } from "../data/filesystem";
14
13
  import { Renderer } from "../scene/Renderer";
@@ -43,7 +42,6 @@ export declare const useExcalidrawElements: () => readonly NonDeletedExcalidrawE
43
42
  export declare const useExcalidrawAppState: () => AppState;
44
43
  export declare const useExcalidrawSetAppState: () => <K extends keyof AppState>(state: AppState | ((prevState: Readonly<AppState>, props: Readonly<any>) => AppState | Pick<AppState, K> | null) | Pick<AppState, K> | null, callback?: (() => void) | undefined) => void;
45
44
  export declare const useExcalidrawActionManager: () => ActionManager;
46
- export declare let hostPlugin: any;
47
45
  declare class App extends React.Component<AppProps, AppState> {
48
46
  canvas: AppClassProperties["canvas"];
49
47
  interactiveCanvas: AppClassProperties["interactiveCanvas"];
@@ -403,11 +401,6 @@ declare class App extends React.Component<AppProps, AppState> {
403
401
  private handleTextWysiwyg;
404
402
  private deselectElements;
405
403
  private getTextElementAtPosition;
406
- /**
407
- * get the pure geometric shape of an excalidraw element
408
- * which is then used for hit detection
409
- */
410
- getElementShape(element: ExcalidrawElement): GeometricShape;
411
404
  private getBoundTextShape;
412
405
  private getElementAtPosition;
413
406
  private getElementsAtPosition;
@@ -521,5 +514,4 @@ declare global {
521
514
  };
522
515
  }
523
516
  }
524
- export declare const createTestHook: () => void;
525
517
  export default App;
@@ -1,7 +1,11 @@
1
- import type { ElementsMap, ExcalidrawElement } from "../../element/types";
1
+ import type { ExcalidrawElement } from "../../element/types";
2
+ import type Scene from "../../scene/Scene";
3
+ import type { AppState } from "../../types";
2
4
  interface AngleProps {
3
5
  element: ExcalidrawElement;
4
- elementsMap: ElementsMap;
6
+ scene: Scene;
7
+ appState: AppState;
8
+ property: "angle";
5
9
  }
6
- declare const Angle: ({ element, elementsMap }: AngleProps) => import("react/jsx-runtime").JSX.Element;
10
+ declare const Angle: ({ element, scene, appState, property }: AngleProps) => import("react/jsx-runtime").JSX.Element;
7
11
  export default Angle;
@@ -1,8 +1,11 @@
1
- import type { ElementsMap, ExcalidrawElement } from "../../element/types";
1
+ import type { ExcalidrawElement } from "../../element/types";
2
+ import type Scene from "../../scene/Scene";
3
+ import type { AppState } from "../../types";
2
4
  interface DimensionDragInputProps {
3
5
  property: "width" | "height";
4
6
  element: ExcalidrawElement;
5
- elementsMap: ElementsMap;
7
+ scene: Scene;
8
+ appState: AppState;
6
9
  }
7
- declare const DimensionDragInput: ({ property, element, elementsMap, }: DimensionDragInputProps) => import("react/jsx-runtime").JSX.Element;
10
+ declare const DimensionDragInput: ({ property, element, scene, appState, }: DimensionDragInputProps) => import("react/jsx-runtime").JSX.Element;
8
11
  export default DimensionDragInput;
@@ -1,22 +1,31 @@
1
1
  import type { ElementsMap, ExcalidrawElement } from "../../element/types";
2
+ import type { StatsInputProperty } from "./utils";
3
+ import type Scene from "../../scene/Scene";
2
4
  import "./DragInput.scss";
3
- export type DragInputCallbackType = ({ accumulatedChange, instantChange, originalElements, originalElementsMap, shouldKeepAspectRatio, shouldChangeByStepSize, nextValue, }: {
5
+ import type { AppState } from "../../types";
6
+ export type DragInputCallbackType<P extends StatsInputProperty, E = ExcalidrawElement> = (props: {
4
7
  accumulatedChange: number;
5
8
  instantChange: number;
6
- originalElements: readonly ExcalidrawElement[];
9
+ originalElements: readonly E[];
7
10
  originalElementsMap: ElementsMap;
8
11
  shouldKeepAspectRatio: boolean;
9
12
  shouldChangeByStepSize: boolean;
10
13
  nextValue?: number;
14
+ property: P;
15
+ scene: Scene;
16
+ originalAppState: AppState;
11
17
  }) => void;
12
- interface StatsDragInputProps {
18
+ interface StatsDragInputProps<T extends StatsInputProperty, E = ExcalidrawElement> {
13
19
  label: string | React.ReactNode;
14
20
  icon?: React.ReactNode;
15
21
  value: number | "Mixed";
16
- elements: readonly ExcalidrawElement[];
22
+ elements: readonly E[];
17
23
  editable?: boolean;
18
24
  shouldKeepAspectRatio?: boolean;
19
- dragInputCallback: DragInputCallbackType;
25
+ dragInputCallback: DragInputCallbackType<T, E>;
26
+ property: T;
27
+ scene: Scene;
28
+ appState: AppState;
20
29
  }
21
- declare const StatsDragInput: ({ label, icon, dragInputCallback, value, elements, editable, shouldKeepAspectRatio, }: StatsDragInputProps) => import("react/jsx-runtime").JSX.Element;
30
+ declare const StatsDragInput: <T extends StatsInputProperty, E extends ExcalidrawElement = ExcalidrawElement>({ label, icon, dragInputCallback, value, elements, editable, shouldKeepAspectRatio, property, scene, appState, }: StatsDragInputProps<T, E>) => import("react/jsx-runtime").JSX.Element | null;
22
31
  export default StatsDragInput;
@@ -1,7 +1,11 @@
1
- import type { ElementsMap, ExcalidrawTextElement } from "../../element/types";
1
+ import type { ExcalidrawElement } from "../../element/types";
2
+ import type Scene from "../../scene/Scene";
3
+ import type { AppState } from "../../types";
2
4
  interface FontSizeProps {
3
- element: ExcalidrawTextElement;
4
- elementsMap: ElementsMap;
5
+ element: ExcalidrawElement;
6
+ scene: Scene;
7
+ appState: AppState;
8
+ property: "fontSize";
5
9
  }
6
- declare const FontSize: ({ element, elementsMap }: FontSizeProps) => import("react/jsx-runtime").JSX.Element;
10
+ declare const FontSize: ({ element, scene, appState, property }: FontSizeProps) => import("react/jsx-runtime").JSX.Element | null;
7
11
  export default FontSize;
@@ -1,9 +1,11 @@
1
- import type { ElementsMap, ExcalidrawElement } from "../../element/types";
1
+ import type { ExcalidrawElement } from "../../element/types";
2
2
  import type Scene from "../../scene/Scene";
3
+ import type { AppState } from "../../types";
3
4
  interface MultiAngleProps {
4
5
  elements: readonly ExcalidrawElement[];
5
- elementsMap: ElementsMap;
6
6
  scene: Scene;
7
+ appState: AppState;
8
+ property: "angle";
7
9
  }
8
- declare const MultiAngle: ({ elements, elementsMap, scene }: MultiAngleProps) => import("react/jsx-runtime").JSX.Element;
10
+ declare const MultiAngle: ({ elements, scene, appState, property, }: MultiAngleProps) => import("react/jsx-runtime").JSX.Element;
9
11
  export default MultiAngle;
@@ -1,12 +1,14 @@
1
- import type { ElementsMap, ExcalidrawElement } from "../../element/types";
1
+ import type { ExcalidrawElement, NonDeletedSceneElementsMap } from "../../element/types";
2
2
  import type Scene from "../../scene/Scene";
3
+ import type { AppState } from "../../types";
3
4
  import type { AtomicUnit } from "./utils";
4
5
  interface MultiDimensionProps {
5
6
  property: "width" | "height";
6
7
  elements: readonly ExcalidrawElement[];
7
- elementsMap: ElementsMap;
8
+ elementsMap: NonDeletedSceneElementsMap;
8
9
  atomicUnits: AtomicUnit[];
9
10
  scene: Scene;
11
+ appState: AppState;
10
12
  }
11
- declare const MultiDimension: ({ property, elements, elementsMap, atomicUnits, scene, }: MultiDimensionProps) => import("react/jsx-runtime").JSX.Element;
13
+ declare const MultiDimension: ({ property, elements, elementsMap, atomicUnits, scene, appState, }: MultiDimensionProps) => import("react/jsx-runtime").JSX.Element;
12
14
  export default MultiDimension;
@@ -1,9 +1,12 @@
1
- import type { ElementsMap, ExcalidrawElement } from "../../element/types";
1
+ import type { ExcalidrawElement, NonDeletedSceneElementsMap } from "../../element/types";
2
2
  import type Scene from "../../scene/Scene";
3
+ import type { AppState } from "../../types";
3
4
  interface MultiFontSizeProps {
4
5
  elements: readonly ExcalidrawElement[];
5
- elementsMap: ElementsMap;
6
6
  scene: Scene;
7
+ elementsMap: NonDeletedSceneElementsMap;
8
+ appState: AppState;
9
+ property: "fontSize";
7
10
  }
8
- declare const MultiFontSize: ({ elements, elementsMap, scene, }: MultiFontSizeProps) => import("react/jsx-runtime").JSX.Element;
11
+ declare const MultiFontSize: ({ elements, scene, appState, property, elementsMap, }: MultiFontSizeProps) => import("react/jsx-runtime").JSX.Element | null;
9
12
  export default MultiFontSize;
@@ -1,12 +1,14 @@
1
1
  import type { ElementsMap, ExcalidrawElement } from "../../element/types";
2
2
  import type Scene from "../../scene/Scene";
3
3
  import type { AtomicUnit } from "./utils";
4
+ import type { AppState } from "../../types";
4
5
  interface MultiPositionProps {
5
6
  property: "x" | "y";
6
7
  elements: readonly ExcalidrawElement[];
7
8
  elementsMap: ElementsMap;
8
9
  atomicUnits: AtomicUnit[];
9
10
  scene: Scene;
11
+ appState: AppState;
10
12
  }
11
- declare const MultiPosition: ({ property, elements, elementsMap, atomicUnits, scene, }: MultiPositionProps) => import("react/jsx-runtime").JSX.Element;
13
+ declare const MultiPosition: ({ property, elements, elementsMap, atomicUnits, scene, appState, }: MultiPositionProps) => import("react/jsx-runtime").JSX.Element;
12
14
  export default MultiPosition;
@@ -1,8 +1,12 @@
1
1
  import type { ElementsMap, ExcalidrawElement } from "../../element/types";
2
+ import type Scene from "../../scene/Scene";
3
+ import type { AppState } from "../../types";
2
4
  interface PositionProps {
3
5
  property: "x" | "y";
4
6
  element: ExcalidrawElement;
5
7
  elementsMap: ElementsMap;
8
+ scene: Scene;
9
+ appState: AppState;
6
10
  }
7
- declare const Position: ({ property, element, elementsMap }: PositionProps) => import("react/jsx-runtime").JSX.Element;
11
+ declare const Position: ({ property, element, elementsMap, scene, appState, }: PositionProps) => import("react/jsx-runtime").JSX.Element;
8
12
  export default Position;
@@ -1,4 +1,6 @@
1
- import type { ElementsMap, ExcalidrawElement, NonDeletedExcalidrawElement } from "../../element/types";
1
+ import type { ElementsMap, ExcalidrawElement, NonDeletedExcalidrawElement, NonDeletedSceneElementsMap } from "../../element/types";
2
+ import type { AppState } from "../../types";
3
+ export type StatsInputProperty = "x" | "y" | "width" | "height" | "angle" | "fontSize";
2
4
  export declare const SMALLEST_DELTA = 0.01;
3
5
  export declare const isPropertyEditable: (element: ExcalidrawElement, property: keyof ExcalidrawElement) => boolean;
4
6
  export declare const getStepSizedValue: (value: number, stepSize: number) => number;
@@ -11,5 +13,13 @@ export declare const newOrigin: (x1: number, y1: number, w1: number, h1: number,
11
13
  x: number;
12
14
  y: number;
13
15
  };
14
- export declare const resizeElement: (nextWidth: number, nextHeight: number, keepAspectRatio: boolean, latestElement: ExcalidrawElement, origElement: ExcalidrawElement, elementsMap: ElementsMap, originalElementsMap: Map<string, ExcalidrawElement>, shouldInformMutation?: boolean) => void;
15
- export declare const moveElement: (newTopLeftX: number, newTopLeftY: number, latestElement: ExcalidrawElement, originalElement: ExcalidrawElement, elementsMap: ElementsMap, originalElementsMap: ElementsMap, shouldInformMutation?: boolean) => void;
16
+ export declare const resizeElement: (nextWidth: number, nextHeight: number, keepAspectRatio: boolean, origElement: ExcalidrawElement, elementsMap: NonDeletedSceneElementsMap, shouldInformMutation?: boolean) => void;
17
+ export declare const moveElement: (newTopLeftX: number, newTopLeftY: number, originalElement: ExcalidrawElement, elementsMap: NonDeletedSceneElementsMap, originalElementsMap: ElementsMap, shouldInformMutation?: boolean) => void;
18
+ export declare const getAtomicUnits: (targetElements: readonly ExcalidrawElement[], appState: AppState) => AtomicUnit[];
19
+ export declare const updateBindings: (latestElement: ExcalidrawElement, elementsMap: NonDeletedSceneElementsMap, options?: {
20
+ simultaneouslyUpdated?: readonly ExcalidrawElement[];
21
+ newSize?: {
22
+ width: number;
23
+ height: number;
24
+ };
25
+ }) => void;
@@ -1,5 +1,6 @@
1
1
  import type { AppState } from "./types";
2
2
  export declare const resetCursor: (interactiveCanvas: HTMLCanvasElement | null) => void;
3
3
  export declare const setCursor: (interactiveCanvas: HTMLCanvasElement | null, cursor: string) => void;
4
+ export declare const clearEraserCanvasCache: () => void;
4
5
  export declare const setEraserCursor: (interactiveCanvas: HTMLCanvasElement | null, theme: AppState["theme"]) => void;
5
6
  export declare const setCursorForShape: (interactiveCanvas: HTMLCanvasElement | null, appState: Pick<AppState, "activeTool" | "theme">) => void;
@@ -1,5 +1,5 @@
1
1
  import type { ExcalidrawBindableElement, ExcalidrawElement, NonDeleted, ExcalidrawLinearElement, NonDeletedExcalidrawElement, ElementsMap, NonDeletedSceneElementsMap } from "./types";
2
- import type { AppClassProperties, AppState, Point } from "../types";
2
+ import type { AppState, Point } from "../types";
3
3
  import type { ElementUpdate } from "./mutateElement";
4
4
  export type SuggestedBinding = NonDeleted<ExcalidrawBindableElement> | SuggestedPointBinding;
5
5
  export type SuggestedPointBinding = [
@@ -10,18 +10,18 @@ export type SuggestedPointBinding = [
10
10
  export declare const shouldEnableBindingForPointerEvent: (event: React.PointerEvent<HTMLElement>) => boolean;
11
11
  export declare const isBindingEnabled: (appState: AppState) => boolean;
12
12
  export declare const bindOrUnbindLinearElement: (linearElement: NonDeleted<ExcalidrawLinearElement>, startBindingElement: ExcalidrawBindableElement | null | "keep", endBindingElement: ExcalidrawBindableElement | null | "keep", elementsMap: NonDeletedSceneElementsMap) => void;
13
- export declare const bindOrUnbindLinearElements: (selectedElements: NonDeleted<ExcalidrawLinearElement>[], app: AppClassProperties, isBindingEnabled: boolean, draggingPoints: readonly number[] | null) => void;
14
- export declare const getSuggestedBindingsForArrows: (selectedElements: NonDeleted<ExcalidrawElement>[], app: AppClassProperties) => SuggestedBinding[];
13
+ export declare const bindOrUnbindLinearElements: (selectedElements: NonDeleted<ExcalidrawLinearElement>[], elementsMap: NonDeletedSceneElementsMap, isBindingEnabled: boolean, draggingPoints: readonly number[] | null) => void;
14
+ export declare const getSuggestedBindingsForArrows: (selectedElements: NonDeleted<ExcalidrawElement>[], elementsMap: NonDeletedSceneElementsMap) => SuggestedBinding[];
15
15
  export declare const maybeBindLinearElement: (linearElement: NonDeleted<ExcalidrawLinearElement>, appState: AppState, pointerCoords: {
16
16
  x: number;
17
17
  y: number;
18
- }, app: AppClassProperties) => void;
18
+ }, elementsMap: NonDeletedSceneElementsMap) => void;
19
19
  export declare const bindLinearElement: (linearElement: NonDeleted<ExcalidrawLinearElement>, hoveredElement: ExcalidrawBindableElement, startOrEnd: "start" | "end", elementsMap: NonDeletedSceneElementsMap) => void;
20
20
  export declare const isLinearElementSimpleAndAlreadyBound: (linearElement: NonDeleted<ExcalidrawLinearElement>, alreadyBoundToId: ExcalidrawBindableElement["id"] | undefined, bindableElement: ExcalidrawBindableElement) => boolean;
21
21
  export declare const getHoveredElementForBinding: (pointerCoords: {
22
22
  x: number;
23
23
  y: number;
24
- }, app: AppClassProperties) => NonDeleted<ExcalidrawBindableElement> | null;
24
+ }, elementsMap: NonDeletedSceneElementsMap) => NonDeleted<ExcalidrawBindableElement> | null;
25
25
  export declare const updateBoundElements: (changedElement: NonDeletedExcalidrawElement, elementsMap: ElementsMap, options?: {
26
26
  simultaneouslyUpdated?: readonly ExcalidrawElement[];
27
27
  newSize?: {
@@ -2,7 +2,7 @@ import type { ExcalidrawElement } from "./types";
2
2
  import type { Mutable } from "../utility-types";
3
3
  export type ElementUpdate<TElement extends ExcalidrawElement> = Omit<Partial<TElement>, "id" | "version" | "versionNonce" | "updated">;
4
4
  export declare const mutateElement: <TElement extends Mutable<ExcalidrawElement>>(element: TElement, updates: ElementUpdate<TElement>, informMutation?: boolean) => TElement;
5
- export declare const newElementWith: <TElement extends ExcalidrawElement>(element: TElement, updates: ElementUpdate<TElement>, force?: boolean) => TElement;
5
+ export declare const newElementWith: <TElement extends ExcalidrawElement>(element: TElement, updates: ElementUpdate<TElement>) => TElement;
6
6
  /**
7
7
  * Mutates element, bumping `version`, `versionNonce`, and `updated`.
8
8
  *
@@ -21,7 +21,8 @@ getDefaultLineHeight, //zsviczian
21
21
  wrapText, //zsviczian
22
22
  getFontString, //zsviczian
23
23
  getBoundTextMaxWidth, //zsviczian
24
- mermaidToExcalidraw, } from "../utils/export";
24
+ mermaidToExcalidraw, //zsviczian
25
+ destroyObsidianUtils, } from "../utils/export";
25
26
  export { refreshTextDimensions, } from "./element/newElement";
26
27
  export { getContainerElement, } from "./element/textElement";
27
28
  export { serializeAsJSON, serializeLibraryAsJSON } from "./data/json";
@@ -1,5 +1,8 @@
1
- export declare const getAreaLimit: () => any;
2
- export declare const getWidthHeightLimit: () => any;
3
- export declare const isExcaliBrainView: () => any;
4
- export declare const getExcalidrawContentEl: () => HTMLElement;
5
- export declare const hideFreedrawPenmodeCursor: () => boolean;
1
+ export declare let hostPlugin: any;
2
+ export declare function destroyObsidianUtils(): void;
3
+ export declare function initializeObsidianUtils(obsidianPlugin: any): void;
4
+ export declare function getAreaLimit(): any;
5
+ export declare function getWidthHeightLimit(): any;
6
+ export declare function isExcaliBrainView(): any;
7
+ export declare function getExcalidrawContentEl(): HTMLElement;
8
+ export declare function hideFreedrawPenmodeCursor(): boolean;
@@ -1,6 +1,6 @@
1
1
  import type { RoughCanvas } from "roughjs/bin/canvas";
2
2
  import type { Drawable } from "roughjs/bin/core";
3
- import type { ExcalidrawElement, ExcalidrawTextElement, NonDeletedElementsMap, NonDeletedExcalidrawElement, NonDeletedSceneElementsMap } from "../element/types";
3
+ import type { ExcalidrawElement, NonDeletedElementsMap, NonDeletedExcalidrawElement, NonDeletedSceneElementsMap } from "../element/types";
4
4
  import type { AppClassProperties, AppState, EmbedsValidationStatus, ElementsPendingErasure, InteractiveCanvasAppState, StaticCanvasAppState, SocketId, UserIdleState, Device } from "../types";
5
5
  import type { MakeBrand } from "../utility-types";
6
6
  export type RenderableElementsMap = NonDeletedElementsMap & MakeBrand<"RenderableElementsMap">;
@@ -68,9 +68,6 @@ export type SceneScroll = {
68
68
  scrollX: number;
69
69
  scrollY: number;
70
70
  };
71
- export interface Scene {
72
- elements: ExcalidrawTextElement[];
73
- }
74
71
  export type ExportType = "png" | "clipboard" | "clipboard-svg" | "backend" | "svg";
75
72
  export type ScrollBars = {
76
73
  horizontal: {
@@ -1,3 +1,5 @@
1
+ import { type GeometricShape } from "../utils/geometry/shape";
2
+ import type { ElementsMap, ExcalidrawElement } from "./element/types";
1
3
  export declare const SHAPES: readonly [{
2
4
  readonly icon: import("react/jsx-runtime").JSX.Element;
3
5
  readonly value: "selection";
@@ -60,3 +62,8 @@ export declare const SHAPES: readonly [{
60
62
  readonly fillable: false;
61
63
  }];
62
64
  export declare const findShapeByKey: (key: string) => "text" | "image" | "selection" | "rectangle" | "diamond" | "ellipse" | "arrow" | "line" | "freedraw" | "eraser" | null;
65
+ /**
66
+ * get the pure geometric shape of an excalidraw element
67
+ * which is then used for hit detection
68
+ */
69
+ export declare const getElementShape: (element: ExcalidrawElement, elementsMap: ElementsMap) => GeometricShape;
@@ -387,7 +387,7 @@ export type OnUserFollowedPayload = {
387
387
  };
388
388
  export interface ExcalidrawProps {
389
389
  onChange?: (elements: readonly OrderedExcalidrawElement[], appState: AppState, files: BinaryFiles) => void;
390
- initialData?: MaybePromise<ExcalidrawInitialDataState | null>;
390
+ initialData?: (() => MaybePromise<ExcalidrawInitialDataState | null>) | MaybePromise<ExcalidrawInitialDataState | null>;
391
391
  excalidrawAPI?: (api: ExcalidrawImperativeAPI) => void;
392
392
  isCollaborating?: boolean;
393
393
  onPointerUpdate?: (payload: {
@@ -442,7 +442,7 @@ export interface ExcalidrawProps {
442
442
  renderMermaid?: boolean;
443
443
  onContextMenu?: (element: readonly NonDeletedExcalidrawElement[], appState: AppState, onClose: (callback?: () => void) => void) => JSX.Element | null;
444
444
  aiEnabled?: boolean;
445
- obsidianHostPlugin?: any;
445
+ obsidianHostPlugin: WeakRef<any>;
446
446
  }
447
447
  export type SceneData = {
448
448
  elements?: ImportedDataState["elements"];
@@ -522,7 +522,6 @@ export type AppClassProperties = {
522
522
  setOpenDialog: App["setOpenDialog"];
523
523
  insertEmbeddableElement: App["insertEmbeddableElement"];
524
524
  onMagicframeToolSelect: App["onMagicframeToolSelect"];
525
- getElementShape: App["getElementShape"];
526
525
  getName: App["getName"];
527
526
  };
528
527
  export type PointerDownState = Readonly<{
@@ -39,3 +39,4 @@ export { measureText, wrapText, getDefaultLineHeight, } from "../excalidraw/elem
39
39
  export { getFontString } from "../excalidraw/utils";
40
40
  export { getBoundTextMaxWidth } from "../excalidraw/element/textElement";
41
41
  export { mermaidToExcalidraw } from "../excalidraw/components/TTDDialog/MermaidToExcalidraw";
42
+ export { destroyObsidianUtils } from "../excalidraw/obsidianUtils";