@marcosnbj/excalidraw
Version:
Excalidraw as a React component
1,093 lines • 78.4 kB
TypeScript
import { AppState, Primitive } from "../../src/types";
import { Arrowhead, ExcalidrawElement, ExcalidrawLinearElement } from "../element/types";
export declare const changeProperty: (elements: readonly ExcalidrawElement[], appState: AppState, callback: (element: ExcalidrawElement) => ExcalidrawElement, includeBoundText?: boolean) => ExcalidrawElement[];
export declare const getFormValue: <T extends Primitive>(elements: readonly ExcalidrawElement[], appState: AppState, getAttribute: (element: ExcalidrawElement) => T, isRelevantElement: true | ((element: ExcalidrawElement) => boolean), defaultValue: T | ((isSomeElementSelected: boolean) => T)) => T;
export declare const actionChangeStrokeColor: {
name: "changeStrokeColor";
trackEvent: false;
perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: any) => any;
PanelComponent: ({ elements, appState, updateData, appProps }: import("./types").PanelComponentProps) => JSX.Element;
} & {
keyTest?: undefined;
};
export declare const actionChangeBackgroundColor: {
name: "changeBackgroundColor";
trackEvent: false;
perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: any) => any;
PanelComponent: ({ elements, appState, updateData, appProps }: import("./types").PanelComponentProps) => JSX.Element;
} & {
keyTest?: undefined;
};
export declare const actionChangeFillStyle: {
name: "changeFillStyle";
trackEvent: false;
perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: any, app: import("../../src/types").AppClassProperties) => {
elements: ExcalidrawElement[];
appState: {
currentItemFillStyle: 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<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("../../src/types").ActiveTool | null;
locked: boolean;
} & import("../../src/types").ActiveTool;
penMode: boolean;
penDetected: boolean;
exportBackground: boolean;
exportEmbedScene: boolean;
exportWithDarkMode: boolean;
exportScale: number;
currentItemStrokeColor: string;
currentItemBackgroundColor: string;
currentItemStrokeWidth: number;
currentItemStrokeStyle: import("../element/types").StrokeStyle;
currentItemRoughness: number;
currentItemOpacity: number;
currentItemFontFamily: number;
currentItemFontSize: number;
currentItemTextAlign: string;
currentItemStartArrowhead: Arrowhead | null;
currentItemEndArrowhead: 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: import("../../src/types").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;
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("../../src/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: true;
};
PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
} & {
keyTest?: undefined;
};
export declare const actionChangeStrokeWidth: {
name: "changeStrokeWidth";
trackEvent: false;
perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: any) => {
elements: ExcalidrawElement[];
appState: {
currentItemStrokeWidth: 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<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("../../src/types").ActiveTool | null;
locked: boolean;
} & import("../../src/types").ActiveTool;
penMode: boolean;
penDetected: boolean;
exportBackground: boolean;
exportEmbedScene: boolean;
exportWithDarkMode: boolean;
exportScale: number;
currentItemStrokeColor: string;
currentItemBackgroundColor: string;
currentItemFillStyle: import("../element/types").FillStyle;
currentItemStrokeStyle: import("../element/types").StrokeStyle;
currentItemRoughness: number;
currentItemOpacity: number;
currentItemFontFamily: number;
currentItemFontSize: number;
currentItemTextAlign: string;
currentItemStartArrowhead: Arrowhead | null;
currentItemEndArrowhead: 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: import("../../src/types").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;
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("../../src/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: true;
};
PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
} & {
keyTest?: undefined;
};
export declare const actionChangeSloppiness: {
name: "changeSloppiness";
trackEvent: false;
perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: any) => {
elements: ExcalidrawElement[];
appState: {
currentItemRoughness: 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<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("../../src/types").ActiveTool | null;
locked: boolean;
} & import("../../src/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;
currentItemOpacity: number;
currentItemFontFamily: number;
currentItemFontSize: number;
currentItemTextAlign: string;
currentItemStartArrowhead: Arrowhead | null;
currentItemEndArrowhead: 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: import("../../src/types").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;
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("../../src/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: true;
};
PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
} & {
keyTest?: undefined;
};
export declare const actionChangeStrokeStyle: {
name: "changeStrokeStyle";
trackEvent: false;
perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: any) => {
elements: ExcalidrawElement[];
appState: {
currentItemStrokeStyle: 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<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("../../src/types").ActiveTool | null;
locked: boolean;
} & import("../../src/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;
currentItemRoughness: number;
currentItemOpacity: number;
currentItemFontFamily: number;
currentItemFontSize: number;
currentItemTextAlign: string;
currentItemStartArrowhead: Arrowhead | null;
currentItemEndArrowhead: 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: import("../../src/types").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;
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("../../src/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: true;
};
PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
} & {
keyTest?: undefined;
};
export declare const actionChangeOpacity: {
name: "changeOpacity";
trackEvent: false;
perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: any) => {
elements: ExcalidrawElement[];
appState: {
currentItemOpacity: 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<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("../../src/types").ActiveTool | null;
locked: boolean;
} & import("../../src/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;
currentItemFontFamily: number;
currentItemFontSize: number;
currentItemTextAlign: string;
currentItemStartArrowhead: Arrowhead | null;
currentItemEndArrowhead: 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: import("../../src/types").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;
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("../../src/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: true;
};
PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
} & {
keyTest?: undefined;
};
export declare const actionChangeFontSize: {
name: "changeFontSize";
trackEvent: false;
perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: any) => {
elements: ExcalidrawElement[];
appState: {
currentItemFontSize: number;
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<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("../../src/types").ActiveTool | null;
locked: boolean;
} & import("../../src/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;
currentItemTextAlign: string;
currentItemStartArrowhead: Arrowhead | null;
currentItemEndArrowhead: 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: import("../../src/types").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;
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("../../src/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;
};
PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
} & {
keyTest?: undefined;
};
export declare const actionDecreaseFontSize: {
name: "decreaseFontSize";
trackEvent: false;
perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: any) => {
elements: ExcalidrawElement[];
appState: {
currentItemFontSize: number;
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<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("../../src/types").ActiveTool | null;
locked: boolean;
} & import("../../src/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;
currentItemTextAlign: string;
currentItemStartArrowhead: Arrowhead | null;
currentItemEndArrowhead: 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: import("../../src/types").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;
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("../../src/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 actionIncreaseFontSize: {
name: "increaseFontSize";
trackEvent: false;
perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: any) => {
elements: ExcalidrawElement[];
appState: {
currentItemFontSize: number;
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<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("../../src/types").ActiveTool | null;
locked: boolean;
} & import("../../src/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;
currentItemTextAlign: string;
currentItemStartArrowhead: Arrowhead | null;
currentItemEndArrowhead: 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: import("../../src/types").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;
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("../../src/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 actionChangeFontFamily: {
name: "changeFontFamily";
trackEvent: false;
perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: any) => {
elements: ExcalidrawElement[];
appState: {
currentItemFontFamily: 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<ExcalidrawLinearElement> | null;
selectionElement: import("../element/types").NonDeletedExcalidrawElement | null;
isBindingEnabled: boolean;
startBoundElement: import("../el