@apoorvdwi/excalidraw-collab
Version:
Excalidraw as a React component
1,306 lines (1,305 loc) • 196 kB
TypeScript
export declare const actionAddToLibrary: {
name: "addToLibrary";
trackEvent: {
category: "element";
};
perform: (elements: readonly import("../element/types").ExcalidrawElement[], appState: Readonly<import("../types").AppState>, _: any, app: import("../types").AppClassProperties) => Promise<{
commitToHistory: boolean;
appState: {
toast: {
message: string;
};
contextMenu: {
items: import("../components/ContextMenu").ContextMenuItems;
top: number;
left: number;
} | null;
showWelcomeScreen: boolean;
isLoading: boolean;
errorMessage: string | null;
draggingElement: (Readonly<{
id: string;
x: number;
y: number;
strokeColor: string;
backgroundColor: string;
fillStyle: import("../element/types").FillStyle;
strokeWidth: number;
strokeStyle: import("../element/types").StrokeStyle;
roundness: {
type: ValueOf<{
readonly LEGACY: 1;
readonly PROPORTIONAL_RADIUS: 2;
readonly ADAPTIVE_RADIUS: 3;
}>;
value?: number | undefined;
} | null;
roughness: number;
opacity: number;
width: number;
height: number;
angle: number;
seed: number;
version: number;
versionNonce: number;
isDeleted: boolean;
groupIds: readonly string[];
boundElements: readonly Readonly<{
id: string;
type: "arrow" | "text";
}>[] | null;
updated: number;
link: string | null;
locked: boolean;
customData?: Record<string, any> | undefined;
}> & Readonly<{
type: "line" | "arrow";
points: readonly (readonly [number, number])[];
lastCommittedPoint: readonly [number, number] | null;
startBinding: import("../element/types").PointBinding | null;
endBinding: import("../element/types").PointBinding | null;
startArrowhead: "bar" | "arrow" | "dot" | "triangle" | null;
endArrowhead: "bar" | "arrow" | "dot" | "triangle" | null;
}> & {
isDeleted: boolean;
}) | (Readonly<{
id: string;
x: number;
y: number;
strokeColor: string;
backgroundColor: string;
fillStyle: import("../element/types").FillStyle;
strokeWidth: number;
strokeStyle: import("../element/types").StrokeStyle;
roundness: {
type: ValueOf<{
readonly LEGACY: 1;
readonly PROPORTIONAL_RADIUS: 2;
readonly ADAPTIVE_RADIUS: 3;
}>;
value?: number | undefined;
} | null;
roughness: number;
opacity: number;
width: number;
height: number;
angle: number;
seed: number;
version: number;
versionNonce: number;
isDeleted: boolean;
groupIds: readonly string[];
boundElements: readonly Readonly<{
id: string;
type: "arrow" | "text";
}>[] | null;
updated: number;
link: string | null;
locked: boolean;
customData?: Record<string, any> | undefined;
}> & {
type: "selection";
} & {
isDeleted: boolean;
}) | (Readonly<{
id: string;
x: number;
y: number;
strokeColor: string;
backgroundColor: string;
fillStyle: import("../element/types").FillStyle;
strokeWidth: number;
strokeStyle: import("../element/types").StrokeStyle;
roundness: {
type: ValueOf<{
readonly LEGACY: 1;
readonly PROPORTIONAL_RADIUS: 2;
readonly ADAPTIVE_RADIUS: 3;
}>;
value?: number | undefined;
} | null;
roughness: number;
opacity: number;
width: number;
height: number;
angle: number;
seed: number;
version: number;
versionNonce: number;
isDeleted: boolean;
groupIds: readonly string[];
boundElements: readonly Readonly<{
id: string;
type: "arrow" | "text";
}>[] | null;
updated: number;
link: string | null;
locked: boolean;
customData?: Record<string, any> | undefined;
}> & {
type: "rectangle";
} & {
isDeleted: boolean;
}) | (Readonly<{
id: string;
x: number;
y: number;
strokeColor: string;
backgroundColor: string;
fillStyle: import("../element/types").FillStyle;
strokeWidth: number;
strokeStyle: import("../element/types").StrokeStyle;
roundness: {
type: ValueOf<{
readonly LEGACY: 1;
readonly PROPORTIONAL_RADIUS: 2;
readonly ADAPTIVE_RADIUS: 3;
}>;
value?: number | undefined;
} | null;
roughness: number;
opacity: number;
width: number;
height: number;
angle: number;
seed: number;
version: number;
versionNonce: number;
isDeleted: boolean;
groupIds: readonly string[];
boundElements: readonly Readonly<{
id: string;
type: "arrow" | "text";
}>[] | null;
updated: number;
link: string | null;
locked: boolean;
customData?: Record<string, any> | undefined;
}> & {
type: "diamond";
} & {
isDeleted: boolean;
}) | (Readonly<{
id: string;
x: number;
y: number;
strokeColor: string;
backgroundColor: string;
fillStyle: import("../element/types").FillStyle;
strokeWidth: number;
strokeStyle: import("../element/types").StrokeStyle;
roundness: {
type: ValueOf<{
readonly LEGACY: 1;
readonly PROPORTIONAL_RADIUS: 2;
readonly ADAPTIVE_RADIUS: 3;
}>;
value?: number | undefined;
} | null;
roughness: number;
opacity: number;
width: number;
height: number;
angle: number;
seed: number;
version: number;
versionNonce: number;
isDeleted: boolean;
groupIds: readonly string[];
boundElements: readonly Readonly<{
id: string;
type: "arrow" | "text";
}>[] | null;
updated: number;
link: string | null;
locked: boolean;
customData?: Record<string, any> | undefined;
}> & {
type: "ellipse";
} & {
isDeleted: boolean;
}) | (Readonly<{
id: string;
x: number;
y: number;
strokeColor: string;
backgroundColor: string;
fillStyle: import("../element/types").FillStyle;
strokeWidth: number;
strokeStyle: import("../element/types").StrokeStyle;
roundness: {
type: ValueOf<{
readonly LEGACY: 1;
readonly PROPORTIONAL_RADIUS: 2;
readonly ADAPTIVE_RADIUS: 3;
}>;
value?: number | undefined;
} | null;
roughness: number;
opacity: number;
width: number;
height: number;
angle: number;
seed: number;
version: number;
versionNonce: number;
isDeleted: boolean;
groupIds: readonly string[];
boundElements: readonly Readonly<{
id: string;
type: "arrow" | "text";
}>[] | null;
updated: number;
link: string | null;
locked: boolean;
customData?: Record<string, any> | undefined;
}> & Readonly<{
type: "image";
fileId: import("../element/types").FileId | null;
status: "pending" | "saved" | "error";
scale: [number, number];
}> & {
isDeleted: boolean;
}) | (Readonly<{
id: string;
x: number;
y: number;
strokeColor: string;
backgroundColor: string;
fillStyle: import("../element/types").FillStyle;
strokeWidth: number;
strokeStyle: import("../element/types").StrokeStyle;
roundness: {
type: ValueOf<{
readonly LEGACY: 1;
readonly PROPORTIONAL_RADIUS: 2;
readonly ADAPTIVE_RADIUS: 3;
}>;
value?: number | undefined;
} | null;
roughness: number;
opacity: number;
width: number;
height: number;
angle: number;
seed: number;
version: number;
versionNonce: number;
isDeleted: boolean;
groupIds: readonly string[];
boundElements: readonly Readonly<{
id: string;
type: "arrow" | "text";
}>[] | null;
updated: number;
link: string | null;
locked: boolean;
customData?: Record<string, any> | undefined;
}> & Readonly<{
type: "text";
fontSize: number;
fontFamily: number;
text: string;
baseline: number;
textAlign: string;
verticalAlign: string;
containerId: string | null;
originalText: string;
}> & {
isDeleted: boolean;
}) | (Readonly<{
id: string;
x: number;
y: number;
strokeColor: string;
backgroundColor: string;
fillStyle: import("../element/types").FillStyle;
strokeWidth: number;
strokeStyle: import("../element/types").StrokeStyle;
roundness: {
type: ValueOf<{
readonly LEGACY: 1;
readonly PROPORTIONAL_RADIUS: 2;
readonly ADAPTIVE_RADIUS: 3;
}>;
value?: number | undefined;
} | null;
roughness: number;
opacity: number;
width: number;
height: number;
angle: number;
seed: number;
version: number;
versionNonce: number;
isDeleted: boolean;
groupIds: readonly string[];
boundElements: readonly Readonly<{
id: string;
type: "arrow" | "text";
}>[] | null;
updated: number;
link: string | null;
locked: boolean;
customData?: Record<string, any> | undefined;
}> & Readonly<{
type: "freedraw";
points: readonly (readonly [number, number])[];
pressures: readonly number[];
simulatePressure: boolean;
lastCommittedPoint: readonly [number, number] | null;
}> & {
isDeleted: boolean;
}) | null;
resizingElement: (Readonly<{
id: string;
x: number;
y: number;
strokeColor: string;
backgroundColor: string;
fillStyle: import("../element/types").FillStyle;
strokeWidth: number;
strokeStyle: import("../element/types").StrokeStyle;
roundness: {
type: ValueOf<{
readonly LEGACY: 1;
readonly PROPORTIONAL_RADIUS: 2;
readonly ADAPTIVE_RADIUS: 3;
}>;
value?: number | undefined;
} | null;
roughness: number;
opacity: number;
width: number;
height: number;
angle: number;
seed: number;
version: number;
versionNonce: number;
isDeleted: boolean;
groupIds: readonly string[];
boundElements: readonly Readonly<{
id: string;
type: "arrow" | "text";
}>[] | null;
updated: number;
link: string | null;
locked: boolean;
customData?: Record<string, any> | undefined;
}> & Readonly<{
type: "line" | "arrow";
points: readonly (readonly [number, number])[];
lastCommittedPoint: readonly [number, number] | null;
startBinding: import("../element/types").PointBinding | null;
endBinding: import("../element/types").PointBinding | null;
startArrowhead: "bar" | "arrow" | "dot" | "triangle" | null;
endArrowhead: "bar" | "arrow" | "dot" | "triangle" | null;
}> & {
isDeleted: boolean;
}) | (Readonly<{
id: string;
x: number;
y: number;
strokeColor: string;
backgroundColor: string;
fillStyle: import("../element/types").FillStyle;
strokeWidth: number;
strokeStyle: import("../element/types").StrokeStyle;
roundness: {
type: ValueOf<{
readonly LEGACY: 1;
readonly PROPORTIONAL_RADIUS: 2;
readonly ADAPTIVE_RADIUS: 3;
}>;
value?: number | undefined;
} | null;
roughness: number;
opacity: number;
width: number;
height: number;
angle: number;
seed: number;
version: number;
versionNonce: number;
isDeleted: boolean;
groupIds: readonly string[];
boundElements: readonly Readonly<{
id: string;
type: "arrow" | "text";
}>[] | null;
updated: number;
link: string | null;
locked: boolean;
customData?: Record<string, any> | undefined;
}> & {
type: "selection";
} & {
isDeleted: boolean;
}) | (Readonly<{
id: string;
x: number;
y: number;
strokeColor: string;
backgroundColor: string;
fillStyle: import("../element/types").FillStyle;
strokeWidth: number;
strokeStyle: import("../element/types").StrokeStyle;
roundness: {
type: ValueOf<{
readonly LEGACY: 1;
readonly PROPORTIONAL_RADIUS: 2;
readonly ADAPTIVE_RADIUS: 3;
}>;
value?: number | undefined;
} | null;
roughness: number;
opacity: number;
width: number;
height: number;
angle: number;
seed: number;
version: number;
versionNonce: number;
isDeleted: boolean;
groupIds: readonly string[];
boundElements: readonly Readonly<{
id: string;
type: "arrow" | "text";
}>[] | null;
updated: number;
link: string | null;
locked: boolean;
customData?: Record<string, any> | undefined;
}> & {
type: "rectangle";
} & {
isDeleted: boolean;
}) | (Readonly<{
id: string;
x: number;
y: number;
strokeColor: string;
backgroundColor: string;
fillStyle: import("../element/types").FillStyle;
strokeWidth: number;
strokeStyle: import("../element/types").StrokeStyle;
roundness: {
type: ValueOf<{
readonly LEGACY: 1;
readonly PROPORTIONAL_RADIUS: 2;
readonly ADAPTIVE_RADIUS: 3;
}>;
value?: number | undefined;
} | null;
roughness: number;
opacity: number;
width: number;
height: number;
angle: number;
seed: number;
version: number;
versionNonce: number;
isDeleted: boolean;
groupIds: readonly string[];
boundElements: readonly Readonly<{
id: string;
type: "arrow" | "text";
}>[] | null;
updated: number;
link: string | null;
locked: boolean;
customData?: Record<string, any> | undefined;
}> & {
type: "diamond";
} & {
isDeleted: boolean;
}) | (Readonly<{
id: string;
x: number;
y: number;
strokeColor: string;
backgroundColor: string;
fillStyle: import("../element/types").FillStyle;
strokeWidth: number;
strokeStyle: import("../element/types").StrokeStyle;
roundness: {
type: ValueOf<{
readonly LEGACY: 1;
readonly PROPORTIONAL_RADIUS: 2;
readonly ADAPTIVE_RADIUS: 3;
}>;
value?: number | undefined;
} | null;
roughness: number;
opacity: number;
width: number;
height: number;
angle: number;
seed: number;
version: number;
versionNonce: number;
isDeleted: boolean;
groupIds: readonly string[];
boundElements: readonly Readonly<{
id: string;
type: "arrow" | "text";
}>[] | null;
updated: number;
link: string | null;
locked: boolean;
customData?: Record<string, any> | undefined;
}> & {
type: "ellipse";
} & {
isDeleted: boolean;
}) | (Readonly<{
id: string;
x: number;
y: number;
strokeColor: string;
backgroundColor: string;
fillStyle: import("../element/types").FillStyle;
strokeWidth: number;
strokeStyle: import("../element/types").StrokeStyle;
roundness: {
type: ValueOf<{
readonly LEGACY: 1;
readonly PROPORTIONAL_RADIUS: 2;
readonly ADAPTIVE_RADIUS: 3;
}>;
value?: number | undefined;
} | null;
roughness: number;
opacity: number;
width: number;
height: number;
angle: number;
seed: number;
version: number;
versionNonce: number;
isDeleted: boolean;
groupIds: readonly string[];
boundElements: readonly Readonly<{
id: string;
type: "arrow" | "text";
}>[] | null;
updated: number;
link: string | null;
locked: boolean;
customData?: Record<string, any> | undefined;
}> & Readonly<{
type: "image";
fileId: import("../element/types").FileId | null;
status: "pending" | "saved" | "error";
scale: [number, number];
}> & {
isDeleted: boolean;
}) | (Readonly<{
id: string;
x: number;
y: number;
strokeColor: string;
backgroundColor: string;
fillStyle: import("../element/types").FillStyle;
strokeWidth: number;
strokeStyle: import("../element/types").StrokeStyle;
roundness: {
type: ValueOf<{
readonly LEGACY: 1;
readonly PROPORTIONAL_RADIUS: 2;
readonly ADAPTIVE_RADIUS: 3;
}>;
value?: number | undefined;
} | null;
roughness: number;
opacity: number;
width: number;
height: number;
angle: number;
seed: number;
version: number;
versionNonce: number;
isDeleted: boolean;
groupIds: readonly string[];
boundElements: readonly Readonly<{
id: string;
type: "arrow" | "text";
}>[] | null;
updated: number;
link: string | null;
locked: boolean;
customData?: Record<string, any> | undefined;
}> & Readonly<{
type: "text";
fontSize: number;
fontFamily: number;
text: string;
baseline: number;
textAlign: string;
verticalAlign: string;
containerId: string | null;
originalText: string;
}> & {
isDeleted: boolean;
}) | (Readonly<{
id: string;
x: number;
y: number;
strokeColor: string;
backgroundColor: string;
fillStyle: import("../element/types").FillStyle;
strokeWidth: number;
strokeStyle: import("../element/types").StrokeStyle;
roundness: {
type: ValueOf<{
readonly LEGACY: 1;
readonly PROPORTIONAL_RADIUS: 2;
readonly ADAPTIVE_RADIUS: 3;
}>;
value?: number | undefined;
} | null;
roughness: number;
opacity: number;
width: number;
height: number;
angle: number;
seed: number;
version: number;
versionNonce: number;
isDeleted: boolean;
groupIds: readonly string[];
boundElements: readonly Readonly<{
id: string;
type: "arrow" | "text";
}>[] | null;
updated: number;
link: string | null;
locked: boolean;
customData?: Record<string, any> | undefined;
}> & Readonly<{
type: "freedraw";
points: readonly (readonly [number, number])[];
pressures: readonly number[];
simulatePressure: boolean;
lastCommittedPoint: readonly [number, number] | null;
}> & {
isDeleted: boolean;
}) | null;
multiElement: (Readonly<{
id: string;
x: number;
y: number;
strokeColor: string;
backgroundColor: string;
fillStyle: import("../element/types").FillStyle;
strokeWidth: number;
strokeStyle: import("../element/types").StrokeStyle;
roundness: {
type: ValueOf<{
readonly LEGACY: 1;
readonly PROPORTIONAL_RADIUS: 2;
readonly ADAPTIVE_RADIUS: 3;
}>;
value?: number | undefined;
} | null;
roughness: number;
opacity: number;
width: number;
height: number;
angle: number;
seed: number;
version: number;
versionNonce: number;
isDeleted: boolean;
groupIds: readonly string[];
boundElements: readonly Readonly<{
id: string;
type: "arrow" | "text";
}>[] | null;
updated: number;
link: string | null;
locked: boolean;
customData?: Record<string, any> | undefined;
}> & Readonly<{
type: "line" | "arrow";
points: readonly (readonly [number, number])[];
lastCommittedPoint: readonly [number, number] | null;
startBinding: import("../element/types").PointBinding | null;
endBinding: import("../element/types").PointBinding | null;
startArrowhead: "bar" | "arrow" | "dot" | "triangle" | null;
endArrowhead: "bar" | "arrow" | "dot" | "triangle" | null;
}> & {
isDeleted: boolean;
}) | null;
selectionElement: (Readonly<{
id: string;
x: number;
y: number;
strokeColor: string;
backgroundColor: string;
fillStyle: import("../element/types").FillStyle;
strokeWidth: number;
strokeStyle: import("../element/types").StrokeStyle;
roundness: {
type: ValueOf<{
readonly LEGACY: 1;
readonly PROPORTIONAL_RADIUS: 2;
readonly ADAPTIVE_RADIUS: 3;
}>;
value?: number | undefined;
} | null;
roughness: number;
opacity: number;
width: number;
height: number;
angle: number;
seed: number;
version: number;
versionNonce: number;
isDeleted: boolean;
groupIds: readonly string[];
boundElements: readonly Readonly<{
id: string;
type: "arrow" | "text";
}>[] | null;
updated: number;
link: string | null;
locked: boolean;
customData?: Record<string, any> | undefined;
}> & Readonly<{
type: "line" | "arrow";
points: readonly (readonly [number, number])[];
lastCommittedPoint: readonly [number, number] | null;
startBinding: import("../element/types").PointBinding | null;
endBinding: import("../element/types").PointBinding | null;
startArrowhead: "bar" | "arrow" | "dot" | "triangle" | null;
endArrowhead: "bar" | "arrow" | "dot" | "triangle" | null;
}> & {
isDeleted: boolean;
}) | (Readonly<{
id: string;
x: number;
y: number;
strokeColor: string;
backgroundColor: string;
fillStyle: import("../element/types").FillStyle;
strokeWidth: number;
strokeStyle: import("../element/types").StrokeStyle;
roundness: {
type: ValueOf<{
readonly LEGACY: 1;
readonly PROPORTIONAL_RADIUS: 2;
readonly ADAPTIVE_RADIUS: 3;
}>;
value?: number | undefined;
} | null;
roughness: number;
opacity: number;
width: number;
height: number;
angle: number;
seed: number;
version: number;
versionNonce: number;
isDeleted: boolean;
groupIds: readonly string[];
boundElements: readonly Readonly<{
id: string;
type: "arrow" | "text";
}>[] | null;
updated: number;
link: string | null;
locked: boolean;
customData?: Record<string, any> | undefined;
}> & {
type: "selection";
} & {
isDeleted: boolean;
}) | (Readonly<{
id: string;
x: number;
y: number;
strokeColor: string;
backgroundColor: string;
fillStyle: import("../element/types").FillStyle;
strokeWidth: number;
strokeStyle: import("../element/types").StrokeStyle;
roundness: {
type: ValueOf<{
readonly LEGACY: 1;
readonly PROPORTIONAL_RADIUS: 2;
readonly ADAPTIVE_RADIUS: 3;
}>;
value?: number | undefined;
} | null;
roughness: number;
opacity: number;
width: number;
height: number;
angle: number;
seed: number;
version: number;
versionNonce: number;
isDeleted: boolean;
groupIds: readonly string[];
boundElements: readonly Readonly<{
id: string;
type: "arrow" | "text";
}>[] | null;
updated: number;
link: string | null;
locked: boolean;
customData?: Record<string, any> | undefined;
}> & {
type: "rectangle";
} & {
isDeleted: boolean;
}) | (Readonly<{
id: string;
x: number;
y: number;
strokeColor: string;
backgroundColor: string;
fillStyle: import("../element/types").FillStyle;
strokeWidth: number;
strokeStyle: import("../element/types").StrokeStyle;
roundness: {
type: ValueOf<{
readonly LEGACY: 1;
readonly PROPORTIONAL_RADIUS: 2;
readonly ADAPTIVE_RADIUS: 3;
}>;
value?: number | undefined;
} | null;
roughness: number;
opacity: number;
width: number;
height: number;
angle: number;
seed: number;
version: number;
versionNonce: number;
isDeleted: boolean;
groupIds: readonly string[];
boundElements: readonly Readonly<{
id: string;
type: "arrow" | "text";
}>[] | null;
updated: number;
link: string | null;
locked: boolean;
customData?: Record<string, any> | undefined;
}> & {
type: "diamond";
} & {
isDeleted: boolean;
}) | (Readonly<{
id: string;
x: number;
y: number;
strokeColor: string;
backgroundColor: string;
fillStyle: import("../element/types").FillStyle;
strokeWidth: number;
strokeStyle: import("../element/types").StrokeStyle;
roundness: {
type: ValueOf<{
readonly LEGACY: 1;
readonly PROPORTIONAL_RADIUS: 2;
readonly ADAPTIVE_RADIUS: 3;
}>;
value?: number | undefined;
} | null;
roughness: number;
opacity: number;
width: number;
height: number;
angle: number;
seed: number;
version: number;
versionNonce: number;
isDeleted: boolean;
groupIds: readonly string[];
boundElements: readonly Readonly<{
id: string;
type: "arrow" | "text";
}>[] | null;
updated: number;
link: string | null;
locked: boolean;
customData?: Record<string, any> | undefined;
}> & {
type: "ellipse";
} & {
isDeleted: boolean;
}) | (Readonly<{
id: string;
x: number;
y: number;
strokeColor: string;
backgroundColor: string;
fillStyle: import("../element/types").FillStyle;
strokeWidth: number;
strokeStyle: import("../element/types").StrokeStyle;
roundness: {
type: ValueOf<{
readonly LEGACY: 1;
readonly PROPORTIONAL_RADIUS: 2;
readonly ADAPTIVE_RADIUS: 3;
}>;
value?: number | undefined;
} | null;
roughness: number;
opacity: number;
width: number;
height: number;
angle: number;
seed: number;
version: number;
versionNonce: number;
isDeleted: boolean;
groupIds: readonly string[];
boundElements: readonly Readonly<{
id: string;
type: "arrow" | "text";
}>[] | null;
updated: number;
link: string | null;
locked: boolean;
customData?: Record<string, any> | undefined;
}> & Readonly<{
type: "image";
fileId: import("../element/types").FileId | null;
status: "pending" | "saved" | "error";
scale: [number, number];
}> & {
isDeleted: boolean;
}) | (Readonly<{
id: string;
x: number;
y: number;
strokeColor: string;
backgroundColor: string;
fillStyle: import("../element/types").FillStyle;
strokeWidth: number;
strokeStyle: import("../element/types").StrokeStyle;
roundness: {
type: ValueOf<{
readonly LEGACY: 1;
readonly PROPORTIONAL_RADIUS: 2;
readonly ADAPTIVE_RADIUS: 3;
}>;
value?: number | undefined;
} | null;
roughness: number;
opacity: number;
width: number;
height: number;
angle: number;
seed: number;
version: number;
versionNonce: number;
isDeleted: boolean;
groupIds: readonly string[];
boundElements: readonly Readonly<{
id: string;
type: "arrow" | "text";
}>[] | null;
updated: number;
link: string | null;
locked: boolean;
customData?: Record<string, any> | undefined;
}> & Readonly<{
type: "text";
fontSize: number;
fontFamily: number;
text: string;
baseline: number;
textAlign: string;
verticalAlign: string;
containerId: string | null;
originalText: string;
}> & {
isDeleted: boolean;
}) | (Readonly<{
id: string;
x: number;
y: number;
strokeColor: string;
backgroundColor: string;
fillStyle: import("../element/types").FillStyle;
strokeWidth: number;
strokeStyle: import("../element/types").StrokeStyle;
roundness: {
type: ValueOf<{
readonly LEGACY: 1;
readonly PROPORTIONAL_RADIUS: 2;
readonly ADAPTIVE_RADIUS: 3;
}>;
value?: number | undefined;
} | null;
roughness: number;
opacity: number;
width: number;
height: number;
angle: number;
seed: number;
version: number;
versionNonce: number;
isDeleted: boolean;
groupIds: readonly string[];
boundElements: readonly Readonly<{
id: string;
type: "arrow" | "text";
}>[] | null;
updated: number;
link: string | null;
locked: boolean;
customData?: Record<string, any> | undefined;
}> & Readonly<{
type: "freedraw";
points: readonly (readonly [number, number])[];
pressures: readonly number[];
simulatePressure: boolean;
lastCommittedPoint: readonly [number, number] | null;
}> & {
isDeleted: boolean;
}) | null;
isBindingEnabled: boolean;
startBoundElement: (Readonly<{
id: string;
x: number;
y: number;
strokeColor: string;
backgroundColor: string;
fillStyle: import("../element/types").FillStyle;
strokeWidth: number;
strokeStyle: import("../element/types").StrokeStyle;
roundness: {
type: ValueOf<{
readonly LEGACY: 1;
readonly PROPORTIONAL_RADIUS: 2;
readonly ADAPTIVE_RADIUS: 3;
}>;
value?: number | undefined;
} | null;
roughness: number;
opacity: number;
width: number;
height: number;
angle: number;
seed: number;
version: number;
versionNonce: number;
isDeleted: boolean;
groupIds: readonly string[];
boundElements: readonly Readonly<{
id: string;
type: "arrow" | "text";
}>[] | null;
updated: number;
link: string | null;
locked: boolean;
customData?: Record<string, any> | undefined;
}> & {
type: "rectangle";
} & {
isDeleted: boolean;
}) | (Readonly<{
id: string;
x: number;
y: number;
strokeColor: string;
backgroundColor: string;
fillStyle: import("../element/types").FillStyle;
strokeWidth: number;
strokeStyle: import("../element/types").StrokeStyle;
roundness: {
type: ValueOf<{
readonly LEGACY: 1;
readonly PROPORTIONAL_RADIUS: 2;
readonly ADAPTIVE_RADIUS: 3;
}>;
value?: number | undefined;
} | null;
roughness: number;
opacity: number;
width: number;
height: number;
angle: number;
seed: number;
version: number;
versionNonce: number;
isDeleted: boolean;
groupIds: readonly string[];
boundElements: readonly Readonly<{
id: string;
type: "arrow" | "text";
}>[] | null;
updated: number;
link: string | null;
locked: boolean;
customData?: Record<string, any> | undefined;
}> & {
type: "diamond";
} & {
isDeleted: boolean;
}) | (Readonly<{
id: string;
x: number;
y: number;
strokeColor: string;
backgroundColor: string;
fillStyle: import("../element/types").FillStyle;
strokeWidth: number;
strokeStyle: import("../element/types").StrokeStyle;
roundness: {
type: ValueOf<{
readonly LEGACY: 1;
readonly PROPORTIONAL_RADIUS: 2;
readonly ADAPTIVE_RADIUS: 3;
}>;
value?: number | undefined;
} | null;
roughness: number;
opacity: number;
width: number;
height: number;
angle: number;
seed: number;
version: number;
versionNonce: number;
isDeleted: boolean;
groupIds: readonly string[];
boundElements: readonly Readonly<{
id: string;
type: "arrow" | "text";
}>[] | null;
updated: number;
link: string | null;
locked: boolean;
customData?: Record<string, any> | undefined;
}> & {
type: "ellipse";
} & {
isDeleted: boolean;
}) | (Readonly<{
id: string;
x: number;
y: number;
strokeColor: string;
backgroundColor: string;
fillStyle: import("../element/types").FillStyle;
strokeWidth: number;
strokeStyle: import("../element/types").StrokeStyle;
roundness: {
type: ValueOf<{
readonly LEGACY: 1;
readonly PROPORTIONAL_RADIUS: 2;
readonly ADAPTIVE_RADIUS: 3;
}>;
value?: number | undefined;
} | null;
roughness: number;
opacity: number;
width: number;
height: number;
angle: number;
seed: number;
version: number;
versionNonce: number;
isDeleted: boolean;
groupIds: readonly string[];
boundElements: readonly Readonly<{
id: string;
type: "arrow" | "text";
}>[] | null;
updated: number;
link: string | null;
locked: boolean;
customData?: Record<string, any> | undefined;
}> & Readonly<{
type: "image";
fileId: import("../element/types").FileId | null;
status: "pending" | "saved" | "error";
scale: [number, number];
}> & {
isDeleted: boolean;
}) | (Readonly<{
id: string;
x: number;
y: number;
strokeColor: string;
backgroundColor: string;
fillStyle: import("../element/types").FillStyle;
strokeWidth: number;
strokeStyle: import("../element/types").StrokeStyle;
roundness: {
type: ValueOf<{
readonly LEGACY: 1;
readonly PROPORTIONAL_RADIUS: 2;
readonly ADAPTIVE_RADIUS: 3;
}>;
value?: number | undefined;
} | null;
roughness: number;
opacity: number;
width: number;
height: number;
angle: number;
seed: number;
version: number;
versionNonce: number;
isDeleted: boolean;
groupIds: readonly string[];
boundElements: readonly Readonly<{
id: string;
type: "arrow" | "text";
}>[] | null;
updated: number;
link: string | null;
locked: boolean;
customData?: Record<string, any> | undefined;
}> & Readonly<{
type: "text";
fontSize: number;
fontFamily: number;
text: string;
baseline: number;
textAlign: string;
verticalAlign: string;
containerId: string | null;
originalText: string;
}> & {
isDeleted: boolean;
}) | null;
suggestedBindings: import("../element/binding").SuggestedBinding[];
editingElement: (Readonly<{
id: string;
x: number;
y: number;
strokeColor: string;
backgroundColor: string;
fillStyle: import("../element/types").FillStyle;
strokeWidth: number;
strokeStyle: import("../element/types").StrokeStyle;
roundness: {
type: ValueOf<{
readonly LEGACY: 1;
readonly PROPORTIONAL_RADIUS: 2;
readonly ADAPTIVE_RADIUS: 3;
}>;
value?: number | undefined;
} | null;
roughness: number;
opacity: number;
width: number;
height: number;
angle: number;
seed: number;
version: number;
versionNonce: number;
isDeleted: boolean;
groupIds: readonly string[];
boundElements: readonly Readonly<{
id: string;