import type { Mutable } from "@excalidraw/common/utility-types"; import type { ElementsMap, ExcalidrawElement } from "./types"; export type ElementUpdate = Omit, "id" | "updated">; /** * This function tracks updates of text elements for the purposes for collaboration. * The version is used to compare updates when more than one user is working in * the same drawing. * * WARNING: this won't trigger the component to update, so if you need to trigger component update, * use `scene.mutateElement` or `ExcalidrawImperativeAPI.mutateElement` instead. */ export declare const mutateElement: >(element: TElement, elementsMap: ElementsMap, updates: ElementUpdate, options?: { isDragging?: boolean; isBindingEnabled?: boolean; isMidpointSnappingEnabled?: boolean; }) => TElement; export declare const newElementWith: (element: TElement, updates: ElementUpdate, /** pass `true` to always regenerate */ force?: boolean) => TElement; /** * Mutates element, bumping `version`, `versionNonce`, and `updated`. * * NOTE: does not trigger re-render. */ export declare const bumpVersion: >(element: T, version?: ExcalidrawElement["version"]) => T;