Files
image-studio/editor/state.ts
2026-07-03 09:24:08 +02:00

26 lines
516 B
TypeScript

import type { ImageDocument } from "@core/document";
import type { Angle, Size, Vec2D } from "@core/geometry";
import type { ArtboardId, LayerId } from "@core/id";
export type ViewportState = {
center: Vec2D;
zoom: number;
rotation: Angle;
size: Size;
};
export type SelectionState = {
artboardId?: ArtboardId;
layerIds: LayerId[];
};
export type EditorState = {
viewport: ViewportState;
selection: SelectionState;
};
export type AppState = {
document: ImageDocument;
editor: EditorState;
};