12
src/types.ts
12
src/types.ts
@ -73,7 +73,7 @@ export type AppState = {
|
||||
isCollaborating: boolean;
|
||||
isResizing: boolean;
|
||||
isRotating: boolean;
|
||||
zoom: number;
|
||||
zoom: Zoom;
|
||||
openMenu: "canvas" | "shape" | null;
|
||||
lastPointerDownWith: PointerType;
|
||||
selectedElementIds: { [id: string]: boolean };
|
||||
@ -99,6 +99,16 @@ export type AppState = {
|
||||
fileHandle: import("browser-nativefs").FileSystemHandle | null;
|
||||
};
|
||||
|
||||
export type NormalizedZoomValue = number & { _brand: "normalizedZoom" };
|
||||
|
||||
export type Zoom = Readonly<{
|
||||
value: NormalizedZoomValue;
|
||||
translation: Readonly<{
|
||||
x: number;
|
||||
y: number;
|
||||
}>;
|
||||
}>;
|
||||
|
||||
export type PointerCoords = Readonly<{
|
||||
x: number;
|
||||
y: number;
|
||||
|
Reference in New Issue
Block a user