UNPKG

@marcosnbj/excalidraw

Version:
1,102 lines (1,101 loc) 66.2 kB
import { ExcalidrawElement } from "../element/types"; import { AppState, NormalizedZoomValue } from "../types"; export declare const actionChangeViewBackgroundColor: { name: "changeViewBackgroundColor"; trackEvent: false; predicate: (elements: readonly ExcalidrawElement[], appState: AppState, props: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean; perform: (_: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: any) => { appState: any; commitToHistory: boolean; }; PanelComponent: ({ elements, appState, updateData, appProps }: import("./types").PanelComponentProps) => JSX.Element; } & { keyTest?: undefined; }; export declare const actionClearCanvas: { name: "clearCanvas"; trackEvent: { category: "canvas"; }; predicate: (elements: readonly ExcalidrawElement[], appState: AppState, props: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean; perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, _: any, app: import("../types").AppClassProperties) => { elements: ExcalidrawElement[]; appState: { files: {}; theme: import("../element/types").Theme; penMode: boolean; penDetected: boolean; exportBackground: boolean; exportEmbedScene: boolean; gridSize: number | null; showStats: boolean; pasteDialog: { shown: false; data: null; } | { shown: true; data: import("../charts").Spreadsheet; }; activeTool: { lastActiveTool: import("../types").ActiveTool | null; locked: boolean; } & import("../types").ActiveTool; contextMenu: { items: import("../components/ContextMenu").ContextMenuItems; top: number; left: number; } | null; showWelcomeScreen: boolean; isLoading: boolean; errorMessage: import("react").ReactNode; activeEmbeddable: { element: import("../element/types").NonDeletedExcalidrawElement; state: "active" | "hover"; } | null; draggingElement: import("../element/types").NonDeletedExcalidrawElement | null; resizingElement: import("../element/types").NonDeletedExcalidrawElement | null; multiElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawLinearElement> | null; selectionElement: import("../element/types").NonDeletedExcalidrawElement | null; isBindingEnabled: boolean; startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null; suggestedBindings: import("../element/binding").SuggestedBinding[]; frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null; frameRendering: { enabled: boolean; name: boolean; outline: boolean; clip: boolean; }; editingFrame: string | null; elementsToHighlight: import("../element/types").NonDeleted<ExcalidrawElement>[] | null; editingElement: import("../element/types").NonDeletedExcalidrawElement | null; editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null; exportWithDarkMode: boolean; exportScale: number; currentItemStrokeColor: string; currentItemBackgroundColor: string; currentItemFillStyle: import("../element/types").FillStyle; currentItemStrokeWidth: number; currentItemStrokeStyle: import("../element/types").StrokeStyle; currentItemRoughness: number; currentItemOpacity: number; currentItemFontFamily: number; currentItemFontSize: number; currentItemTextAlign: string; currentItemStartArrowhead: import("../element/types").Arrowhead | null; currentItemEndArrowhead: import("../element/types").Arrowhead | null; currentItemRoundness: import("../element/types").StrokeRoundness; viewBackgroundColor: string; scrollX: number; scrollY: number; cursorButton: "up" | "down"; scrolledOutside: boolean; name: string; isResizing: boolean; isRotating: boolean; zoom: Readonly<{ value: NormalizedZoomValue; }>; openMenu: "canvas" | "shape" | null; openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | null; openSidebar: { name: string; tab?: string | undefined; } | null; openDialog: "mermaid" | "imageExport" | "help" | "jsonExport" | null; defaultSidebarDockedPreference: boolean; lastPointerDownWith: import("../element/types").PointerType; selectedElementIds: Readonly<{ [id: string]: true; }>; previousSelectedElementIds: { [id: string]: true; }; selectedElementsAreBeingDragged: boolean; shouldCacheIgnoreZoom: boolean; toast: { message: string; closable?: boolean | undefined; duration?: number | undefined; } | null; zenModeEnabled: boolean; viewModeEnabled: boolean; selectedGroupIds: { [groupId: string]: boolean; }; editingGroupId: string | null; fileHandle: import("browser-fs-access").FileSystemHandle | null; collaborators: Map<string, import("../types").Collaborator>; currentChartType: import("../element/types").ChartType; pendingImageElementId: string | null; showHyperlinkPopup: false | "editor" | "info"; selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null; snapLines: readonly import("../snapping").SnapLine[]; originSnapOffset: { x: number; y: number; } | null; objectsSnapModeEnabled: boolean; }; commitToHistory: true; }; } & { keyTest?: undefined; }; export declare const actionZoomIn: { name: "zoomIn"; viewMode: true; trackEvent: { category: "canvas"; }; perform: (_elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, _: any, app: import("../types").AppClassProperties) => { appState: { scrollX: number; scrollY: number; zoom: { value: NormalizedZoomValue; }; contextMenu: { items: import("../components/ContextMenu").ContextMenuItems; top: number; left: number; } | null; showWelcomeScreen: boolean; isLoading: boolean; errorMessage: import("react").ReactNode; activeEmbeddable: { element: import("../element/types").NonDeletedExcalidrawElement; state: "active" | "hover"; } | null; draggingElement: import("../element/types").NonDeletedExcalidrawElement | null; resizingElement: import("../element/types").NonDeletedExcalidrawElement | null; multiElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawLinearElement> | null; selectionElement: import("../element/types").NonDeletedExcalidrawElement | null; isBindingEnabled: boolean; startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null; suggestedBindings: import("../element/binding").SuggestedBinding[]; frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null; frameRendering: { enabled: boolean; name: boolean; outline: boolean; clip: boolean; }; editingFrame: string | null; elementsToHighlight: import("../element/types").NonDeleted<ExcalidrawElement>[] | null; editingElement: import("../element/types").NonDeletedExcalidrawElement | null; editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null; activeTool: { lastActiveTool: import("../types").ActiveTool | null; locked: boolean; } & import("../types").ActiveTool; penMode: boolean; penDetected: boolean; exportBackground: boolean; exportEmbedScene: boolean; exportWithDarkMode: boolean; exportScale: number; currentItemStrokeColor: string; currentItemBackgroundColor: string; currentItemFillStyle: import("../element/types").FillStyle; currentItemStrokeWidth: number; currentItemStrokeStyle: import("../element/types").StrokeStyle; currentItemRoughness: number; currentItemOpacity: number; currentItemFontFamily: number; currentItemFontSize: number; currentItemTextAlign: string; currentItemStartArrowhead: import("../element/types").Arrowhead | null; currentItemEndArrowhead: import("../element/types").Arrowhead | null; currentItemRoundness: import("../element/types").StrokeRoundness; viewBackgroundColor: string; cursorButton: "up" | "down"; scrolledOutside: boolean; name: string; isResizing: boolean; isRotating: boolean; openMenu: "canvas" | "shape" | null; openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | null; openSidebar: { name: string; tab?: string | undefined; } | null; openDialog: "mermaid" | "imageExport" | "help" | "jsonExport" | null; defaultSidebarDockedPreference: boolean; lastPointerDownWith: import("../element/types").PointerType; selectedElementIds: Readonly<{ [id: string]: true; }>; previousSelectedElementIds: { [id: string]: true; }; selectedElementsAreBeingDragged: boolean; shouldCacheIgnoreZoom: boolean; toast: { message: string; closable?: boolean | undefined; duration?: number | undefined; } | null; zenModeEnabled: boolean; theme: import("../element/types").Theme; gridSize: number | null; viewModeEnabled: boolean; selectedGroupIds: { [groupId: string]: boolean; }; editingGroupId: string | null; width: number; height: number; offsetTop: number; offsetLeft: number; fileHandle: import("browser-fs-access").FileSystemHandle | null; collaborators: Map<string, import("../types").Collaborator>; showStats: boolean; currentChartType: import("../element/types").ChartType; pasteDialog: { shown: false; data: null; } | { shown: true; data: import("../charts").Spreadsheet; }; pendingImageElementId: string | null; showHyperlinkPopup: false | "editor" | "info"; selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null; snapLines: readonly import("../snapping").SnapLine[]; originSnapOffset: { x: number; y: number; } | null; objectsSnapModeEnabled: boolean; }; commitToHistory: false; }; PanelComponent: ({ updateData }: import("./types").PanelComponentProps) => JSX.Element; keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean; } & { keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined; }; export declare const actionZoomOut: { name: "zoomOut"; viewMode: true; trackEvent: { category: "canvas"; }; perform: (_elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, _: any, app: import("../types").AppClassProperties) => { appState: { scrollX: number; scrollY: number; zoom: { value: NormalizedZoomValue; }; contextMenu: { items: import("../components/ContextMenu").ContextMenuItems; top: number; left: number; } | null; showWelcomeScreen: boolean; isLoading: boolean; errorMessage: import("react").ReactNode; activeEmbeddable: { element: import("../element/types").NonDeletedExcalidrawElement; state: "active" | "hover"; } | null; draggingElement: import("../element/types").NonDeletedExcalidrawElement | null; resizingElement: import("../element/types").NonDeletedExcalidrawElement | null; multiElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawLinearElement> | null; selectionElement: import("../element/types").NonDeletedExcalidrawElement | null; isBindingEnabled: boolean; startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null; suggestedBindings: import("../element/binding").SuggestedBinding[]; frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null; frameRendering: { enabled: boolean; name: boolean; outline: boolean; clip: boolean; }; editingFrame: string | null; elementsToHighlight: import("../element/types").NonDeleted<ExcalidrawElement>[] | null; editingElement: import("../element/types").NonDeletedExcalidrawElement | null; editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null; activeTool: { lastActiveTool: import("../types").ActiveTool | null; locked: boolean; } & import("../types").ActiveTool; penMode: boolean; penDetected: boolean; exportBackground: boolean; exportEmbedScene: boolean; exportWithDarkMode: boolean; exportScale: number; currentItemStrokeColor: string; currentItemBackgroundColor: string; currentItemFillStyle: import("../element/types").FillStyle; currentItemStrokeWidth: number; currentItemStrokeStyle: import("../element/types").StrokeStyle; currentItemRoughness: number; currentItemOpacity: number; currentItemFontFamily: number; currentItemFontSize: number; currentItemTextAlign: string; currentItemStartArrowhead: import("../element/types").Arrowhead | null; currentItemEndArrowhead: import("../element/types").Arrowhead | null; currentItemRoundness: import("../element/types").StrokeRoundness; viewBackgroundColor: string; cursorButton: "up" | "down"; scrolledOutside: boolean; name: string; isResizing: boolean; isRotating: boolean; openMenu: "canvas" | "shape" | null; openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | null; openSidebar: { name: string; tab?: string | undefined; } | null; openDialog: "mermaid" | "imageExport" | "help" | "jsonExport" | null; defaultSidebarDockedPreference: boolean; lastPointerDownWith: import("../element/types").PointerType; selectedElementIds: Readonly<{ [id: string]: true; }>; previousSelectedElementIds: { [id: string]: true; }; selectedElementsAreBeingDragged: boolean; shouldCacheIgnoreZoom: boolean; toast: { message: string; closable?: boolean | undefined; duration?: number | undefined; } | null; zenModeEnabled: boolean; theme: import("../element/types").Theme; gridSize: number | null; viewModeEnabled: boolean; selectedGroupIds: { [groupId: string]: boolean; }; editingGroupId: string | null; width: number; height: number; offsetTop: number; offsetLeft: number; fileHandle: import("browser-fs-access").FileSystemHandle | null; collaborators: Map<string, import("../types").Collaborator>; showStats: boolean; currentChartType: import("../element/types").ChartType; pasteDialog: { shown: false; data: null; } | { shown: true; data: import("../charts").Spreadsheet; }; pendingImageElementId: string | null; showHyperlinkPopup: false | "editor" | "info"; selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null; snapLines: readonly import("../snapping").SnapLine[]; originSnapOffset: { x: number; y: number; } | null; objectsSnapModeEnabled: boolean; }; commitToHistory: false; }; PanelComponent: ({ updateData }: import("./types").PanelComponentProps) => JSX.Element; keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean; } & { keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined; }; export declare const actionResetZoom: { name: "resetZoom"; viewMode: true; trackEvent: { category: "canvas"; }; perform: (_elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, _: any, app: import("../types").AppClassProperties) => { appState: { scrollX: number; scrollY: number; zoom: { value: NormalizedZoomValue; }; contextMenu: { items: import("../components/ContextMenu").ContextMenuItems; top: number; left: number; } | null; showWelcomeScreen: boolean; isLoading: boolean; errorMessage: import("react").ReactNode; activeEmbeddable: { element: import("../element/types").NonDeletedExcalidrawElement; state: "active" | "hover"; } | null; draggingElement: import("../element/types").NonDeletedExcalidrawElement | null; resizingElement: import("../element/types").NonDeletedExcalidrawElement | null; multiElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawLinearElement> | null; selectionElement: import("../element/types").NonDeletedExcalidrawElement | null; isBindingEnabled: boolean; startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null; suggestedBindings: import("../element/binding").SuggestedBinding[]; frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null; frameRendering: { enabled: boolean; name: boolean; outline: boolean; clip: boolean; }; editingFrame: string | null; elementsToHighlight: import("../element/types").NonDeleted<ExcalidrawElement>[] | null; editingElement: import("../element/types").NonDeletedExcalidrawElement | null; editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null; activeTool: { lastActiveTool: import("../types").ActiveTool | null; locked: boolean; } & import("../types").ActiveTool; penMode: boolean; penDetected: boolean; exportBackground: boolean; exportEmbedScene: boolean; exportWithDarkMode: boolean; exportScale: number; currentItemStrokeColor: string; currentItemBackgroundColor: string; currentItemFillStyle: import("../element/types").FillStyle; currentItemStrokeWidth: number; currentItemStrokeStyle: import("../element/types").StrokeStyle; currentItemRoughness: number; currentItemOpacity: number; currentItemFontFamily: number; currentItemFontSize: number; currentItemTextAlign: string; currentItemStartArrowhead: import("../element/types").Arrowhead | null; currentItemEndArrowhead: import("../element/types").Arrowhead | null; currentItemRoundness: import("../element/types").StrokeRoundness; viewBackgroundColor: string; cursorButton: "up" | "down"; scrolledOutside: boolean; name: string; isResizing: boolean; isRotating: boolean; openMenu: "canvas" | "shape" | null; openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | null; openSidebar: { name: string; tab?: string | undefined; } | null; openDialog: "mermaid" | "imageExport" | "help" | "jsonExport" | null; defaultSidebarDockedPreference: boolean; lastPointerDownWith: import("../element/types").PointerType; selectedElementIds: Readonly<{ [id: string]: true; }>; previousSelectedElementIds: { [id: string]: true; }; selectedElementsAreBeingDragged: boolean; shouldCacheIgnoreZoom: boolean; toast: { message: string; closable?: boolean | undefined; duration?: number | undefined; } | null; zenModeEnabled: boolean; theme: import("../element/types").Theme; gridSize: number | null; viewModeEnabled: boolean; selectedGroupIds: { [groupId: string]: boolean; }; editingGroupId: string | null; width: number; height: number; offsetTop: number; offsetLeft: number; fileHandle: import("browser-fs-access").FileSystemHandle | null; collaborators: Map<string, import("../types").Collaborator>; showStats: boolean; currentChartType: import("../element/types").ChartType; pasteDialog: { shown: false; data: null; } | { shown: true; data: import("../charts").Spreadsheet; }; pendingImageElementId: string | null; showHyperlinkPopup: false | "editor" | "info"; selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null; snapLines: readonly import("../snapping").SnapLine[]; originSnapOffset: { x: number; y: number; } | null; objectsSnapModeEnabled: boolean; }; commitToHistory: false; }; PanelComponent: ({ updateData, appState }: import("./types").PanelComponentProps) => JSX.Element; keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean; } & { keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined; }; export declare const zoomToFit: ({ targetElements, appState, fitToViewport, viewportZoomFactor, }: { targetElements: readonly ExcalidrawElement[]; appState: Readonly<AppState>; /** whether to fit content to viewport (beyond >100%) */ fitToViewport: boolean; /** zoom content to cover X of the viewport, when fitToViewport=true */ viewportZoomFactor?: number | undefined; }) => { appState: { scrollX: number; scrollY: number; zoom: { value: NormalizedZoomValue; }; contextMenu: { items: import("../components/ContextMenu").ContextMenuItems; top: number; left: number; } | null; showWelcomeScreen: boolean; isLoading: boolean; errorMessage: import("react").ReactNode; activeEmbeddable: { element: import("../element/types").NonDeletedExcalidrawElement; state: "active" | "hover"; } | null; draggingElement: import("../element/types").NonDeletedExcalidrawElement | null; resizingElement: import("../element/types").NonDeletedExcalidrawElement | null; multiElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawLinearElement> | null; selectionElement: import("../element/types").NonDeletedExcalidrawElement | null; isBindingEnabled: boolean; startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null; suggestedBindings: import("../element/binding").SuggestedBinding[]; frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null; frameRendering: { enabled: boolean; name: boolean; outline: boolean; clip: boolean; }; editingFrame: string | null; elementsToHighlight: import("../element/types").NonDeleted<ExcalidrawElement>[] | null; editingElement: import("../element/types").NonDeletedExcalidrawElement | null; editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null; activeTool: { lastActiveTool: import("../types").ActiveTool | null; locked: boolean; } & import("../types").ActiveTool; penMode: boolean; penDetected: boolean; exportBackground: boolean; exportEmbedScene: boolean; exportWithDarkMode: boolean; exportScale: number; currentItemStrokeColor: string; currentItemBackgroundColor: string; currentItemFillStyle: import("../element/types").FillStyle; currentItemStrokeWidth: number; currentItemStrokeStyle: import("../element/types").StrokeStyle; currentItemRoughness: number; currentItemOpacity: number; currentItemFontFamily: number; currentItemFontSize: number; currentItemTextAlign: string; currentItemStartArrowhead: import("../element/types").Arrowhead | null; currentItemEndArrowhead: import("../element/types").Arrowhead | null; currentItemRoundness: import("../element/types").StrokeRoundness; viewBackgroundColor: string; cursorButton: "up" | "down"; scrolledOutside: boolean; name: string; isResizing: boolean; isRotating: boolean; openMenu: "canvas" | "shape" | null; openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | null; openSidebar: { name: string; tab?: string | undefined; } | null; openDialog: "mermaid" | "imageExport" | "help" | "jsonExport" | null; defaultSidebarDockedPreference: boolean; lastPointerDownWith: import("../element/types").PointerType; selectedElementIds: Readonly<{ [id: string]: true; }>; previousSelectedElementIds: { [id: string]: true; }; selectedElementsAreBeingDragged: boolean; shouldCacheIgnoreZoom: boolean; toast: { message: string; closable?: boolean | undefined; duration?: number | undefined; } | null; zenModeEnabled: boolean; theme: import("../element/types").Theme; gridSize: number | null; viewModeEnabled: boolean; selectedGroupIds: { [groupId: string]: boolean; }; editingGroupId: string | null; width: number; height: number; offsetTop: number; offsetLeft: number; fileHandle: import("browser-fs-access").FileSystemHandle | null; collaborators: Map<string, import("../types").Collaborator>; showStats: boolean; currentChartType: import("../element/types").ChartType; pasteDialog: { shown: false; data: null; } | { shown: true; data: import("../charts").Spreadsheet; }; pendingImageElementId: string | null; showHyperlinkPopup: false | "editor" | "info"; selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null; snapLines: readonly import("../snapping").SnapLine[]; originSnapOffset: { x: number; y: number; } | null; objectsSnapModeEnabled: boolean; }; commitToHistory: boolean; }; export declare const actionZoomToFitSelectionInViewport: { name: "zoomToFitSelectionInViewport"; trackEvent: { category: "canvas"; }; perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, _: any, app: import("../types").AppClassProperties) => { appState: { scrollX: number; scrollY: number; zoom: { value: NormalizedZoomValue; }; contextMenu: { items: import("../components/ContextMenu").ContextMenuItems; top: number; left: number; } | null; showWelcomeScreen: boolean; isLoading: boolean; errorMessage: import("react").ReactNode; activeEmbeddable: { element: import("../element/types").NonDeletedExcalidrawElement; state: "active" | "hover"; } | null; draggingElement: import("../element/types").NonDeletedExcalidrawElement | null; resizingElement: import("../element/types").NonDeletedExcalidrawElement | null; multiElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawLinearElement> | null; selectionElement: import("../element/types").NonDeletedExcalidrawElement | null; isBindingEnabled: boolean; startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null; suggestedBindings: import("../element/binding").SuggestedBinding[]; frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null; frameRendering: { enabled: boolean; name: boolean; outline: boolean; clip: boolean; }; editingFrame: string | null; elementsToHighlight: import("../element/types").NonDeleted<ExcalidrawElement>[] | null; editingElement: import("../element/types").NonDeletedExcalidrawElement | null; editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null; activeTool: { lastActiveTool: import("../types").ActiveTool | null; locked: boolean; } & import("../types").ActiveTool; penMode: boolean; penDetected: boolean; exportBackground: boolean; exportEmbedScene: boolean; exportWithDarkMode: boolean; exportScale: number; currentItemStrokeColor: string; currentItemBackgroundColor: string; currentItemFillStyle: import("../element/types").FillStyle; currentItemStrokeWidth: number; currentItemStrokeStyle: import("../element/types").StrokeStyle; currentItemRoughness: number; currentItemOpacity: number; currentItemFontFamily: number; currentItemFontSize: number; currentItemTextAlign: string; currentItemStartArrowhead: import("../element/types").Arrowhead | null; currentItemEndArrowhead: import("../element/types").Arrowhead | null; currentItemRoundness: import("../element/types").StrokeRoundness; viewBackgroundColor: string; cursorButton: "up" | "down"; scrolledOutside: boolean; name: string; isResizing: boolean; isRotating: boolean; openMenu: "canvas" | "shape" | null; openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | null; openSidebar: { name: string; tab?: string | undefined; } | null; openDialog: "mermaid" | "imageExport" | "help" | "jsonExport" | null; defaultSidebarDockedPreference: boolean; lastPointerDownWith: import("../element/types").PointerType; selectedElementIds: Readonly<{ [id: string]: true; }>; previousSelectedElementIds: { [id: string]: true; }; selectedElementsAreBeingDragged: boolean; shouldCacheIgnoreZoom: boolean; toast: { message: string; closable?: boolean | undefined; duration?: number | undefined; } | null; zenModeEnabled: boolean; theme: import("../element/types").Theme; gridSize: number | null; viewModeEnabled: boolean; selectedGroupIds: { [groupId: string]: boolean; }; editingGroupId: string | null; width: number; height: number; offsetTop: number; offsetLeft: number; fileHandle: import("browser-fs-access").FileSystemHandle | null; collaborators: Map<string, import("../types").Collaborator>; showStats: boolean; currentChartType: import("../element/types").ChartType; pasteDialog: { shown: false; data: null; } | { shown: true; data: import("../charts").Spreadsheet; }; pendingImageElementId: string | null; showHyperlinkPopup: false | "editor" | "info"; selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null; snapLines: readonly import("../snapping").SnapLine[]; originSnapOffset: { x: number; y: number; } | null; objectsSnapModeEnabled: boolean; }; commitToHistory: boolean; }; keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean; } & { keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined; }; export declare const actionZoomToFitSelection: { name: "zoomToFitSelection"; trackEvent: { category: "canvas"; }; perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, _: any, app: import("../types").AppClassProperties) => { appState: { scrollX: number; scrollY: number; zoom: { value: NormalizedZoomValue; }; contextMenu: { items: import("../components/ContextMenu").ContextMenuItems; top: number; left: number; } | null; showWelcomeScreen: boolean; isLoading: boolean; errorMessage: import("react").ReactNode; activeEmbeddable: { element: import("../element/types").NonDeletedExcalidrawElement; state: "active" | "hover"; } | null; draggingElement: import("../element/types").NonDeletedExcalidrawElement | null; resizingElement: import("../element/types").NonDeletedExcalidrawElement | null; multiElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawLinearElement> | null; selectionElement: import("../element/types").NonDeletedExcalidrawElement | null; isBindingEnabled: boolean; startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null; suggestedBindings: import("../element/binding").SuggestedBinding[]; frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null; frameRendering: { enabled: boolean; name: boolean; outline: boolean; clip: boolean; }; editingFrame: string | null; elementsToHighlight: import("../element/types").NonDeleted<ExcalidrawElement>[] | null; editingElement: import("../element/types").NonDeletedExcalidrawElement | null; editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null; activeTool: { lastActiveTool: import("../types").ActiveTool | null; locked: boolean; } & import("../types").ActiveTool; penMode: boolean; penDetected: boolean; exportBackground: boolean; exportEmbedScene: boolean; exportWithDarkMode: boolean; exportScale: number; currentItemStrokeColor: string; currentItemBackgroundColor: string; currentItemFillStyle: import("../element/types").FillStyle; currentItemStrokeWidth: number; currentItemStrokeStyle: import("../element/types").StrokeStyle; currentItemRoughness: number; currentItemOpacity: number; currentItemFontFamily: number; currentItemFontSize: number; currentItemTextAlign: string; currentItemStartArrowhead: import("../element/types").Arrowhead | null; currentItemEndArrowhead: import("../element/types").Arrowhead | null; currentItemRoundness: import("../element/types").StrokeRoundness; viewBackgroundColor: string; cursorButton: "up" | "down"; scrolledOutside: boolean; name: string; isResizing: boolean; isRotating: boolean; openMenu: "canvas" | "shape" | null; openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | null; openSidebar: { name: string; tab?: string | undefined; } | null; openDialog: "mermaid" | "imageExport" | "help" | "jsonExport" | null; defaultSidebarDockedPreference: boolean; lastPointerDownWith: import("../element/types").PointerType; selectedElementIds: Readonly<{ [id: string]: true; }>; previousSelectedElementIds: { [id: string]: true; }; selectedElementsAreBeingDragged: boolean; shouldCacheIgnoreZoom: boolean; toast: { message: string; closable?: boolean | undefined; duration?: number | undefined; } | null; zenModeEnabled: boolean; theme: import("../element/types").Theme; gridSize: number | null; viewModeEnabled: boolean; selectedGroupIds: { [groupId: string]: boolean; }; editingGroupId: string | null; width: number; height: number; offsetTop: number; offsetLeft: number; fileHandle: import("browser-fs-access").FileSystemHandle | null; collaborators: Map<string, import("../types").Collaborator>; showStats: boolean; currentChartType: import("../element/types").ChartType; pasteDialog: { shown: false; data: null; } | { shown: true; data: import("../charts").Spreadsheet; }; pendingImageElementId: string | null; showHyperlinkPopup: false | "editor" | "info"; selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null; snapLines: readonly import("../snapping").SnapLine[]; originSnapOffset: { x: number; y: number; } | null; objectsSnapModeEnabled: boolean; }; commitToHistory: boolean; }; keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean; } & { keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined; }; export declare const actionZoomToFit: { name: "zoomToFit"; viewMode: true; trackEvent: { category: "canvas"; }; perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>) => { appState: { scrollX: number; scrollY: number; zoom: { value: NormalizedZoomValue; }; contextMenu: { items: import("../components/ContextMenu").ContextMenuItems; top: number; left: number; } | null; showWelcomeScreen: boolean; isLoading: boolean; errorMessage: import("react").ReactNode; activeEmbeddable: { element: import("../element/types").NonDeletedExcalidrawElement; state: "active" | "hover"; } | null; draggingElement: import("../element/types").NonDeletedExcalidrawElement | null; resizingElement: import("../element/types").NonDeletedExcalidrawElement | null; multiElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawLinearElement> | null; selectionElement: import("../element/types").NonDeletedExcalidrawElement | null; isBindingEnabled: boolean; startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null; suggestedBindings: import("../element/binding").SuggestedBinding[]; frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null; frameRendering: { enabled: boolean; name: boolean; outline: boolean; clip: boolean; }; editingFrame: string | null; elementsToHighlight: import("../element/types").NonDeleted<ExcalidrawElement>[] | null; editingElement: import("../element/types").NonDeletedExcalidrawElement | null; editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null; activeTool: { lastActiveTool: import("../types").ActiveTool | null; locked: boolean; } & import("../types").ActiveTool; penMode: boolean; penDetected: boolean; exportBackground: boolean; exportEmbedScene: boolean; exportWithDarkMode: boolean; exportScale: number; currentItemStrokeColor: string; currentItemBackgroundColor: string; currentItemFillStyle: import("../element/types").FillStyle; currentItemStrokeWidth: number; currentItemStrokeStyle: import("../element/types").StrokeStyle; currentItemRoughness: number; currentItemOpacity: number; currentItemFontFamily: number; currentItemFontSize: number; currentItemTextAlign: string; currentItemStartArrowhead: import("../element/types").Arrowhead | null; currentItemEndArrowhead: import("../element/types").Arrowhead | null; currentItemRoundness: import("../element/types").StrokeRoundness; viewBackgroundColor: string; cursorButton: "up" | "down"; scrolledOutside: boolean; name: string; isResizing: boolean; isRotating: boolean; openMenu: "canvas" | "shape" | null; openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | null; openSidebar: { name: string; tab?: string | undefined; } | null; openDialog: "mermaid" | "imageExport" | "help" | "jsonExport" | null; defaultSidebarDockedPreference: boolean; lastPointerDownWith: import("../element/types").PointerType; selectedElementIds: Readonly<{ [id: string]: true; }>; previousSelectedElementIds: { [id: string]: true; }; selectedElementsAreBeingDragged: boolean; shouldCacheIgnoreZoom: boolean; toast: { message: string; closable?: boolean | undefined; duration?: number | undefined; } | null; zenModeEnabled: boolean; theme: import("../element/types").Theme; gridSize: number | null; viewModeEnabled: boolean; selectedGroupIds: { [groupId: string]: boolean; }; editingGroupId: string | null; width: number; height: number; offsetTop: number; offsetLeft: number; fileHandle: import("browser-fs-access").FileSystemHandle | null; collaborators: Map<string, import("../types").Collaborator>; showStats: boolean; currentChartType: import("../element/types").ChartType; pasteDialog: { shown: false; data: null; } | { shown: true; data: import("../charts").Spreadsheet; }; pendingImageElementId: string | null; showHyperlinkPopup: false | "editor" | "info"; selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null; snapLines: readonly import("../snapping").SnapLine[]; originSnapOffset: { x: number; y: number; } | null; objectsSnapModeEnabled: boolean; }; commitToHistory: boolean; }; keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean; } & { keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined; }; export declare const actionToggleTheme: { name: "toggleTheme"; viewMode: true; trackEvent: { category: "canvas"; }; perform: (_: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: any) => { appState: { theme: any; contextMenu: { items: import("../components/ContextMenu").ContextMenuItems; top: number; left: number; } | null; showWelcomeScreen: boolean; isLoading: boolean; errorMessage: import("react").ReactNode; activeEmbeddable: { element: import("../element/types").NonDeletedExcalidrawElement; state: "active" | "hover"; } | null; draggingElement: import("../element/types").NonDeletedExcalidrawElement | null; resizingElement: import("../element/types").NonDeletedExcalidrawElement | null; multiElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawLinearElement> | null; selectionElement: import("../element/types").NonDeletedExcalidrawElement | null; isBindingEnabled: boolean; startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null; suggestedBindings: import("../element/binding").SuggestedBinding[];