import { type SceneBounds } from "@excalidraw/element"; import type { ExcalidrawElement } from "@excalidraw/element/types"; import type { AppClassProperties, AppState, Offsets } from "../types"; export declare const actionChangeViewBackgroundColor: import("./types").Action> & { keyTest?: ((event: React.KeyboardEvent | KeyboardEvent, appState: AppState, elements: readonly ExcalidrawElement[], app: AppClassProperties) => boolean) | undefined; }; export declare const actionClearCanvas: { name: "clearCanvas"; label: string; icon: import("react/jsx-runtime").JSX.Element; trackEvent: { category: "canvas"; }; predicate: (elements: readonly ExcalidrawElement[], appState: AppState, props: import("../types").ExcalidrawProps, app: AppClassProperties) => boolean; perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly, _: unknown, app: AppClassProperties) => { elements: import("@excalidraw/element/types").OrderedExcalidrawElement[]; appState: { files: {}; theme: import("@excalidraw/element/types").Theme; penMode: boolean; penDetected: boolean; exportBackground: boolean; exportEmbedScene: boolean; gridSize: number; gridStep: number; gridModeEnabled: boolean; stats: { open: boolean; panels: number; }; activeTool: { lastActiveTool: import("../types").ActiveTool | null; locked: boolean; fromSelection: boolean; } & import("../types").ActiveTool; colorPalette: { canvasBackground: import("@excalidraw/common").ColorPaletteCustom; elementBackground: import("@excalidraw/common").ColorPaletteCustom; elementStroke: import("@excalidraw/common").ColorPaletteCustom; topPicks: { canvasBackground: [string, string, string, string, string]; elementStroke: [string, string, string, string, string]; elementBackground: [string, string, string, string, string]; }; } | undefined; allowPinchZoom: boolean | undefined; allowWheelZoom: boolean | undefined; disableContextMenu: boolean; pinnedScripts: string[] | undefined; customPens: any[] | undefined; viewBackgroundColor: string; frameRendering: { enabled: boolean; name: boolean; outline: boolean; clip: boolean; markerName: boolean; markerEnabled: boolean; }; frameColor: { stroke: string; fill: string; nameColor: string; }; name: string | null; zoom: import("../types").Zoom; scrollX: number; scrollY: number; viewModeEnabled: boolean; openDialog: null | { name: "imageExport" | "help" | "jsonExport"; } | { name: "ttd"; tab: "text-to-diagram" | "mermaid"; } | { name: "commandPalette"; } | { name: "settings"; } | { name: "elementLinkSelector"; sourceElementId: ExcalidrawElement["id"]; } | { name: "charts"; data: import("../charts").Spreadsheet; rawText: string; }; editingGroupId: import("@excalidraw/element/types").GroupId | null; selectedElementIds: Readonly<{ [id: string]: true; }>; frameToHighlight: import("@excalidraw/element/types").NonDeleted | null; activeEmbeddable: { element: import("@excalidraw/element/types").NonDeletedExcalidrawElement; state: "hover" | "active"; } | null; selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null; selectedGroupIds: { [groupId: string]: boolean; }; selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null; multiElement: import("@excalidraw/element/types").NonDeleted | null; newElement: import("@excalidraw/element/types").NonDeleted | null; isBindingEnabled: boolean; isMidpointSnappingEnabled: boolean; suggestedBinding: { element: import("@excalidraw/element/types").NonDeleted; midPoint?: import("@excalidraw/math").GlobalPoint; } | null; isRotating: boolean; elementsToHighlight: import("@excalidraw/element/types").NonDeleted[] | null; collaborators: Map; snapLines: readonly import("../snapping").SnapLine[]; zenModeEnabled: boolean; editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null; gridColor: { Bold: string; Regular: string; }; gridDirection: { horizontal: boolean; vertical: boolean; }; highlightSearchResult: boolean; isCropping: boolean; croppingElementId: ExcalidrawElement["id"] | null; searchMatches: Readonly<{ focusedId: ExcalidrawElement["id"] | null; matches: readonly import("../types").SearchMatch[]; }> | null; activeLockedId: string | null; hoveredElementIds: Readonly<{ [id: string]: true; }>; shouldCacheIgnoreZoom: boolean; exportScale: number; currentItemArrowType: "sharp" | "round" | "elbow"; bindMode: import("@excalidraw/element/types").BindMode; contextMenu: { items: import("../components/ContextMenu").ContextMenuItems; top: number; left: number; } | null; showWelcomeScreen: boolean; isLoading: boolean; errorMessage: React.ReactNode; resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null; boxSelectionMode: import("../types").BoxSelectionMode; bindingPreference: "enabled" | "disabled"; startBoundElement: import("@excalidraw/element/types").NonDeleted | null; editingFrame: string | null; preferredSelectionTool: { type: "selection" | "lasso"; initialized: boolean; }; exportWithDarkMode: boolean; currentItemStrokeColor: string; currentItemBackgroundColor: string; currentItemFillStyle: ExcalidrawElement["fillStyle"]; currentItemStrokeWidth: number; currentItemStrokeStyle: ExcalidrawElement["strokeStyle"]; currentItemRoughness: number; currentItemOpacity: number; currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues; currentItemFontSize: number; currentItemTextAlign: import("@excalidraw/element/types").TextAlign; currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null; currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null; currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null; currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness; currentItemFrameRole: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["frameRole"] | null; cursorButton: "up" | "down"; scrolledOutside: boolean; isResizing: boolean; openMenu: "canvas" | "shape" | null; openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null; openSidebar: { name: import("../types").SidebarName; tab?: import("../types").SidebarTabName; } | null; defaultSidebarDockedPreference: boolean; lastPointerDownWith: import("@excalidraw/element/types").PointerType; previousSelectedElementIds: { [id: string]: true; }; selectedElementsAreBeingDragged: boolean; toast: { message: React.ReactNode; closable?: boolean; duration?: number; } | null; fileHandle: FileSystemFileHandle | null; showHyperlinkPopup: false | "info" | "editor"; linkOpacity: number; currentStrokeOptions?: any; resetCustomPen?: any; dynamicStyle: { [x: string]: string; }; originSnapOffset: { x: number; y: number; } | null; objectsSnapModeEnabled: boolean; userToFollow: import("../types").UserToFollow | null; followedBy: Set; lockedMultiSelections: { [groupId: string]: true; }; }; captureUpdate: "IMMEDIATELY"; }; } & { keyTest?: undefined; }; export declare const actionZoomIn: { name: "zoomIn"; label: string; viewMode: true; icon: import("react/jsx-runtime").JSX.Element; trackEvent: { category: "canvas"; }; perform: (_elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly, _: unknown, app: AppClassProperties) => { appState: { userToFollow: null; scrollX: number; scrollY: number; zoom: { value: import("../types").NormalizedZoomValue; }; contextMenu: { items: import("../components/ContextMenu").ContextMenuItems; top: number; left: number; } | null; showWelcomeScreen: boolean; isLoading: boolean; errorMessage: React.ReactNode; activeEmbeddable: { element: import("@excalidraw/element/types").NonDeletedExcalidrawElement; state: "hover" | "active"; } | null; newElement: import("@excalidraw/element/types").NonDeleted | null; resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null; multiElement: import("@excalidraw/element/types").NonDeleted | null; selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null; isBindingEnabled: boolean; boxSelectionMode: import("../types").BoxSelectionMode; bindingPreference: "enabled" | "disabled"; isMidpointSnappingEnabled: boolean; startBoundElement: import("@excalidraw/element/types").NonDeleted | null; suggestedBinding: { element: import("@excalidraw/element/types").NonDeleted; midPoint?: import("@excalidraw/math").GlobalPoint; } | null; frameToHighlight: import("@excalidraw/element/types").NonDeleted | null; frameRendering: { enabled: boolean; name: boolean; outline: boolean; clip: boolean; markerName: boolean; markerEnabled: boolean; }; editingFrame: string | null; elementsToHighlight: import("@excalidraw/element/types").NonDeleted[] | null; editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null; activeTool: { lastActiveTool: import("../types").ActiveTool | null; locked: boolean; fromSelection: boolean; } & import("../types").ActiveTool; preferredSelectionTool: { type: "selection" | "lasso"; initialized: boolean; }; penMode: boolean; penDetected: boolean; exportBackground: boolean; exportEmbedScene: boolean; exportWithDarkMode: boolean; exportScale: number; currentItemStrokeColor: string; currentItemBackgroundColor: string; currentItemFillStyle: ExcalidrawElement["fillStyle"]; currentItemStrokeWidth: number; currentItemStrokeStyle: ExcalidrawElement["strokeStyle"]; currentItemRoughness: number; currentItemOpacity: number; currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues; currentItemFontSize: number; currentItemTextAlign: import("@excalidraw/element/types").TextAlign; currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null; currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null; currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null; currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness; currentItemArrowType: "sharp" | "round" | "elbow"; currentItemFrameRole: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["frameRole"] | null; viewBackgroundColor: string; cursorButton: "up" | "down"; scrolledOutside: boolean; name: string | null; isResizing: boolean; isRotating: boolean; openMenu: "canvas" | "shape" | null; openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null; openSidebar: { name: import("../types").SidebarName; tab?: import("../types").SidebarTabName; } | null; openDialog: null | { name: "imageExport" | "help" | "jsonExport"; } | { name: "ttd"; tab: "text-to-diagram" | "mermaid"; } | { name: "commandPalette"; } | { name: "settings"; } | { name: "elementLinkSelector"; sourceElementId: ExcalidrawElement["id"]; } | { name: "charts"; data: import("../charts").Spreadsheet; rawText: string; }; defaultSidebarDockedPreference: boolean; lastPointerDownWith: import("@excalidraw/element/types").PointerType; selectedElementIds: Readonly<{ [id: string]: true; }>; hoveredElementIds: Readonly<{ [id: string]: true; }>; previousSelectedElementIds: { [id: string]: true; }; selectedElementsAreBeingDragged: boolean; shouldCacheIgnoreZoom: boolean; toast: { message: React.ReactNode; closable?: boolean; duration?: number; } | null; zenModeEnabled: boolean; theme: import("@excalidraw/element/types").Theme; gridSize: number; gridStep: number; gridModeEnabled: boolean; viewModeEnabled: boolean; selectedGroupIds: { [groupId: string]: boolean; }; editingGroupId: import("@excalidraw/element/types").GroupId | null; width: number; height: number; offsetTop: number; offsetLeft: number; fileHandle: FileSystemFileHandle | null; collaborators: Map; stats: { open: boolean; panels: number; }; showHyperlinkPopup: false | "info" | "editor"; linkOpacity: number; colorPalette?: { canvasBackground: import("@excalidraw/common").ColorPaletteCustom; elementBackground: import("@excalidraw/common").ColorPaletteCustom; elementStroke: import("@excalidraw/common").ColorPaletteCustom; topPicks: { canvasBackground: [string, string, string, string, string]; elementStroke: [string, string, string, string, string]; elementBackground: [string, string, string, string, string]; }; }; allowWheelZoom?: boolean; allowPinchZoom?: boolean; disableContextMenu: boolean; pinnedScripts?: string[]; customPens?: any[]; currentStrokeOptions?: any; resetCustomPen?: any; gridColor: { Bold: string; Regular: string; }; gridDirection: { horizontal: boolean; vertical: boolean; }; highlightSearchResult: boolean; dynamicStyle: { [x: string]: string; }; frameColor: { stroke: string; fill: string; nameColor: string; }; selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null; snapLines: readonly import("../snapping").SnapLine[]; originSnapOffset: { x: number; y: number; } | null; objectsSnapModeEnabled: boolean; followedBy: Set; isCropping: boolean; croppingElementId: ExcalidrawElement["id"] | null; searchMatches: Readonly<{ focusedId: ExcalidrawElement["id"] | null; matches: readonly import("../types").SearchMatch[]; }> | null; activeLockedId: string | null; lockedMultiSelections: { [groupId: string]: true; }; bindMode: import("@excalidraw/element/types").BindMode; }; captureUpdate: "EVENTUALLY"; }; PanelComponent: ({ updateData, appState }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element; keyTest: (event: KeyboardEvent | import("react").KeyboardEvent) => boolean; } & { keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent) => boolean) | undefined; }; export declare const actionZoomOut: { name: "zoomOut"; label: string; icon: import("react/jsx-runtime").JSX.Element; viewMode: true; trackEvent: { category: "canvas"; }; perform: (_elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly, _: unknown, app: AppClassProperties) => { appState: { userToFollow: null; scrollX: number; scrollY: number; zoom: { value: import("../types").NormalizedZoomValue; }; contextMenu: { items: import("../components/ContextMenu").ContextMenuItems; top: number; left: number; } | null; showWelcomeScreen: boolean; isLoading: boolean; errorMessage: React.ReactNode; activeEmbeddable: { element: import("@excalidraw/element/types").NonDeletedExcalidrawElement; state: "hover" | "active"; } | null; newElement: import("@excalidraw/element/types").NonDeleted | null; resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null; multiElement: import("@excalidraw/element/types").NonDeleted | null; selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null; isBindingEnabled: boolean; boxSelectionMode: import("../types").BoxSelectionMode; bindingPreference: "enabled" | "disabled"; isMidpointSnappingEnabled: boolean; startBoundElement: import("@excalidraw/element/types").NonDeleted | null; suggestedBinding: { element: import("@excalidraw/element/types").NonDeleted; midPoint?: import("@excalidraw/math").GlobalPoint; } | null; frameToHighlight: import("@excalidraw/element/types").NonDeleted | null; frameRendering: { enabled: boolean; name: boolean; outline: boolean; clip: boolean; markerName: boolean; markerEnabled: boolean; }; editingFrame: string | null; elementsToHighlight: import("@excalidraw/element/types").NonDeleted[] | null; editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null; activeTool: { lastActiveTool: import("../types").ActiveTool | null; locked: boolean; fromSelection: boolean; } & import("../types").ActiveTool; preferredSelectionTool: { type: "selection" | "lasso"; initialized: boolean; }; penMode: boolean; penDetected: boolean; exportBackground: boolean; exportEmbedScene: boolean; exportWithDarkMode: boolean; exportScale: number; currentItemStrokeColor: string; currentItemBackgroundColor: string; currentItemFillStyle: ExcalidrawElement["fillStyle"]; currentItemStrokeWidth: number; currentItemStrokeStyle: ExcalidrawElement["strokeStyle"]; currentItemRoughness: number; currentItemOpacity: number; currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues; currentItemFontSize: number; currentItemTextAlign: import("@excalidraw/element/types").TextAlign; currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null; currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null; currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null; currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness; currentItemArrowType: "sharp" | "round" | "elbow"; currentItemFrameRole: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["frameRole"] | null; viewBackgroundColor: string; cursorButton: "up" | "down"; scrolledOutside: boolean; name: string | null; isResizing: boolean; isRotating: boolean; openMenu: "canvas" | "shape" | null; openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null; openSidebar: { name: import("../types").SidebarName; tab?: import("../types").SidebarTabName; } | null; openDialog: null | { name: "imageExport" | "help" | "jsonExport"; } | { name: "ttd"; tab: "text-to-diagram" | "mermaid"; } | { name: "commandPalette"; } | { name: "settings"; } | { name: "elementLinkSelector"; sourceElementId: ExcalidrawElement["id"]; } | { name: "charts"; data: import("../charts").Spreadsheet; rawText: string; }; defaultSidebarDockedPreference: boolean; lastPointerDownWith: import("@excalidraw/element/types").PointerType; selectedElementIds: Readonly<{ [id: string]: true; }>; hoveredElementIds: Readonly<{ [id: string]: true; }>; previousSelectedElementIds: { [id: string]: true; }; selectedElementsAreBeingDragged: boolean; shouldCacheIgnoreZoom: boolean; toast: { message: React.ReactNode; closable?: boolean; duration?: number; } | null; zenModeEnabled: boolean; theme: import("@excalidraw/element/types").Theme; gridSize: number; gridStep: number; gridModeEnabled: boolean; viewModeEnabled: boolean; selectedGroupIds: { [groupId: string]: boolean; }; editingGroupId: import("@excalidraw/element/types").GroupId | null; width: number; height: number; offsetTop: number; offsetLeft: number; fileHandle: FileSystemFileHandle | null; collaborators: Map; stats: { open: boolean; panels: number; }; showHyperlinkPopup: false | "info" | "editor"; linkOpacity: number; colorPalette?: { canvasBackground: import("@excalidraw/common").ColorPaletteCustom; elementBackground: import("@excalidraw/common").ColorPaletteCustom; elementStroke: import("@excalidraw/common").ColorPaletteCustom; topPicks: { canvasBackground: [string, string, string, string, string]; elementStroke: [string, string, string, string, string]; elementBackground: [string, string, string, string, string]; }; }; allowWheelZoom?: boolean; allowPinchZoom?: boolean; disableContextMenu: boolean; pinnedScripts?: string[]; customPens?: any[]; currentStrokeOptions?: any; resetCustomPen?: any; gridColor: { Bold: string; Regular: string; }; gridDirection: { horizontal: boolean; vertical: boolean; }; highlightSearchResult: boolean; dynamicStyle: { [x: string]: string; }; frameColor: { stroke: string; fill: string; nameColor: string; }; selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null; snapLines: readonly import("../snapping").SnapLine[]; originSnapOffset: { x: number; y: number; } | null; objectsSnapModeEnabled: boolean; followedBy: Set; isCropping: boolean; croppingElementId: ExcalidrawElement["id"] | null; searchMatches: Readonly<{ focusedId: ExcalidrawElement["id"] | null; matches: readonly import("../types").SearchMatch[]; }> | null; activeLockedId: string | null; lockedMultiSelections: { [groupId: string]: true; }; bindMode: import("@excalidraw/element/types").BindMode; }; captureUpdate: "EVENTUALLY"; }; PanelComponent: ({ updateData, appState }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element; keyTest: (event: KeyboardEvent | import("react").KeyboardEvent) => boolean; } & { keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent) => boolean) | undefined; }; export declare const actionResetZoom: { name: "resetZoom"; label: string; icon: import("react/jsx-runtime").JSX.Element; viewMode: true; trackEvent: { category: "canvas"; }; perform: (_elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly, _: unknown, app: AppClassProperties) => { appState: { userToFollow: null; scrollX: number; scrollY: number; zoom: { value: import("../types").NormalizedZoomValue; }; contextMenu: { items: import("../components/ContextMenu").ContextMenuItems; top: number; left: number; } | null; showWelcomeScreen: boolean; isLoading: boolean; errorMessage: React.ReactNode; activeEmbeddable: { element: import("@excalidraw/element/types").NonDeletedExcalidrawElement; state: "hover" | "active"; } | null; newElement: import("@excalidraw/element/types").NonDeleted | null; resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null; multiElement: import("@excalidraw/element/types").NonDeleted | null; selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null; isBindingEnabled: boolean; boxSelectionMode: import("../types").BoxSelectionMode; bindingPreference: "enabled" | "disabled"; isMidpointSnappingEnabled: boolean; startBoundElement: import("@excalidraw/element/types").NonDeleted | null; suggestedBinding: { element: import("@excalidraw/element/types").NonDeleted; midPoint?: import("@excalidraw/math").GlobalPoint; } | null; frameToHighlight: import("@excalidraw/element/types").NonDeleted | null; frameRendering: { enabled: boolean; name: boolean; outline: boolean; clip: boolean; markerName: boolean; markerEnabled: boolean; }; editingFrame: string | null; elementsToHighlight: import("@excalidraw/element/types").NonDeleted[] | null; editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null; activeTool: { lastActiveTool: import("../types").ActiveTool | null; locked: boolean; fromSelection: boolean; } & import("../types").ActiveTool; preferredSelectionTool: { type: "selection" | "lasso"; initialized: boolean; }; penMode: boolean; penDetected: boolean; exportBackground: boolean; exportEmbedScene: boolean; exportWithDarkMode: boolean; exportScale: number; currentItemStrokeColor: string; currentItemBackgroundColor: string; currentItemFillStyle: ExcalidrawElement["fillStyle"]; currentItemStrokeWidth: number; currentItemStrokeStyle: ExcalidrawElement["strokeStyle"]; currentItemRoughness: number; currentItemOpacity: number; currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues; currentItemFontSize: number; currentItemTextAlign: import("@excalidraw/element/types").TextAlign; currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null; currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null; currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null; currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness; currentItemArrowType: "sharp" | "round" | "elbow"; currentItemFrameRole: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["frameRole"] | null; viewBackgroundColor: string; cursorButton: "up" | "down"; scrolledOutside: boolean; name: string | null; isResizing: boolean; isRotating: boolean; openMenu: "canvas" | "shape" | null; openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null; openSidebar: { name: import("../types").SidebarName; tab?: import("../types").SidebarTabName; } | null; openDialog: null | { name: "imageExport" | "help" | "jsonExport"; } | { name: "ttd"; tab: "text-to-diagram" | "mermaid"; } | { name: "commandPalette"; } | { name: "settings"; } | { name: "elementLinkSelector"; sourceElementId: ExcalidrawElement["id"]; } | { name: "charts"; data: import("../charts").Spreadsheet; rawText: string; }; defaultSidebarDockedPreference: boolean; lastPointerDownWith: import("@excalidraw/element/types").PointerType; selectedElementIds: Readonly<{ [id: string]: true; }>; hoveredElementIds: Readonly<{ [id: string]: true; }>; previousSelectedElementIds: { [id: string]: true; }; selectedElementsAreBeingDragged: boolean; shouldCacheIgnoreZoom: boolean; toast: { message: React.ReactNode; closable?: boolean; duration?: number; } | null; zenModeEnabled: boolean; theme: import("@excalidraw/element/types").Theme; gridSize: number; gridStep: number; gridModeEnabled: boolean; viewModeEnabled: boolean; selectedGroupIds: { [groupId: string]: boolean; }; editingGroupId: import("@excalidraw/element/types").GroupId | null; width: number; height: number; offsetTop: number; offsetLeft: number; fileHandle: FileSystemFileHandle | null; collaborators: Map; stats: { open: boolean; panels: number; }; showHyperlinkPopup: false | "info" | "editor"; linkOpacity: number; colorPalette?: { canvasBackground: import("@excalidraw/common").ColorPaletteCustom; elementBackground: import("@excalidraw/common").ColorPaletteCustom; elementStroke: import("@excalidraw/common").ColorPaletteCustom; topPicks: { canvasBackground: [string, string, string, string, string]; elementStroke: [string, string, string, string, string]; elementBackground: [string, string, string, string, string]; }; }; allowWheelZoom?: boolean; allowPinchZoom?: boolean; disableContextMenu: boolean; pinnedScripts?: string[]; customPens?: any[]; currentStrokeOptions?: any; resetCustomPen?: any; gridColor: { Bold: string; Regular: string; }; gridDirection: { horizontal: boolean; vertical: boolean; }; highlightSearchResult: boolean; dynamicStyle: { [x: string]: string; }; frameColor: { stroke: string; fill: string; nameColor: string; }; selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null; snapLines: readonly import("../snapping").SnapLine[]; originSnapOffset: { x: number; y: number; } | null; objectsSnapModeEnabled: boolean; followedBy: Set; isCropping: boolean; croppingElementId: ExcalidrawElement["id"] | null; searchMatches: Readonly<{ focusedId: ExcalidrawElement["id"] | null; matches: readonly import("../types").SearchMatch[]; }> | null; activeLockedId: string | null; lockedMultiSelections: { [groupId: string]: true; }; bindMode: import("@excalidraw/element/types").BindMode; }; captureUpdate: "EVENTUALLY"; }; PanelComponent: ({ updateData, appState }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element; keyTest: (event: KeyboardEvent | import("react").KeyboardEvent) => boolean; } & { keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent) => boolean) | undefined; }; export declare const zoomToFitBounds: ({ bounds, appState, canvasOffsets, fitToViewport, viewportZoomFactor, minZoom, maxZoom, }: { bounds: SceneBounds; canvasOffsets?: Offsets; appState: Readonly; /** whether to fit content to viewport (beyond >100%) */ fitToViewport: boolean; /** zoom content to cover X of the viewport, when fitToViewport=true */ viewportZoomFactor?: number; minZoom?: number; maxZoom?: number; }) => { appState: { scrollX: number; scrollY: number; zoom: { value: import("../types").NormalizedZoomValue; }; contextMenu: { items: import("../components/ContextMenu").ContextMenuItems; top: number; left: number; } | null; showWelcomeScreen: boolean; isLoading: boolean; errorMessage: React.ReactNode; activeEmbeddable: { element: import("@excalidraw/element/types").NonDeletedExcalidrawElement; state: "hover" | "active"; } | null; newElement: import("@excalidraw/element/types").NonDeleted | null; resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null; multiElement: import("@excalidraw/element/types").NonDeleted | null; selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null; isBindingEnabled: boolean; boxSelectionMode: import("../types").BoxSelectionMode; bindingPreference: "enabled" | "disabled"; isMidpointSnappingEnabled: boolean; startBoundElement: import("@excalidraw/element/types").NonDeleted | null; suggestedBinding: { element: import("@excalidraw/element/types").NonDeleted; midPoint?: import("@excalidraw/math").GlobalPoint; } | null; frameToHighlight: import("@excalidraw/element/types").NonDeleted | null; frameRendering: { enabled: boolean; name: boolean; outline: boolean; clip: boolean; markerName: boolean; markerEnabled: boolean; }; editingFrame: string | null; elementsToHighlight: import("@excalidraw/element/types").NonDeleted[] | null; editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null; activeTool: { lastActiveTool: import("../types").ActiveTool | null; locked: boolean; fromSelection: boolean; } & import("../types").ActiveTool; preferredSelectionTool: { type: "selection" | "lasso"; initialized: boolean; }; penMode: boolean; penDetected: boolean; exportBackground: boolean; exportEmbedScene: boolean; exportWithDarkMode: boolean; exportScale: number; currentItemStrokeColor: string; currentItemBackgroundColor: string; currentItemFillStyle: ExcalidrawElement["fillStyle"]; currentItemStrokeWidth: number; currentItemStrokeStyle: ExcalidrawElement["strokeStyle"]; currentItemRoughness: number; currentItemOpacity: number; currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues; currentItemFontSize: number; currentItemTextAlign: import("@excalidraw/element/types").TextAlign; currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null; currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null; currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null; currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness; currentItemArrowType: "sharp" | "round" | "elbow"; currentItemFrameRole: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["frameRole"] | null; viewBackgroundColor: string; cursorButton: "up" | "down"; scrolledOutside: boolean; name: string | null; isResizing: boolean; isRotating: boolean; openMenu: "canvas" | "shape" | null; openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null; openSidebar: { name: import("../types").SidebarName; tab?: import("../types").SidebarTabName; } | null; openDialog: null | { name: "imageExport" | "help" | "jsonExport"; } | { name: "ttd"; tab: "text-to-diagram" | "mermaid"; } | { name: "commandPalette"; } | { name: "settings"; } | { name: "elementLinkSelector"; sourceElementId: ExcalidrawElement["id"]; } | { name: "charts"; data: import("../charts").Spreadsheet; rawText: string; }; defaultSidebarDockedPreference: boolean; lastPointerDownWith: import("@excalidraw/element/types").PointerType; selectedElementIds: Readonly<{ [id: string]: true; }>; hoveredElementIds: Readonly<{ [id: string]: true; }>; previousSelectedElementIds: { [id: string]: true; }; selectedElementsAreBeingDragged: boolean; shouldCacheIgnoreZoom: boolean; toast: { message: React.ReactNode; closable?: boolean; duration?: number; } | null; zenModeEnabled: boolean; theme: import("@excalidraw/element/types").Theme; gridSize: number; gridStep: number; gridModeEnabled: boolean; viewModeEnabled: boolean; selectedGroupIds: { [groupId: string]: boolean; }; editingGroupId: import("@excalidraw/element/types").GroupId | null; width: number; height: number; offsetTop: number; offsetLeft: number; fileHandle: FileSystemFileHandle | null; collaborators: Map; stats: { open: boolean; panels: number; }; showHyperlinkPopup: false | "info" | "editor"; linkOpacity: number; colorPalette?: { canvasBackground: import("@excalidraw/common").ColorPaletteCustom; elementBackground: import("@excalidraw/common").ColorPaletteCustom; elementStroke: import("@excalidraw/common").ColorPaletteCustom; topPicks: { canvasBackground: [string, string, string, string, string]; elementStroke: [string, string, string, string, string]; elementBackground: [string, string, string, string, string]; }; }; allowWheelZoom?: boolean; allowPinchZoom?: boolean; disableContextMenu: boolean; pinnedScripts?: string[]; customPens?: any[]; currentStrokeOptions?: any; resetCustomPen?: any; gridColor: { Bold: string; Regular: string; }; gridDirection: { horizontal: boolean; vertical: boolean; }; highlightSearchResult: boolean; dynamicStyle: { [x: string]: string; }; frameColor: { stroke: string; fill: string; nameColor: string; }; selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null; snapLines: readonly import("../snapping").SnapLine[]; originSnapOffset: { x: number; y: number; } | null; objectsSnapModeEnabled: boolean; userToFollow: import("../types").UserToFollow | null; followedBy: Set; isCropping: boolean; croppingElementId: ExcalidrawElement["id"] | null; searchMatches: Readonly<{ focusedId: ExcalidrawElement["id"] | null; matches: readonly import("../types").SearchMatch[]; }> | null; activeLockedId: string | null; lockedMultiSelections: { [groupId: string]: true; }; bindMode: import("@excalidraw/element/types").BindMode; }; captureUpdate: "EVENTUALLY"; }; export declare const zoomToFit: ({ canvasOffsets, targetElements, appState, fitToViewport, viewportZoomFactor, minZoom, maxZoom, }: { canvasOffsets?: Offsets; targetElements: readonly ExcalidrawElement[]; appState: Readonly; /** whether to fit content to viewport (beyond >100%) */ fitToViewport: boolean; /** zoom content to cover X of the viewport, when fitToViewport=true */ viewportZoomFactor?: number; minZoom?: number; maxZoom?: number; }) => { appState: { scrollX: number; scrollY: number; zoom: { value: import("../types").NormalizedZoomValue; }; contextMenu: { items: import("../components/ContextMenu").ContextMenuItems; top: number; left: number; } | null; showWelcomeScreen: boolean; isLoading: boolean; errorMessage: React.ReactNode; activeEmbeddable: { element: import("@excalidraw/element/types").NonDeletedExcalidrawElement; state: "hover" | "active"; } | null; newElement: import("@excalidraw/element/types").NonDeleted | null; resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null; multiElement: import("@excalidraw/element/types").NonDeleted | null; selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null; isBindingEnabled: boolean; boxSelectionMode: import("../types").BoxSelectionMode; bindingPreference: "enabled" | "disabled"; isMidpointSnappingEnabled: boolean; startBoundElement: import("@excalidraw/element/types").NonDeleted | null; suggestedBinding: { element: import("@excalidraw/element/types").NonDeleted; midPoint?: import("@excalidraw/math").GlobalPoint; } | null; frameToHighlight: import("@excalidraw/element/types").NonDeleted | null; frameRendering: { enabled: boolean; name: boolean; outline: boolean; clip: boolean; markerName: boolean; markerEnabled: boolean; }; editingFrame: string | null; elementsToHighlight: import("@excalidraw/element/types").NonDeleted[] | null; editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null; activeTool: { lastActiveTool: import("../types").ActiveTool | null; locked: boolean; fromSelection: boolean; } & import("../types").ActiveTool; preferredSelectionTool: { type: "selection" | "lasso"; initialized: boolean; }; penMode: boolean; penDetected: boolean; exportBackground: boolean; exportEmbedScene: boolean; exportWithDarkMode: boolean; exportScale: number; currentItemStrokeColor: string; currentItemBackgroundColor: string; currentItemFillStyle: ExcalidrawElement["fillStyle"]; currentItemStrokeWidth: number; currentItemStrokeStyle: ExcalidrawElement["strokeStyle"]; currentItemRoughness: number; currentItemOpacity: number; currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues; currentItemFontSize: number; currentItemTextAlign: import("@excalidraw/element/types").TextAlign; currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null; currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null; currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null; currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness; currentItemArrowType: "sharp" | "round" | "elbow"; currentItemFrameRole: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["frameRole"] | null; viewBackgroundColor: string; cursorButton: "up" | "down"; scrolledOutside: boolean; name: string | null; isResizing: boolean; isRotating: boolean; openMenu: "canvas" | "shape" | null; openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null; openSidebar: { name: import("../types").SidebarName; tab?: import("../types").SidebarTabName; } | null; openDialog: null | { name: "imageExport" | "help" | "jsonExport"; } | { name: "ttd"; tab: "text-to-diagram" | "mermaid"; } | { name: "commandPalette"; } | { name: "settings"; } | { name: "elementLinkSelector"; sourceElementId: ExcalidrawElement["id"]; } | { name: "charts"; data: import("../charts").Spreadsheet; rawText: string; }; defaultSidebarDockedPreference: boolean; lastPointerDownWith: import("@excalidraw/element/types").PointerType; selectedElementIds: Readonly<{ [id: string]: true; }>; hoveredElementIds: Readonly<{ [id: string]: true; }>; previousSelectedElementIds: { [id: string]: true; }; selectedElementsAreBeingDragged: boolean; shouldCacheIgnoreZoom: boolean; toast: { message: React.ReactNode; closable?: boolean; duration?: number; } | null; zenModeEnabled: boolean; theme: import("@excalidraw/element/types").Theme; gridSize: number; gridStep: number; gridModeEnabled: boolean; viewModeEnabled: boolean; selectedGroupIds: { [groupId: string]: boolean; }; editingGroupId: import("@excalidraw/element/types").GroupId | null; width: number; height: number; offsetTop: number; offsetLeft: number; fileHandle: FileSystemFileHandle | null; collaborators: Map; stats: { open: boolean; panels: number; }; showHyperlinkPopup: false | "info" | "editor"; linkOpacity: number; colorPalette?: { canvasBackground: import("@excalidraw/common").ColorPaletteCustom; elementBackground: import("@excalidraw/common").ColorPaletteCustom; elementStroke: import("@excalidraw/common").ColorPaletteCustom; topPicks: { canvasBackground: [string, string, string, string, string]; elementStroke: [string, string, string, string, string]; elementBackground: [string, string, string, string, string]; }; }; allowWheelZoom?: boolean; allowPinchZoom?: boolean; disableContextMenu: boolean; pinnedScripts?: string[]; customPens?: any[]; currentStrokeOptions?: any; resetCustomPen?: any; gridColor: { Bold: string; Regular: string; }; gridDirection: { horizontal: boolean; vertical: boolean; }; highlightSearchResult: boolean; dynamicStyle: { [x: string]: string; }; frameColor: { stroke: string; fill: string; nameColor: string; }; selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null; snapLines: readonly import("../snapping").SnapLine[]; originSnapOffset: { x: number; y: number; } | null; objectsSnapModeEnabled: boolean; userToFollow: import("../types").UserToFollow | null; followedBy: Set; isCropping: boolean; croppingElementId: ExcalidrawElement["id"] | null; searchMatches: Readonly<{ focusedId: ExcalidrawElement["id"] | null; matches: readonly import("../types").SearchMatch[]; }> | null; activeLockedId: string | null; lockedMultiSelections: { [groupId: string]: true; }; bindMode: import("@excalidraw/element/types").BindMode; }; captureUpdate: "EVENTUALLY"; }; export declare const actionZoomToFitSelectionInViewport: { name: "zoomToFitSelectionInViewport"; label: string; icon: import("react/jsx-runtime").JSX.Element; trackEvent: { category: "canvas"; }; perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly, _: unknown, app: AppClassProperties) => { appState: { scrollX: number; scrollY: number; zoom: { value: import("../types").NormalizedZoomValue; }; contextMenu: { items: import("../components/ContextMenu").ContextMenuItems; top: number; left: number; } | null; showWelcomeScreen: boolean; isLoading: boolean; errorMessage: React.ReactNode; activeEmbeddable: { element: import("@excalidraw/element/types").NonDeletedExcalidrawElement; state: "hover" | "active"; } | null; newElement: import("@excalidraw/element/types").NonDeleted | null; resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null; multiElement: import("@excalidraw/element/types").NonDeleted | null; selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null; isBindingEnabled: boolean; boxSelectionMode: import("../types").BoxSelectionMode; bindingPreference: "enabled" | "disabled"; isMidpointSnappingEnabled: boolean; startBoundElement: import("@excalidraw/element/types").NonDeleted | null; suggestedBinding: { element: import("@excalidraw/element/types").NonDeleted; midPoint?: import("@excalidraw/math").GlobalPoint; } | null; frameToHighlight: import("@excalidraw/element/types").NonDeleted | null; frameRendering: { enabled: boolean; name: boolean; outline: boolean; clip: boolean; markerName: boolean; markerEnabled: boolean; }; editingFrame: string | null; elementsToHighlight: import("@excalidraw/element/types").NonDeleted[] | null; editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null; activeTool: { lastActiveTool: import("../types").ActiveTool | null; locked: boolean; fromSelection: boolean; } & import("../types").ActiveTool; preferredSelectionTool: { type: "selection" | "lasso"; initialized: boolean; }; penMode: boolean; penDetected: boolean; exportBackground: boolean; exportEmbedScene: boolean; exportWithDarkMode: boolean; exportScale: number; currentItemStrokeColor: string; currentItemBackgroundColor: string; currentItemFillStyle: ExcalidrawElement["fillStyle"]; currentItemStrokeWidth: number; currentItemStrokeStyle: ExcalidrawElement["strokeStyle"]; currentItemRoughness: number; currentItemOpacity: number; currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues; currentItemFontSize: number; currentItemTextAlign: import("@excalidraw/element/types").TextAlign; currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null; currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null; currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null; currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness; currentItemArrowType: "sharp" | "round" | "elbow"; currentItemFrameRole: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["frameRole"] | null; viewBackgroundColor: string; cursorButton: "up" | "down"; scrolledOutside: boolean; name: string | null; isResizing: boolean; isRotating: boolean; openMenu: "canvas" | "shape" | null; openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null; openSidebar: { name: import("../types").SidebarName; tab?: import("../types").SidebarTabName; } | null; openDialog: null | { name: "imageExport" | "help" | "jsonExport"; } | { name: "ttd"; tab: "text-to-diagram" | "mermaid"; } | { name: "commandPalette"; } | { name: "settings"; } | { name: "elementLinkSelector"; sourceElementId: ExcalidrawElement["id"]; } | { name: "charts"; data: import("../charts").Spreadsheet; rawText: string; }; defaultSidebarDockedPreference: boolean; lastPointerDownWith: import("@excalidraw/element/types").PointerType; selectedElementIds: Readonly<{ [id: string]: true; }>; hoveredElementIds: Readonly<{ [id: string]: true; }>; previousSelectedElementIds: { [id: string]: true; }; selectedElementsAreBeingDragged: boolean; shouldCacheIgnoreZoom: boolean; toast: { message: React.ReactNode; closable?: boolean; duration?: number; } | null; zenModeEnabled: boolean; theme: import("@excalidraw/element/types").Theme; gridSize: number; gridStep: number; gridModeEnabled: boolean; viewModeEnabled: boolean; selectedGroupIds: { [groupId: string]: boolean; }; editingGroupId: import("@excalidraw/element/types").GroupId | null; width: number; height: number; offsetTop: number; offsetLeft: number; fileHandle: FileSystemFileHandle | null; collaborators: Map; stats: { open: boolean; panels: number; }; showHyperlinkPopup: false | "info" | "editor"; linkOpacity: number; colorPalette?: { canvasBackground: import("@excalidraw/common").ColorPaletteCustom; elementBackground: import("@excalidraw/common").ColorPaletteCustom; elementStroke: import("@excalidraw/common").ColorPaletteCustom; topPicks: { canvasBackground: [string, string, string, string, string]; elementStroke: [string, string, string, string, string]; elementBackground: [string, string, string, string, string]; }; }; allowWheelZoom?: boolean; allowPinchZoom?: boolean; disableContextMenu: boolean; pinnedScripts?: string[]; customPens?: any[]; currentStrokeOptions?: any; resetCustomPen?: any; gridColor: { Bold: string; Regular: string; }; gridDirection: { horizontal: boolean; vertical: boolean; }; highlightSearchResult: boolean; dynamicStyle: { [x: string]: string; }; frameColor: { stroke: string; fill: string; nameColor: string; }; selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null; snapLines: readonly import("../snapping").SnapLine[]; originSnapOffset: { x: number; y: number; } | null; objectsSnapModeEnabled: boolean; userToFollow: import("../types").UserToFollow | null; followedBy: Set; isCropping: boolean; croppingElementId: ExcalidrawElement["id"] | null; searchMatches: Readonly<{ focusedId: ExcalidrawElement["id"] | null; matches: readonly import("../types").SearchMatch[]; }> | null; activeLockedId: string | null; lockedMultiSelections: { [groupId: string]: true; }; bindMode: import("@excalidraw/element/types").BindMode; }; captureUpdate: "EVENTUALLY"; }; keyTest: (event: KeyboardEvent | import("react").KeyboardEvent) => boolean; } & { keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent) => boolean) | undefined; }; export declare const actionZoomToFitSelection: { name: "zoomToFitSelection"; label: string; icon: import("react/jsx-runtime").JSX.Element; trackEvent: { category: "canvas"; }; perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly, _: unknown, app: AppClassProperties) => { appState: { scrollX: number; scrollY: number; zoom: { value: import("../types").NormalizedZoomValue; }; contextMenu: { items: import("../components/ContextMenu").ContextMenuItems; top: number; left: number; } | null; showWelcomeScreen: boolean; isLoading: boolean; errorMessage: React.ReactNode; activeEmbeddable: { element: import("@excalidraw/element/types").NonDeletedExcalidrawElement; state: "hover" | "active"; } | null; newElement: import("@excalidraw/element/types").NonDeleted | null; resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null; multiElement: import("@excalidraw/element/types").NonDeleted | null; selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null; isBindingEnabled: boolean; boxSelectionMode: import("../types").BoxSelectionMode; bindingPreference: "enabled" | "disabled"; isMidpointSnappingEnabled: boolean; startBoundElement: import("@excalidraw/element/types").NonDeleted | null; suggestedBinding: { element: import("@excalidraw/element/types").NonDeleted; midPoint?: import("@excalidraw/math").GlobalPoint; } | null; frameToHighlight: import("@excalidraw/element/types").NonDeleted | null; frameRendering: { enabled: boolean; name: boolean; outline: boolean; clip: boolean; markerName: boolean; markerEnabled: boolean; }; editingFrame: string | null; elementsToHighlight: import("@excalidraw/element/types").NonDeleted[] | null; editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null; activeTool: { lastActiveTool: import("../types").ActiveTool | null; locked: boolean; fromSelection: boolean; } & import("../types").ActiveTool; preferredSelectionTool: { type: "selection" | "lasso"; initialized: boolean; }; penMode: boolean; penDetected: boolean; exportBackground: boolean; exportEmbedScene: boolean; exportWithDarkMode: boolean; exportScale: number; currentItemStrokeColor: string; currentItemBackgroundColor: string; currentItemFillStyle: ExcalidrawElement["fillStyle"]; currentItemStrokeWidth: number; currentItemStrokeStyle: ExcalidrawElement["strokeStyle"]; currentItemRoughness: number; currentItemOpacity: number; currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues; currentItemFontSize: number; currentItemTextAlign: import("@excalidraw/element/types").TextAlign; currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null; currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null; currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null; currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness; currentItemArrowType: "sharp" | "round" | "elbow"; currentItemFrameRole: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["frameRole"] | null; viewBackgroundColor: string; cursorButton: "up" | "down"; scrolledOutside: boolean; name: string | null; isResizing: boolean; isRotating: boolean; openMenu: "canvas" | "shape" | null; openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null; openSidebar: { name: import("../types").SidebarName; tab?: import("../types").SidebarTabName; } | null; openDialog: null | { name: "imageExport" | "help" | "jsonExport"; } | { name: "ttd"; tab: "text-to-diagram" | "mermaid"; } | { name: "commandPalette"; } | { name: "settings"; } | { name: "elementLinkSelector"; sourceElementId: ExcalidrawElement["id"]; } | { name: "charts"; data: import("../charts").Spreadsheet; rawText: string; }; defaultSidebarDockedPreference: boolean; lastPointerDownWith: import("@excalidraw/element/types").PointerType; selectedElementIds: Readonly<{ [id: string]: true; }>; hoveredElementIds: Readonly<{ [id: string]: true; }>; previousSelectedElementIds: { [id: string]: true; }; selectedElementsAreBeingDragged: boolean; shouldCacheIgnoreZoom: boolean; toast: { message: React.ReactNode; closable?: boolean; duration?: number; } | null; zenModeEnabled: boolean; theme: import("@excalidraw/element/types").Theme; gridSize: number; gridStep: number; gridModeEnabled: boolean; viewModeEnabled: boolean; selectedGroupIds: { [groupId: string]: boolean; }; editingGroupId: import("@excalidraw/element/types").GroupId | null; width: number; height: number; offsetTop: number; offsetLeft: number; fileHandle: FileSystemFileHandle | null; collaborators: Map; stats: { open: boolean; panels: number; }; showHyperlinkPopup: false | "info" | "editor"; linkOpacity: number; colorPalette?: { canvasBackground: import("@excalidraw/common").ColorPaletteCustom; elementBackground: import("@excalidraw/common").ColorPaletteCustom; elementStroke: import("@excalidraw/common").ColorPaletteCustom; topPicks: { canvasBackground: [string, string, string, string, string]; elementStroke: [string, string, string, string, string]; elementBackground: [string, string, string, string, string]; }; }; allowWheelZoom?: boolean; allowPinchZoom?: boolean; disableContextMenu: boolean; pinnedScripts?: string[]; customPens?: any[]; currentStrokeOptions?: any; resetCustomPen?: any; gridColor: { Bold: string; Regular: string; }; gridDirection: { horizontal: boolean; vertical: boolean; }; highlightSearchResult: boolean; dynamicStyle: { [x: string]: string; }; frameColor: { stroke: string; fill: string; nameColor: string; }; selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null; snapLines: readonly import("../snapping").SnapLine[]; originSnapOffset: { x: number; y: number; } | null; objectsSnapModeEnabled: boolean; userToFollow: import("../types").UserToFollow | null; followedBy: Set; isCropping: boolean; croppingElementId: ExcalidrawElement["id"] | null; searchMatches: Readonly<{ focusedId: ExcalidrawElement["id"] | null; matches: readonly import("../types").SearchMatch[]; }> | null; activeLockedId: string | null; lockedMultiSelections: { [groupId: string]: true; }; bindMode: import("@excalidraw/element/types").BindMode; }; captureUpdate: "EVENTUALLY"; }; keyTest: (event: KeyboardEvent | import("react").KeyboardEvent) => boolean; } & { keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent) => boolean) | undefined; }; export declare const actionZoomToFit: { name: "zoomToFit"; label: string; icon: import("react/jsx-runtime").JSX.Element; viewMode: true; trackEvent: { category: "canvas"; }; perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly, _: unknown, app: AppClassProperties) => { appState: { scrollX: number; scrollY: number; zoom: { value: import("../types").NormalizedZoomValue; }; contextMenu: { items: import("../components/ContextMenu").ContextMenuItems; top: number; left: number; } | null; showWelcomeScreen: boolean; isLoading: boolean; errorMessage: React.ReactNode; activeEmbeddable: { element: import("@excalidraw/element/types").NonDeletedExcalidrawElement; state: "hover" | "active"; } | null; newElement: import("@excalidraw/element/types").NonDeleted | null; resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null; multiElement: import("@excalidraw/element/types").NonDeleted | null; selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null; isBindingEnabled: boolean; boxSelectionMode: import("../types").BoxSelectionMode; bindingPreference: "enabled" | "disabled"; isMidpointSnappingEnabled: boolean; startBoundElement: import("@excalidraw/element/types").NonDeleted | null; suggestedBinding: { element: import("@excalidraw/element/types").NonDeleted; midPoint?: import("@excalidraw/math").GlobalPoint; } | null; frameToHighlight: import("@excalidraw/element/types").NonDeleted | null; frameRendering: { enabled: boolean; name: boolean; outline: boolean; clip: boolean; markerName: boolean; markerEnabled: boolean; }; editingFrame: string | null; elementsToHighlight: import("@excalidraw/element/types").NonDeleted[] | null; editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null; activeTool: { lastActiveTool: import("../types").ActiveTool | null; locked: boolean; fromSelection: boolean; } & import("../types").ActiveTool; preferredSelectionTool: { type: "selection" | "lasso"; initialized: boolean; }; penMode: boolean; penDetected: boolean; exportBackground: boolean; exportEmbedScene: boolean; exportWithDarkMode: boolean; exportScale: number; currentItemStrokeColor: string; currentItemBackgroundColor: string; currentItemFillStyle: ExcalidrawElement["fillStyle"]; currentItemStrokeWidth: number; currentItemStrokeStyle: ExcalidrawElement["strokeStyle"]; currentItemRoughness: number; currentItemOpacity: number; currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues; currentItemFontSize: number; currentItemTextAlign: import("@excalidraw/element/types").TextAlign; currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null; currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null; currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null; currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness; currentItemArrowType: "sharp" | "round" | "elbow"; currentItemFrameRole: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["frameRole"] | null; viewBackgroundColor: string; cursorButton: "up" | "down"; scrolledOutside: boolean; name: string | null; isResizing: boolean; isRotating: boolean; openMenu: "canvas" | "shape" | null; openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null; openSidebar: { name: import("../types").SidebarName; tab?: import("../types").SidebarTabName; } | null; openDialog: null | { name: "imageExport" | "help" | "jsonExport"; } | { name: "ttd"; tab: "text-to-diagram" | "mermaid"; } | { name: "commandPalette"; } | { name: "settings"; } | { name: "elementLinkSelector"; sourceElementId: ExcalidrawElement["id"]; } | { name: "charts"; data: import("../charts").Spreadsheet; rawText: string; }; defaultSidebarDockedPreference: boolean; lastPointerDownWith: import("@excalidraw/element/types").PointerType; selectedElementIds: Readonly<{ [id: string]: true; }>; hoveredElementIds: Readonly<{ [id: string]: true; }>; previousSelectedElementIds: { [id: string]: true; }; selectedElementsAreBeingDragged: boolean; shouldCacheIgnoreZoom: boolean; toast: { message: React.ReactNode; closable?: boolean; duration?: number; } | null; zenModeEnabled: boolean; theme: import("@excalidraw/element/types").Theme; gridSize: number; gridStep: number; gridModeEnabled: boolean; viewModeEnabled: boolean; selectedGroupIds: { [groupId: string]: boolean; }; editingGroupId: import("@excalidraw/element/types").GroupId | null; width: number; height: number; offsetTop: number; offsetLeft: number; fileHandle: FileSystemFileHandle | null; collaborators: Map; stats: { open: boolean; panels: number; }; showHyperlinkPopup: false | "info" | "editor"; linkOpacity: number; colorPalette?: { canvasBackground: import("@excalidraw/common").ColorPaletteCustom; elementBackground: import("@excalidraw/common").ColorPaletteCustom; elementStroke: import("@excalidraw/common").ColorPaletteCustom; topPicks: { canvasBackground: [string, string, string, string, string]; elementStroke: [string, string, string, string, string]; elementBackground: [string, string, string, string, string]; }; }; allowWheelZoom?: boolean; allowPinchZoom?: boolean; disableContextMenu: boolean; pinnedScripts?: string[]; customPens?: any[]; currentStrokeOptions?: any; resetCustomPen?: any; gridColor: { Bold: string; Regular: string; }; gridDirection: { horizontal: boolean; vertical: boolean; }; highlightSearchResult: boolean; dynamicStyle: { [x: string]: string; }; frameColor: { stroke: string; fill: string; nameColor: string; }; selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null; snapLines: readonly import("../snapping").SnapLine[]; originSnapOffset: { x: number; y: number; } | null; objectsSnapModeEnabled: boolean; userToFollow: import("../types").UserToFollow | null; followedBy: Set; isCropping: boolean; croppingElementId: ExcalidrawElement["id"] | null; searchMatches: Readonly<{ focusedId: ExcalidrawElement["id"] | null; matches: readonly import("../types").SearchMatch[]; }> | null; activeLockedId: string | null; lockedMultiSelections: { [groupId: string]: true; }; bindMode: import("@excalidraw/element/types").BindMode; }; captureUpdate: "EVENTUALLY"; }; keyTest: (event: KeyboardEvent | import("react").KeyboardEvent) => boolean; } & { keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent) => boolean) | undefined; }; export declare const actionToggleTheme: import("./types").Action & { keyTest?: ((event: React.KeyboardEvent | KeyboardEvent, appState: AppState, elements: readonly ExcalidrawElement[], app: AppClassProperties) => boolean) | undefined; }; export declare const actionToggleEraserTool: { name: "toggleEraserTool"; label: string; trackEvent: { category: "toolbar"; }; perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly, _: unknown, app: AppClassProperties) => { appState: { selectedElementIds: {}; selectedGroupIds: {}; activeEmbeddable: null; activeTool: { lastActiveTool: import("../types").ActiveTool | null; locked: boolean; fromSelection: boolean; } & import("../types").ActiveTool; contextMenu: { items: import("../components/ContextMenu").ContextMenuItems; top: number; left: number; } | null; showWelcomeScreen: boolean; isLoading: boolean; errorMessage: React.ReactNode; newElement: import("@excalidraw/element/types").NonDeleted | null; resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null; multiElement: import("@excalidraw/element/types").NonDeleted | null; selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null; isBindingEnabled: boolean; boxSelectionMode: import("../types").BoxSelectionMode; bindingPreference: "enabled" | "disabled"; isMidpointSnappingEnabled: boolean; startBoundElement: import("@excalidraw/element/types").NonDeleted | null; suggestedBinding: { element: import("@excalidraw/element/types").NonDeleted; midPoint?: import("@excalidraw/math").GlobalPoint; } | null; frameToHighlight: import("@excalidraw/element/types").NonDeleted | null; frameRendering: { enabled: boolean; name: boolean; outline: boolean; clip: boolean; markerName: boolean; markerEnabled: boolean; }; editingFrame: string | null; elementsToHighlight: import("@excalidraw/element/types").NonDeleted[] | null; editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null; preferredSelectionTool: { type: "selection" | "lasso"; initialized: boolean; }; penMode: boolean; penDetected: boolean; exportBackground: boolean; exportEmbedScene: boolean; exportWithDarkMode: boolean; exportScale: number; currentItemStrokeColor: string; currentItemBackgroundColor: string; currentItemFillStyle: ExcalidrawElement["fillStyle"]; currentItemStrokeWidth: number; currentItemStrokeStyle: ExcalidrawElement["strokeStyle"]; currentItemRoughness: number; currentItemOpacity: number; currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues; currentItemFontSize: number; currentItemTextAlign: import("@excalidraw/element/types").TextAlign; currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null; currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null; currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null; currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness; currentItemArrowType: "sharp" | "round" | "elbow"; currentItemFrameRole: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["frameRole"] | null; viewBackgroundColor: string; scrollX: number; scrollY: number; cursorButton: "up" | "down"; scrolledOutside: boolean; name: string | null; isResizing: boolean; isRotating: boolean; zoom: import("../types").Zoom; openMenu: "canvas" | "shape" | null; openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null; openSidebar: { name: import("../types").SidebarName; tab?: import("../types").SidebarTabName; } | null; openDialog: null | { name: "imageExport" | "help" | "jsonExport"; } | { name: "ttd"; tab: "text-to-diagram" | "mermaid"; } | { name: "commandPalette"; } | { name: "settings"; } | { name: "elementLinkSelector"; sourceElementId: ExcalidrawElement["id"]; } | { name: "charts"; data: import("../charts").Spreadsheet; rawText: string; }; defaultSidebarDockedPreference: boolean; lastPointerDownWith: import("@excalidraw/element/types").PointerType; hoveredElementIds: Readonly<{ [id: string]: true; }>; previousSelectedElementIds: { [id: string]: true; }; selectedElementsAreBeingDragged: boolean; shouldCacheIgnoreZoom: boolean; toast: { message: React.ReactNode; closable?: boolean; duration?: number; } | null; zenModeEnabled: boolean; theme: import("@excalidraw/element/types").Theme; gridSize: number; gridStep: number; gridModeEnabled: boolean; viewModeEnabled: boolean; editingGroupId: import("@excalidraw/element/types").GroupId | null; width: number; height: number; offsetTop: number; offsetLeft: number; fileHandle: FileSystemFileHandle | null; collaborators: Map; stats: { open: boolean; panels: number; }; showHyperlinkPopup: false | "info" | "editor"; linkOpacity: number; colorPalette?: { canvasBackground: import("@excalidraw/common").ColorPaletteCustom; elementBackground: import("@excalidraw/common").ColorPaletteCustom; elementStroke: import("@excalidraw/common").ColorPaletteCustom; topPicks: { canvasBackground: [string, string, string, string, string]; elementStroke: [string, string, string, string, string]; elementBackground: [string, string, string, string, string]; }; }; allowWheelZoom?: boolean; allowPinchZoom?: boolean; disableContextMenu: boolean; pinnedScripts?: string[]; customPens?: any[]; currentStrokeOptions?: any; resetCustomPen?: any; gridColor: { Bold: string; Regular: string; }; gridDirection: { horizontal: boolean; vertical: boolean; }; highlightSearchResult: boolean; dynamicStyle: { [x: string]: string; }; frameColor: { stroke: string; fill: string; nameColor: string; }; selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null; snapLines: readonly import("../snapping").SnapLine[]; originSnapOffset: { x: number; y: number; } | null; objectsSnapModeEnabled: boolean; userToFollow: import("../types").UserToFollow | null; followedBy: Set; isCropping: boolean; croppingElementId: ExcalidrawElement["id"] | null; searchMatches: Readonly<{ focusedId: ExcalidrawElement["id"] | null; matches: readonly import("../types").SearchMatch[]; }> | null; activeLockedId: string | null; lockedMultiSelections: { [groupId: string]: true; }; bindMode: import("@excalidraw/element/types").BindMode; }; captureUpdate: "IMMEDIATELY"; }; keyTest: (event: KeyboardEvent | import("react").KeyboardEvent) => boolean; } & { keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent) => boolean) | undefined; }; export declare const actionToggleLassoTool: { name: "toggleLassoTool"; label: string; icon: import("react/jsx-runtime").JSX.Element; trackEvent: { category: "toolbar"; }; predicate: (elements: readonly ExcalidrawElement[], appState: AppState, props: import("../types").ExcalidrawProps, app: AppClassProperties) => boolean; perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly, _: unknown, app: AppClassProperties) => { appState: { selectedElementIds: {}; selectedGroupIds: {}; activeEmbeddable: null; activeTool: { lastActiveTool: import("../types").ActiveTool | null; locked: boolean; fromSelection: boolean; } & import("../types").ActiveTool; contextMenu: { items: import("../components/ContextMenu").ContextMenuItems; top: number; left: number; } | null; showWelcomeScreen: boolean; isLoading: boolean; errorMessage: React.ReactNode; newElement: import("@excalidraw/element/types").NonDeleted | null; resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null; multiElement: import("@excalidraw/element/types").NonDeleted | null; selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null; isBindingEnabled: boolean; boxSelectionMode: import("../types").BoxSelectionMode; bindingPreference: "enabled" | "disabled"; isMidpointSnappingEnabled: boolean; startBoundElement: import("@excalidraw/element/types").NonDeleted | null; suggestedBinding: { element: import("@excalidraw/element/types").NonDeleted; midPoint?: import("@excalidraw/math").GlobalPoint; } | null; frameToHighlight: import("@excalidraw/element/types").NonDeleted | null; frameRendering: { enabled: boolean; name: boolean; outline: boolean; clip: boolean; markerName: boolean; markerEnabled: boolean; }; editingFrame: string | null; elementsToHighlight: import("@excalidraw/element/types").NonDeleted[] | null; editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null; preferredSelectionTool: { type: "selection" | "lasso"; initialized: boolean; }; penMode: boolean; penDetected: boolean; exportBackground: boolean; exportEmbedScene: boolean; exportWithDarkMode: boolean; exportScale: number; currentItemStrokeColor: string; currentItemBackgroundColor: string; currentItemFillStyle: ExcalidrawElement["fillStyle"]; currentItemStrokeWidth: number; currentItemStrokeStyle: ExcalidrawElement["strokeStyle"]; currentItemRoughness: number; currentItemOpacity: number; currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues; currentItemFontSize: number; currentItemTextAlign: import("@excalidraw/element/types").TextAlign; currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null; currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null; currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null; currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness; currentItemArrowType: "sharp" | "round" | "elbow"; currentItemFrameRole: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["frameRole"] | null; viewBackgroundColor: string; scrollX: number; scrollY: number; cursorButton: "up" | "down"; scrolledOutside: boolean; name: string | null; isResizing: boolean; isRotating: boolean; zoom: import("../types").Zoom; openMenu: "canvas" | "shape" | null; openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null; openSidebar: { name: import("../types").SidebarName; tab?: import("../types").SidebarTabName; } | null; openDialog: null | { name: "imageExport" | "help" | "jsonExport"; } | { name: "ttd"; tab: "text-to-diagram" | "mermaid"; } | { name: "commandPalette"; } | { name: "settings"; } | { name: "elementLinkSelector"; sourceElementId: ExcalidrawElement["id"]; } | { name: "charts"; data: import("../charts").Spreadsheet; rawText: string; }; defaultSidebarDockedPreference: boolean; lastPointerDownWith: import("@excalidraw/element/types").PointerType; hoveredElementIds: Readonly<{ [id: string]: true; }>; previousSelectedElementIds: { [id: string]: true; }; selectedElementsAreBeingDragged: boolean; shouldCacheIgnoreZoom: boolean; toast: { message: React.ReactNode; closable?: boolean; duration?: number; } | null; zenModeEnabled: boolean; theme: import("@excalidraw/element/types").Theme; gridSize: number; gridStep: number; gridModeEnabled: boolean; viewModeEnabled: boolean; editingGroupId: import("@excalidraw/element/types").GroupId | null; width: number; height: number; offsetTop: number; offsetLeft: number; fileHandle: FileSystemFileHandle | null; collaborators: Map; stats: { open: boolean; panels: number; }; showHyperlinkPopup: false | "info" | "editor"; linkOpacity: number; colorPalette?: { canvasBackground: import("@excalidraw/common").ColorPaletteCustom; elementBackground: import("@excalidraw/common").ColorPaletteCustom; elementStroke: import("@excalidraw/common").ColorPaletteCustom; topPicks: { canvasBackground: [string, string, string, string, string]; elementStroke: [string, string, string, string, string]; elementBackground: [string, string, string, string, string]; }; }; allowWheelZoom?: boolean; allowPinchZoom?: boolean; disableContextMenu: boolean; pinnedScripts?: string[]; customPens?: any[]; currentStrokeOptions?: any; resetCustomPen?: any; gridColor: { Bold: string; Regular: string; }; gridDirection: { horizontal: boolean; vertical: boolean; }; highlightSearchResult: boolean; dynamicStyle: { [x: string]: string; }; frameColor: { stroke: string; fill: string; nameColor: string; }; selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null; snapLines: readonly import("../snapping").SnapLine[]; originSnapOffset: { x: number; y: number; } | null; objectsSnapModeEnabled: boolean; userToFollow: import("../types").UserToFollow | null; followedBy: Set; isCropping: boolean; croppingElementId: ExcalidrawElement["id"] | null; searchMatches: Readonly<{ focusedId: ExcalidrawElement["id"] | null; matches: readonly import("../types").SearchMatch[]; }> | null; activeLockedId: string | null; lockedMultiSelections: { [groupId: string]: true; }; bindMode: import("@excalidraw/element/types").BindMode; }; captureUpdate: "NEVER"; }; } & { keyTest?: undefined; }; export declare const actionToggleHandTool: { name: "toggleHandTool"; label: string; trackEvent: { category: "toolbar"; }; icon: import("react/jsx-runtime").JSX.Element; viewMode: false; perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly, _: unknown, app: AppClassProperties) => { appState: { selectedElementIds: {}; selectedGroupIds: {}; activeEmbeddable: null; activeTool: { lastActiveTool: import("../types").ActiveTool | null; locked: boolean; fromSelection: boolean; } & import("../types").ActiveTool; contextMenu: { items: import("../components/ContextMenu").ContextMenuItems; top: number; left: number; } | null; showWelcomeScreen: boolean; isLoading: boolean; errorMessage: React.ReactNode; newElement: import("@excalidraw/element/types").NonDeleted | null; resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null; multiElement: import("@excalidraw/element/types").NonDeleted | null; selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null; isBindingEnabled: boolean; boxSelectionMode: import("../types").BoxSelectionMode; bindingPreference: "enabled" | "disabled"; isMidpointSnappingEnabled: boolean; startBoundElement: import("@excalidraw/element/types").NonDeleted | null; suggestedBinding: { element: import("@excalidraw/element/types").NonDeleted; midPoint?: import("@excalidraw/math").GlobalPoint; } | null; frameToHighlight: import("@excalidraw/element/types").NonDeleted | null; frameRendering: { enabled: boolean; name: boolean; outline: boolean; clip: boolean; markerName: boolean; markerEnabled: boolean; }; editingFrame: string | null; elementsToHighlight: import("@excalidraw/element/types").NonDeleted[] | null; editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null; preferredSelectionTool: { type: "selection" | "lasso"; initialized: boolean; }; penMode: boolean; penDetected: boolean; exportBackground: boolean; exportEmbedScene: boolean; exportWithDarkMode: boolean; exportScale: number; currentItemStrokeColor: string; currentItemBackgroundColor: string; currentItemFillStyle: ExcalidrawElement["fillStyle"]; currentItemStrokeWidth: number; currentItemStrokeStyle: ExcalidrawElement["strokeStyle"]; currentItemRoughness: number; currentItemOpacity: number; currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues; currentItemFontSize: number; currentItemTextAlign: import("@excalidraw/element/types").TextAlign; currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null; currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null; currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null; currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness; currentItemArrowType: "sharp" | "round" | "elbow"; currentItemFrameRole: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["frameRole"] | null; viewBackgroundColor: string; scrollX: number; scrollY: number; cursorButton: "up" | "down"; scrolledOutside: boolean; name: string | null; isResizing: boolean; isRotating: boolean; zoom: import("../types").Zoom; openMenu: "canvas" | "shape" | null; openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null; openSidebar: { name: import("../types").SidebarName; tab?: import("../types").SidebarTabName; } | null; openDialog: null | { name: "imageExport" | "help" | "jsonExport"; } | { name: "ttd"; tab: "text-to-diagram" | "mermaid"; } | { name: "commandPalette"; } | { name: "settings"; } | { name: "elementLinkSelector"; sourceElementId: ExcalidrawElement["id"]; } | { name: "charts"; data: import("../charts").Spreadsheet; rawText: string; }; defaultSidebarDockedPreference: boolean; lastPointerDownWith: import("@excalidraw/element/types").PointerType; hoveredElementIds: Readonly<{ [id: string]: true; }>; previousSelectedElementIds: { [id: string]: true; }; selectedElementsAreBeingDragged: boolean; shouldCacheIgnoreZoom: boolean; toast: { message: React.ReactNode; closable?: boolean; duration?: number; } | null; zenModeEnabled: boolean; theme: import("@excalidraw/element/types").Theme; gridSize: number; gridStep: number; gridModeEnabled: boolean; viewModeEnabled: boolean; editingGroupId: import("@excalidraw/element/types").GroupId | null; width: number; height: number; offsetTop: number; offsetLeft: number; fileHandle: FileSystemFileHandle | null; collaborators: Map; stats: { open: boolean; panels: number; }; showHyperlinkPopup: false | "info" | "editor"; linkOpacity: number; colorPalette?: { canvasBackground: import("@excalidraw/common").ColorPaletteCustom; elementBackground: import("@excalidraw/common").ColorPaletteCustom; elementStroke: import("@excalidraw/common").ColorPaletteCustom; topPicks: { canvasBackground: [string, string, string, string, string]; elementStroke: [string, string, string, string, string]; elementBackground: [string, string, string, string, string]; }; }; allowWheelZoom?: boolean; allowPinchZoom?: boolean; disableContextMenu: boolean; pinnedScripts?: string[]; customPens?: any[]; currentStrokeOptions?: any; resetCustomPen?: any; gridColor: { Bold: string; Regular: string; }; gridDirection: { horizontal: boolean; vertical: boolean; }; highlightSearchResult: boolean; dynamicStyle: { [x: string]: string; }; frameColor: { stroke: string; fill: string; nameColor: string; }; selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null; snapLines: readonly import("../snapping").SnapLine[]; originSnapOffset: { x: number; y: number; } | null; objectsSnapModeEnabled: boolean; userToFollow: import("../types").UserToFollow | null; followedBy: Set; isCropping: boolean; croppingElementId: ExcalidrawElement["id"] | null; searchMatches: Readonly<{ focusedId: ExcalidrawElement["id"] | null; matches: readonly import("../types").SearchMatch[]; }> | null; activeLockedId: string | null; lockedMultiSelections: { [groupId: string]: true; }; bindMode: import("@excalidraw/element/types").BindMode; }; captureUpdate: "IMMEDIATELY"; }; keyTest: (event: KeyboardEvent | import("react").KeyboardEvent) => boolean; } & { keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent) => boolean) | undefined; }; export declare const actionToggleLaserPointer: { name: "toggleLaserPointerTool"; viewMode: true; trackEvent: { category: "menu"; }; perform(elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly, _: unknown, app: AppClassProperties): { appState: { selectedElementIds: {}; selectedGroupIds: {}; activeEmbeddable: null; activeTool: { lastActiveTool: import("../types").ActiveTool | null; locked: boolean; fromSelection: boolean; } & import("../types").ActiveTool; contextMenu: { items: import("../components/ContextMenu").ContextMenuItems; top: number; left: number; } | null; showWelcomeScreen: boolean; isLoading: boolean; errorMessage: React.ReactNode; newElement: import("@excalidraw/element/types").NonDeleted | null; resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null; multiElement: import("@excalidraw/element/types").NonDeleted | null; selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null; isBindingEnabled: boolean; boxSelectionMode: import("../types").BoxSelectionMode; bindingPreference: "enabled" | "disabled"; isMidpointSnappingEnabled: boolean; startBoundElement: import("@excalidraw/element/types").NonDeleted | null; suggestedBinding: { element: import("@excalidraw/element/types").NonDeleted; midPoint?: import("@excalidraw/math").GlobalPoint; } | null; frameToHighlight: import("@excalidraw/element/types").NonDeleted | null; frameRendering: { enabled: boolean; name: boolean; outline: boolean; clip: boolean; markerName: boolean; markerEnabled: boolean; }; editingFrame: string | null; elementsToHighlight: import("@excalidraw/element/types").NonDeleted[] | null; editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null; preferredSelectionTool: { type: "selection" | "lasso"; initialized: boolean; }; penMode: boolean; penDetected: boolean; exportBackground: boolean; exportEmbedScene: boolean; exportWithDarkMode: boolean; exportScale: number; currentItemStrokeColor: string; currentItemBackgroundColor: string; currentItemFillStyle: ExcalidrawElement["fillStyle"]; currentItemStrokeWidth: number; currentItemStrokeStyle: ExcalidrawElement["strokeStyle"]; currentItemRoughness: number; currentItemOpacity: number; currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues; currentItemFontSize: number; currentItemTextAlign: import("@excalidraw/element/types").TextAlign; currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null; currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null; currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null; currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness; currentItemArrowType: "sharp" | "round" | "elbow"; currentItemFrameRole: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["frameRole"] | null; viewBackgroundColor: string; scrollX: number; scrollY: number; cursorButton: "up" | "down"; scrolledOutside: boolean; name: string | null; isResizing: boolean; isRotating: boolean; zoom: import("../types").Zoom; openMenu: "canvas" | "shape" | null; openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null; openSidebar: { name: import("../types").SidebarName; tab?: import("../types").SidebarTabName; } | null; openDialog: null | { name: "imageExport" | "help" | "jsonExport"; } | { name: "ttd"; tab: "text-to-diagram" | "mermaid"; } | { name: "commandPalette"; } | { name: "settings"; } | { name: "elementLinkSelector"; sourceElementId: ExcalidrawElement["id"]; } | { name: "charts"; data: import("../charts").Spreadsheet; rawText: string; }; defaultSidebarDockedPreference: boolean; lastPointerDownWith: import("@excalidraw/element/types").PointerType; hoveredElementIds: Readonly<{ [id: string]: true; }>; previousSelectedElementIds: { [id: string]: true; }; selectedElementsAreBeingDragged: boolean; shouldCacheIgnoreZoom: boolean; toast: { message: React.ReactNode; closable?: boolean; duration?: number; } | null; zenModeEnabled: boolean; theme: import("@excalidraw/element/types").Theme; gridSize: number; gridStep: number; gridModeEnabled: boolean; viewModeEnabled: boolean; editingGroupId: import("@excalidraw/element/types").GroupId | null; width: number; height: number; offsetTop: number; offsetLeft: number; fileHandle: FileSystemFileHandle | null; collaborators: Map; stats: { open: boolean; panels: number; }; showHyperlinkPopup: false | "info" | "editor"; linkOpacity: number; colorPalette?: { canvasBackground: import("@excalidraw/common").ColorPaletteCustom; elementBackground: import("@excalidraw/common").ColorPaletteCustom; elementStroke: import("@excalidraw/common").ColorPaletteCustom; topPicks: { canvasBackground: [string, string, string, string, string]; elementStroke: [string, string, string, string, string]; elementBackground: [string, string, string, string, string]; }; }; allowWheelZoom?: boolean; allowPinchZoom?: boolean; disableContextMenu: boolean; pinnedScripts?: string[]; customPens?: any[]; currentStrokeOptions?: any; resetCustomPen?: any; gridColor: { Bold: string; Regular: string; }; gridDirection: { horizontal: boolean; vertical: boolean; }; highlightSearchResult: boolean; dynamicStyle: { [x: string]: string; }; frameColor: { stroke: string; fill: string; nameColor: string; }; selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null; snapLines: readonly import("../snapping").SnapLine[]; originSnapOffset: { x: number; y: number; } | null; objectsSnapModeEnabled: boolean; userToFollow: import("../types").UserToFollow | null; followedBy: Set; isCropping: boolean; croppingElementId: ExcalidrawElement["id"] | null; searchMatches: Readonly<{ focusedId: ExcalidrawElement["id"] | null; matches: readonly import("../types").SearchMatch[]; }> | null; activeLockedId: string | null; lockedMultiSelections: { [groupId: string]: true; }; bindMode: import("@excalidraw/element/types").BindMode; }; captureUpdate: "NEVER"; }; checked: (appState: Readonly) => boolean; label: string; icon: import("react/jsx-runtime").JSX.Element; } & { keyTest?: undefined; }; export declare const zoomToFitElements: (elements: readonly ExcalidrawElement[], appState: Readonly, zoomToSelection: boolean, app: AppClassProperties, //zsviczian maxZoom?: number, //zsviczian margin?: number) => { appState: { zoom: { value: import("../types").NormalizedZoomValue; }; scrollX: number; scrollY: number; contextMenu: { items: import("../components/ContextMenu").ContextMenuItems; top: number; left: number; } | null; showWelcomeScreen: boolean; isLoading: boolean; errorMessage: React.ReactNode; activeEmbeddable: { element: import("@excalidraw/element/types").NonDeletedExcalidrawElement; state: "hover" | "active"; } | null; newElement: import("@excalidraw/element/types").NonDeleted | null; resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null; multiElement: import("@excalidraw/element/types").NonDeleted | null; selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null; isBindingEnabled: boolean; boxSelectionMode: import("../types").BoxSelectionMode; bindingPreference: "enabled" | "disabled"; isMidpointSnappingEnabled: boolean; startBoundElement: import("@excalidraw/element/types").NonDeleted | null; suggestedBinding: { element: import("@excalidraw/element/types").NonDeleted; midPoint?: import("@excalidraw/math").GlobalPoint; } | null; frameToHighlight: import("@excalidraw/element/types").NonDeleted | null; frameRendering: { enabled: boolean; name: boolean; outline: boolean; clip: boolean; markerName: boolean; markerEnabled: boolean; }; editingFrame: string | null; elementsToHighlight: import("@excalidraw/element/types").NonDeleted[] | null; editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null; activeTool: { lastActiveTool: import("../types").ActiveTool | null; locked: boolean; fromSelection: boolean; } & import("../types").ActiveTool; preferredSelectionTool: { type: "selection" | "lasso"; initialized: boolean; }; penMode: boolean; penDetected: boolean; exportBackground: boolean; exportEmbedScene: boolean; exportWithDarkMode: boolean; exportScale: number; currentItemStrokeColor: string; currentItemBackgroundColor: string; currentItemFillStyle: ExcalidrawElement["fillStyle"]; currentItemStrokeWidth: number; currentItemStrokeStyle: ExcalidrawElement["strokeStyle"]; currentItemRoughness: number; currentItemOpacity: number; currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues; currentItemFontSize: number; currentItemTextAlign: import("@excalidraw/element/types").TextAlign; currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null; currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null; currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null; currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness; currentItemArrowType: "sharp" | "round" | "elbow"; currentItemFrameRole: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["frameRole"] | null; viewBackgroundColor: string; cursorButton: "up" | "down"; scrolledOutside: boolean; name: string | null; isResizing: boolean; isRotating: boolean; openMenu: "canvas" | "shape" | null; openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null; openSidebar: { name: import("../types").SidebarName; tab?: import("../types").SidebarTabName; } | null; openDialog: null | { name: "imageExport" | "help" | "jsonExport"; } | { name: "ttd"; tab: "text-to-diagram" | "mermaid"; } | { name: "commandPalette"; } | { name: "settings"; } | { name: "elementLinkSelector"; sourceElementId: ExcalidrawElement["id"]; } | { name: "charts"; data: import("../charts").Spreadsheet; rawText: string; }; defaultSidebarDockedPreference: boolean; lastPointerDownWith: import("@excalidraw/element/types").PointerType; selectedElementIds: Readonly<{ [id: string]: true; }>; hoveredElementIds: Readonly<{ [id: string]: true; }>; previousSelectedElementIds: { [id: string]: true; }; selectedElementsAreBeingDragged: boolean; shouldCacheIgnoreZoom: boolean; toast: { message: React.ReactNode; closable?: boolean; duration?: number; } | null; zenModeEnabled: boolean; theme: import("@excalidraw/element/types").Theme; gridSize: number; gridStep: number; gridModeEnabled: boolean; viewModeEnabled: boolean; selectedGroupIds: { [groupId: string]: boolean; }; editingGroupId: import("@excalidraw/element/types").GroupId | null; width: number; height: number; offsetTop: number; offsetLeft: number; fileHandle: FileSystemFileHandle | null; collaborators: Map; stats: { open: boolean; panels: number; }; showHyperlinkPopup: false | "info" | "editor"; linkOpacity: number; colorPalette?: { canvasBackground: import("@excalidraw/common").ColorPaletteCustom; elementBackground: import("@excalidraw/common").ColorPaletteCustom; elementStroke: import("@excalidraw/common").ColorPaletteCustom; topPicks: { canvasBackground: [string, string, string, string, string]; elementStroke: [string, string, string, string, string]; elementBackground: [string, string, string, string, string]; }; }; allowWheelZoom?: boolean; allowPinchZoom?: boolean; disableContextMenu: boolean; pinnedScripts?: string[]; customPens?: any[]; currentStrokeOptions?: any; resetCustomPen?: any; gridColor: { Bold: string; Regular: string; }; gridDirection: { horizontal: boolean; vertical: boolean; }; highlightSearchResult: boolean; dynamicStyle: { [x: string]: string; }; frameColor: { stroke: string; fill: string; nameColor: string; }; selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null; snapLines: readonly import("../snapping").SnapLine[]; originSnapOffset: { x: number; y: number; } | null; objectsSnapModeEnabled: boolean; userToFollow: import("../types").UserToFollow | null; followedBy: Set; isCropping: boolean; croppingElementId: ExcalidrawElement["id"] | null; searchMatches: Readonly<{ focusedId: ExcalidrawElement["id"] | null; matches: readonly import("../types").SearchMatch[]; }> | null; activeLockedId: string | null; lockedMultiSelections: { [groupId: string]: true; }; bindMode: import("@excalidraw/element/types").BindMode; }; commitToHistory: boolean; };