// 地圖元素相關型別 export type MapElementType = 'aisle' | 'cashier' | 'entrance' | 'storage' | 'curved' | 'promo' export interface Position3D { x: number y: number z: number } export interface Dimensions3D { width: number height: number depth: number } export interface MapElement { id: string type: MapElementType floorIndex: number position: Position3D rotation: number // Y 軸旋轉角度(弧度) dimensions: Dimensions3D categoryId?: string // 指派的類別 ID label?: string // 顯示標籤 } export interface CurvedElement extends MapElement { type: 'curved' curvePoints: Position3D[] // 曲線控制點 curveType: 'arc' | 'bezier' } export interface StoreMap { storeId: string elements: MapElement[] curvedElements: CurvedElement[] } // 編輯器模式 export type EditorMode = 'select' | 'move' | 'scale' | 'rotate' | 'add' // 新增元素類型 export type AddElementType = MapElementType