cdn and packages building

This commit is contained in:
wass08
2026-02-04 09:53:44 +09:00
parent 4036f370e7
commit e776ce9849
14 changed files with 205 additions and 28 deletions
+35
View File
@@ -0,0 +1,35 @@
import type { AnyNode, BaseNode, BuildingNode, LevelNode, ZoneNode } from "@pascal-app/core";
import type { Object3D } from "three";
type SelectionPath = {
buildingId: BuildingNode["id"] | null;
levelId: LevelNode["id"] | null;
zoneId: ZoneNode["id"] | null;
selectedIds: BaseNode["id"][];
};
type Outliner = {
selectedObjects: Object3D[];
hoveredObjects: Object3D[];
};
type ViewerState = {
selection: SelectionPath;
hoveredId: AnyNode['id'] | ZoneNode['id'] | null;
setHoveredId: (id: AnyNode['id'] | ZoneNode['id'] | null) => void;
cameraMode: 'perspective' | 'orthographic';
setCameraMode: (mode: 'perspective' | 'orthographic') => void;
levelMode: 'stacked' | 'exploded' | 'solo' | 'manual';
setLevelMode: (mode: 'stacked' | 'exploded' | 'solo' | 'manual') => void;
wallMode: 'up' | 'cutaway' | 'down';
setWallMode: (mode: 'up' | 'cutaway' | 'down') => void;
showScans: boolean;
setShowScans: (show: boolean) => void;
showGuides: boolean;
setShowGuides: (show: boolean) => void;
setSelection: (updates: Partial<SelectionPath>) => void;
resetSelection: () => void;
outliner: Outliner;
exportScene: (() => Promise<void>) | null;
setExportScene: (fn: (() => Promise<void>) | null) => void;
};
declare const useViewer: import("zustand").UseBoundStore<import("zustand").StoreApi<ViewerState>>;
export default useViewer;
//# sourceMappingURL=use-viewer.d.ts.map