///
import "../components/ToolIcon.scss";
export declare const actionChangeProjectName: {
name: "changeProjectName";
trackEvent: false;
perform: (_elements: readonly import("../element/types").ExcalidrawElement[], appState: Readonly, value: any) => {
appState: {
name: any;
isLoading: boolean;
errorMessage: string | null;
draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
multiElement: import("../element/types").NonDeleted | null;
selectionElement: import("../element/types").NonDeletedExcalidrawElement | null;
isBindingEnabled: boolean;
startBoundElement: import("../element/types").NonDeleted | null;
suggestedBindings: import("../element/binding").SuggestedBinding[];
editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
activeTool: {
type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
locked: boolean;
customType: null;
} | {
type: "custom";
customType: string;
lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
locked: boolean;
};
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: import("../element/types").TextAlign;
currentItemStrokeSharpness: import("../element/types").StrokeSharpness;
currentItemStartArrowhead: import("../element/types").Arrowhead | null;
currentItemEndArrowhead: import("../element/types").Arrowhead | null;
currentItemLinearStrokeSharpness: import("../element/types").StrokeSharpness;
viewBackgroundColor: string;
scrollX: number;
scrollY: number;
cursorButton: "up" | "down";
scrolledOutside: boolean;
isResizing: boolean;
isRotating: boolean;
zoom: Readonly<{
value: import("../types").NormalizedZoomValue;
}>;
openMenu: "canvas" | "shape" | null;
openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
lastPointerDownWith: import("../element/types").PointerType;
selectedElementIds: {
[id: string]: boolean;
};
previousSelectedElementIds: {
[id: string]: boolean;
};
shouldCacheIgnoreZoom: boolean;
showHelpDialog: boolean;
toastMessage: string | null;
zenModeEnabled: boolean;
theme: string;
gridSize: number | null;
viewModeEnabled: boolean;
selectedGroupIds: {
[groupId: string]: boolean;
};
editingGroupId: string | null;
width: number;
height: number;
offsetTop: number;
offsetLeft: number;
isLibraryOpen: boolean;
isLibraryMenuDocked: boolean;
fileHandle: import("browser-fs-access").FileSystemHandle | null;
collaborators: Map;
showStats: boolean;
currentChartType: import("../element/types").ChartType;
pasteDialog: {
shown: false;
data: null;
} | {
shown: true;
data: import("../charts").Spreadsheet;
};
pendingImageElementId: string | null;
showHyperlinkPopup: false | "info" | "editor";
};
commitToHistory: false;
};
PanelComponent: ({ appState, updateData, appProps }: import("react").PropsWithChildren) => JSX.Element;
} & {
keyTest?: undefined;
};
export declare const actionChangeExportScale: {
name: "changeExportScale";
trackEvent: {
category: "export";
action: string;
};
perform: (_elements: readonly import("../element/types").ExcalidrawElement[], appState: Readonly, value: any) => {
appState: {
exportScale: any;
isLoading: boolean;
errorMessage: string | null;
draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
multiElement: import("../element/types").NonDeleted | null;
selectionElement: import("../element/types").NonDeletedExcalidrawElement | null;
isBindingEnabled: boolean;
startBoundElement: import("../element/types").NonDeleted | null;
suggestedBindings: import("../element/binding").SuggestedBinding[];
editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
activeTool: {
type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
locked: boolean;
customType: null;
} | {
type: "custom";
customType: string;
lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
locked: boolean;
};
penMode: boolean;
penDetected: boolean;
exportBackground: boolean;
exportEmbedScene: boolean;
exportWithDarkMode: boolean;
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: import("../element/types").TextAlign;
currentItemStrokeSharpness: import("../element/types").StrokeSharpness;
currentItemStartArrowhead: import("../element/types").Arrowhead | null;
currentItemEndArrowhead: import("../element/types").Arrowhead | null;
currentItemLinearStrokeSharpness: import("../element/types").StrokeSharpness;
viewBackgroundColor: string;
scrollX: number;
scrollY: number;
cursorButton: "up" | "down";
scrolledOutside: boolean;
name: string;
isResizing: boolean;
isRotating: boolean;
zoom: Readonly<{
value: import("../types").NormalizedZoomValue;
}>;
openMenu: "canvas" | "shape" | null;
openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
lastPointerDownWith: import("../element/types").PointerType;
selectedElementIds: {
[id: string]: boolean;
};
previousSelectedElementIds: {
[id: string]: boolean;
};
shouldCacheIgnoreZoom: boolean;
showHelpDialog: boolean;
toastMessage: string | null;
zenModeEnabled: boolean;
theme: string;
gridSize: number | null;
viewModeEnabled: boolean;
selectedGroupIds: {
[groupId: string]: boolean;
};
editingGroupId: string | null;
width: number;
height: number;
offsetTop: number;
offsetLeft: number;
isLibraryOpen: boolean;
isLibraryMenuDocked: boolean;
fileHandle: import("browser-fs-access").FileSystemHandle | null;
collaborators: Map;
showStats: boolean;
currentChartType: import("../element/types").ChartType;
pasteDialog: {
shown: false;
data: null;
} | {
shown: true;
data: import("../charts").Spreadsheet;
};
pendingImageElementId: string | null;
showHyperlinkPopup: false | "info" | "editor";
};
commitToHistory: false;
};
PanelComponent: ({ elements: allElements, appState, updateData }: import("react").PropsWithChildren) => JSX.Element;
} & {
keyTest?: undefined;
};
export declare const actionChangeExportBackground: {
name: "changeExportBackground";
trackEvent: {
category: "export";
action: string;
};
perform: (_elements: readonly import("../element/types").ExcalidrawElement[], appState: Readonly, value: any) => {
appState: {
exportBackground: any;
isLoading: boolean;
errorMessage: string | null;
draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
multiElement: import("../element/types").NonDeleted | null;
selectionElement: import("../element/types").NonDeletedExcalidrawElement | null;
isBindingEnabled: boolean;
startBoundElement: import("../element/types").NonDeleted | null;
suggestedBindings: import("../element/binding").SuggestedBinding[];
editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
activeTool: {
type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
locked: boolean;
customType: null;
} | {
type: "custom";
customType: string;
lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
locked: boolean;
};
penMode: boolean;
penDetected: 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: import("../element/types").TextAlign;
currentItemStrokeSharpness: import("../element/types").StrokeSharpness;
currentItemStartArrowhead: import("../element/types").Arrowhead | null;
currentItemEndArrowhead: import("../element/types").Arrowhead | null;
currentItemLinearStrokeSharpness: import("../element/types").StrokeSharpness;
viewBackgroundColor: string;
scrollX: number;
scrollY: number;
cursorButton: "up" | "down";
scrolledOutside: boolean;
name: string;
isResizing: boolean;
isRotating: boolean;
zoom: Readonly<{
value: import("../types").NormalizedZoomValue;
}>;
openMenu: "canvas" | "shape" | null;
openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
lastPointerDownWith: import("../element/types").PointerType;
selectedElementIds: {
[id: string]: boolean;
};
previousSelectedElementIds: {
[id: string]: boolean;
};
shouldCacheIgnoreZoom: boolean;
showHelpDialog: boolean;
toastMessage: string | null;
zenModeEnabled: boolean;
theme: string;
gridSize: number | null;
viewModeEnabled: boolean;
selectedGroupIds: {
[groupId: string]: boolean;
};
editingGroupId: string | null;
width: number;
height: number;
offsetTop: number;
offsetLeft: number;
isLibraryOpen: boolean;
isLibraryMenuDocked: boolean;
fileHandle: import("browser-fs-access").FileSystemHandle | null;
collaborators: Map;
showStats: boolean;
currentChartType: import("../element/types").ChartType;
pasteDialog: {
shown: false;
data: null;
} | {
shown: true;
data: import("../charts").Spreadsheet;
};
pendingImageElementId: string | null;
showHyperlinkPopup: false | "info" | "editor";
};
commitToHistory: false;
};
PanelComponent: ({ appState, updateData }: import("react").PropsWithChildren) => JSX.Element;
} & {
keyTest?: undefined;
};
export declare const actionChangeExportEmbedScene: {
name: "changeExportEmbedScene";
trackEvent: {
category: "export";
action: string;
};
perform: (_elements: readonly import("../element/types").ExcalidrawElement[], appState: Readonly, value: any) => {
appState: {
exportEmbedScene: any;
isLoading: boolean;
errorMessage: string | null;
draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
multiElement: import("../element/types").NonDeleted | null;
selectionElement: import("../element/types").NonDeletedExcalidrawElement | null;
isBindingEnabled: boolean;
startBoundElement: import("../element/types").NonDeleted | null;
suggestedBindings: import("../element/binding").SuggestedBinding[];
editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
activeTool: {
type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
locked: boolean;
customType: null;
} | {
type: "custom";
customType: string;
lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
locked: boolean;
};
penMode: boolean;
penDetected: boolean;
exportBackground: 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: import("../element/types").TextAlign;
currentItemStrokeSharpness: import("../element/types").StrokeSharpness;
currentItemStartArrowhead: import("../element/types").Arrowhead | null;
currentItemEndArrowhead: import("../element/types").Arrowhead | null;
currentItemLinearStrokeSharpness: import("../element/types").StrokeSharpness;
viewBackgroundColor: string;
scrollX: number;
scrollY: number;
cursorButton: "up" | "down";
scrolledOutside: boolean;
name: string;
isResizing: boolean;
isRotating: boolean;
zoom: Readonly<{
value: import("../types").NormalizedZoomValue;
}>;
openMenu: "canvas" | "shape" | null;
openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
lastPointerDownWith: import("../element/types").PointerType;
selectedElementIds: {
[id: string]: boolean;
};
previousSelectedElementIds: {
[id: string]: boolean;
};
shouldCacheIgnoreZoom: boolean;
showHelpDialog: boolean;
toastMessage: string | null;
zenModeEnabled: boolean;
theme: string;
gridSize: number | null;
viewModeEnabled: boolean;
selectedGroupIds: {
[groupId: string]: boolean;
};
editingGroupId: string | null;
width: number;
height: number;
offsetTop: number;
offsetLeft: number;
isLibraryOpen: boolean;
isLibraryMenuDocked: boolean;
fileHandle: import("browser-fs-access").FileSystemHandle | null;
collaborators: Map;
showStats: boolean;
currentChartType: import("../element/types").ChartType;
pasteDialog: {
shown: false;
data: null;
} | {
shown: true;
data: import("../charts").Spreadsheet;
};
pendingImageElementId: string | null;
showHyperlinkPopup: false | "info" | "editor";
};
commitToHistory: false;
};
PanelComponent: ({ appState, updateData }: import("react").PropsWithChildren) => JSX.Element;
} & {
keyTest?: undefined;
};
export declare const actionSaveToActiveFile: {
name: "saveToActiveFile";
trackEvent: {
category: "export";
};
perform: (elements: readonly import("../element/types").ExcalidrawElement[], appState: Readonly, value: any, app: import("../types").AppClassProperties) => Promise<{
commitToHistory: false;
appState: {
fileHandle: import("browser-fs-access").FileSystemHandle | null;
toastMessage: string | null;
isLoading: boolean;
errorMessage: string | null;
draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
multiElement: import("../element/types").NonDeleted | null;
selectionElement: import("../element/types").NonDeletedExcalidrawElement | null;
isBindingEnabled: boolean;
startBoundElement: import("../element/types").NonDeleted | null;
suggestedBindings: import("../element/binding").SuggestedBinding[];
editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
activeTool: {
type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
locked: boolean;
customType: null;
} | {
type: "custom";
customType: string;
lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
locked: boolean;
};
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: import("../element/types").TextAlign;
currentItemStrokeSharpness: import("../element/types").StrokeSharpness;
currentItemStartArrowhead: import("../element/types").Arrowhead | null;
currentItemEndArrowhead: import("../element/types").Arrowhead | null;
currentItemLinearStrokeSharpness: import("../element/types").StrokeSharpness;
viewBackgroundColor: string;
scrollX: number;
scrollY: number;
cursorButton: "up" | "down";
scrolledOutside: boolean;
name: string;
isResizing: boolean;
isRotating: boolean;
zoom: Readonly<{
value: import("../types").NormalizedZoomValue;
}>;
openMenu: "canvas" | "shape" | null;
openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
lastPointerDownWith: import("../element/types").PointerType;
selectedElementIds: {
[id: string]: boolean;
};
previousSelectedElementIds: {
[id: string]: boolean;
};
shouldCacheIgnoreZoom: boolean;
showHelpDialog: boolean;
zenModeEnabled: boolean;
theme: string;
gridSize: number | null;
viewModeEnabled: boolean;
selectedGroupIds: {
[groupId: string]: boolean;
};
editingGroupId: string | null;
width: number;
height: number;
offsetTop: number;
offsetLeft: number;
isLibraryOpen: boolean;
isLibraryMenuDocked: boolean;
collaborators: Map;
showStats: boolean;
currentChartType: import("../element/types").ChartType;
pasteDialog: {
shown: false;
data: null;
} | {
shown: true;
data: import("../charts").Spreadsheet;
};
pendingImageElementId: string | null;
showHyperlinkPopup: false | "info" | "editor";
};
} | {
commitToHistory: false;
appState?: undefined;
}>;
keyTest: (event: KeyboardEvent | import("react").KeyboardEvent) => boolean;
PanelComponent: ({ updateData, appState }: import("react").PropsWithChildren) => JSX.Element;
} & {
keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent) => boolean) | undefined;
};
export declare const actionSaveFileToDisk: {
name: "saveFileToDisk";
trackEvent: {
category: "export";
};
perform: (elements: readonly import("../element/types").ExcalidrawElement[], appState: Readonly, value: any, app: import("../types").AppClassProperties) => Promise<{
commitToHistory: false;
appState: {
fileHandle: import("browser-fs-access").FileSystemHandle | null;
isLoading: boolean;
errorMessage: string | null;
draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
multiElement: import("../element/types").NonDeleted | null;
selectionElement: import("../element/types").NonDeletedExcalidrawElement | null;
isBindingEnabled: boolean;
startBoundElement: import("../element/types").NonDeleted | null;
suggestedBindings: import("../element/binding").SuggestedBinding[];
editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
activeTool: {
type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
locked: boolean;
customType: null;
} | {
type: "custom";
customType: string;
lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
locked: boolean;
};
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: import("../element/types").TextAlign;
currentItemStrokeSharpness: import("../element/types").StrokeSharpness;
currentItemStartArrowhead: import("../element/types").Arrowhead | null;
currentItemEndArrowhead: import("../element/types").Arrowhead | null;
currentItemLinearStrokeSharpness: import("../element/types").StrokeSharpness;
viewBackgroundColor: string;
scrollX: number;
scrollY: number;
cursorButton: "up" | "down";
scrolledOutside: boolean;
name: string;
isResizing: boolean;
isRotating: boolean;
zoom: Readonly<{
value: import("../types").NormalizedZoomValue;
}>;
openMenu: "canvas" | "shape" | null;
openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
lastPointerDownWith: import("../element/types").PointerType;
selectedElementIds: {
[id: string]: boolean;
};
previousSelectedElementIds: {
[id: string]: boolean;
};
shouldCacheIgnoreZoom: boolean;
showHelpDialog: boolean;
toastMessage: string | null;
zenModeEnabled: boolean;
theme: string;
gridSize: number | null;
viewModeEnabled: boolean;
selectedGroupIds: {
[groupId: string]: boolean;
};
editingGroupId: string | null;
width: number;
height: number;
offsetTop: number;
offsetLeft: number;
isLibraryOpen: boolean;
isLibraryMenuDocked: boolean;
collaborators: Map;
showStats: boolean;
currentChartType: import("../element/types").ChartType;
pasteDialog: {
shown: false;
data: null;
} | {
shown: true;
data: import("../charts").Spreadsheet;
};
pendingImageElementId: string | null;
showHyperlinkPopup: false | "info" | "editor";
};
} | {
commitToHistory: false;
appState?: undefined;
}>;
keyTest: (event: KeyboardEvent | import("react").KeyboardEvent) => boolean;
PanelComponent: ({ updateData }: import("react").PropsWithChildren) => JSX.Element;
} & {
keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent) => boolean) | undefined;
};
export declare const actionLoadScene: {
name: "loadScene";
trackEvent: {
category: "export";
};
perform: (elements: readonly import("../element/types").ExcalidrawElement[], appState: Readonly, _: any, app: import("../types").AppClassProperties) => Promise;
shouldCacheIgnoreZoom: boolean;
theme: string;
isLoading: boolean;
errorMessage: string | null;
draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
multiElement: import("../element/types").NonDeleted | null;
selectionElement: import("../element/types").NonDeletedExcalidrawElement | null;
isBindingEnabled: boolean;
startBoundElement: import("../element/types").NonDeleted | null;
suggestedBindings: import("../element/binding").SuggestedBinding[];
editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
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: import("../element/types").TextAlign;
currentItemStrokeSharpness: import("../element/types").StrokeSharpness;
currentItemStartArrowhead: import("../element/types").Arrowhead | null;
currentItemEndArrowhead: import("../element/types").Arrowhead | null;
currentItemLinearStrokeSharpness: import("../element/types").StrokeSharpness;
cursorButton: "up" | "down";
scrolledOutside: boolean;
name: string;
isResizing: boolean;
isRotating: boolean;
openMenu: "canvas" | "shape" | null;
openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
lastPointerDownWith: import("../element/types").PointerType;
selectedElementIds: {
[id: string]: boolean;
};
previousSelectedElementIds: {
[id: string]: boolean;
};
showHelpDialog: boolean;
toastMessage: string | null;
zenModeEnabled: boolean;
gridSize: number | null;
viewModeEnabled: boolean;
selectedGroupIds: {
[groupId: string]: boolean;
};
editingGroupId: string | null;
isLibraryOpen: boolean;
isLibraryMenuDocked: boolean;
fileHandle: import("browser-fs-access").FileSystemHandle | null;
collaborators: Map;
showStats: boolean;
currentChartType: import("../element/types").ChartType;
pasteDialog: {
shown: false;
data: null;
} | {
shown: true;
data: import("../charts").Spreadsheet;
};
pendingImageElementId: string | null;
showHyperlinkPopup: false | "info" | "editor";
};
files: import("../types").BinaryFiles;
commitToHistory: true;
} | {
elements: readonly import("../element/types").ExcalidrawElement[];
appState: {
errorMessage: any;
isLoading: boolean;
draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
multiElement: import("../element/types").NonDeleted | null;
selectionElement: import("../element/types").NonDeletedExcalidrawElement | null;
isBindingEnabled: boolean;
startBoundElement: import("../element/types").NonDeleted | null;
suggestedBindings: import("../element/binding").SuggestedBinding[];
editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
activeTool: {
type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
locked: boolean;
customType: null;
} | {
type: "custom";
customType: string;
lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
locked: boolean;
};
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: import("../element/types").TextAlign;
currentItemStrokeSharpness: import("../element/types").StrokeSharpness;
currentItemStartArrowhead: import("../element/types").Arrowhead | null;
currentItemEndArrowhead: import("../element/types").Arrowhead | null;
currentItemLinearStrokeSharpness: import("../element/types").StrokeSharpness;
viewBackgroundColor: string;
scrollX: number;
scrollY: number;
cursorButton: "up" | "down";
scrolledOutside: boolean;
name: string;
isResizing: boolean;
isRotating: boolean;
zoom: Readonly<{
value: import("../types").NormalizedZoomValue;
}>;
openMenu: "canvas" | "shape" | null;
openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
lastPointerDownWith: import("../element/types").PointerType;
selectedElementIds: {
[id: string]: boolean;
};
previousSelectedElementIds: {
[id: string]: boolean;
};
shouldCacheIgnoreZoom: boolean;
showHelpDialog: boolean;
toastMessage: string | null;
zenModeEnabled: boolean;
theme: string;
gridSize: number | null;
viewModeEnabled: boolean;
selectedGroupIds: {
[groupId: string]: boolean;
};
editingGroupId: string | null;
width: number;
height: number;
offsetTop: number;
offsetLeft: number;
isLibraryOpen: boolean;
isLibraryMenuDocked: boolean;
fileHandle: import("browser-fs-access").FileSystemHandle | null;
collaborators: Map;
showStats: boolean;
currentChartType: import("../element/types").ChartType;
pasteDialog: {
shown: false;
data: null;
} | {
shown: true;
data: import("../charts").Spreadsheet;
};
pendingImageElementId: string | null;
showHyperlinkPopup: false | "info" | "editor";
};
files: import("../types").BinaryFiles;
commitToHistory: false;
}>;
keyTest: (event: KeyboardEvent | import("react").KeyboardEvent) => boolean;
PanelComponent: ({ updateData, appState }: import("react").PropsWithChildren) => JSX.Element;
} & {
keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent) => boolean) | undefined;
};
export declare const actionExportWithDarkMode: {
name: "exportWithDarkMode";
trackEvent: {
category: "export";
action: string;
};
perform: (_elements: readonly import("../element/types").ExcalidrawElement[], appState: Readonly, value: any) => {
appState: {
exportWithDarkMode: any;
isLoading: boolean;
errorMessage: string | null;
draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
multiElement: import("../element/types").NonDeleted | null;
selectionElement: import("../element/types").NonDeletedExcalidrawElement | null;
isBindingEnabled: boolean;
startBoundElement: import("../element/types").NonDeleted | null;
suggestedBindings: import("../element/binding").SuggestedBinding[];
editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
activeTool: {
type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
locked: boolean;
customType: null;
} | {
type: "custom";
customType: string;
lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
locked: boolean;
};
penMode: boolean;
penDetected: boolean;
exportBackground: boolean;
exportEmbedScene: 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: import("../element/types").TextAlign;
currentItemStrokeSharpness: import("../element/types").StrokeSharpness;
currentItemStartArrowhead: import("../element/types").Arrowhead | null;
currentItemEndArrowhead: import("../element/types").Arrowhead | null;
currentItemLinearStrokeSharpness: import("../element/types").StrokeSharpness;
viewBackgroundColor: string;
scrollX: number;
scrollY: number;
cursorButton: "up" | "down";
scrolledOutside: boolean;
name: string;
isResizing: boolean;
isRotating: boolean;
zoom: Readonly<{
value: import("../types").NormalizedZoomValue;
}>;
openMenu: "canvas" | "shape" | null;
openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
lastPointerDownWith: import("../element/types").PointerType;
selectedElementIds: {
[id: string]: boolean;
};
previousSelectedElementIds: {
[id: string]: boolean;
};
shouldCacheIgnoreZoom: boolean;
showHelpDialog: boolean;
toastMessage: string | null;
zenModeEnabled: boolean;
theme: string;
gridSize: number | null;
viewModeEnabled: boolean;
selectedGroupIds: {
[groupId: string]: boolean;
};
editingGroupId: string | null;
width: number;
height: number;
offsetTop: number;
offsetLeft: number;
isLibraryOpen: boolean;
isLibraryMenuDocked: boolean;
fileHandle: import("browser-fs-access").FileSystemHandle | null;
collaborators: Map;
showStats: boolean;
currentChartType: import("../element/types").ChartType;
pasteDialog: {
shown: false;
data: null;
} | {
shown: true;
data: import("../charts").Spreadsheet;
};
pendingImageElementId: string | null;
showHyperlinkPopup: false | "info" | "editor";
};
commitToHistory: false;
};
PanelComponent: ({ appState, updateData }: import("react").PropsWithChildren) => JSX.Element;
} & {
keyTest?: undefined;
};