/**
 * 文件职责：时段供应页面共享类型定义。
 */
import type {
  ProductPickerItemDto,
  ProductScheduleDto,
  ProductSwitchStatus,
} from '#/api/product';

/** 时段规则编辑表单。 */
export interface ScheduleEditorForm {
  endTime: string;
  id: string;
  name: string;
  productIds: string[];
  startTime: string;
  status: ProductSwitchStatus;
  weekDays: number[];
}

/** 时段规则卡片视图模型。 */
export type ProductScheduleCardViewModel = ProductScheduleDto;

/** 已选商品标签。 */
export interface ScheduleProductChip {
  id: string;
  name: string;
}

/** 时间轴条段。 */
export interface ScheduleTimelineBar {
  label: string;
  left: number;
  width: number;
}

/** 时间轴行。 */
export interface ScheduleTimelineRow {
  bars: ScheduleTimelineBar[];
  color: string;
  id: string;
  name: string;
  status: ProductSwitchStatus;
}

/** 商品映射表。 */
export type ScheduleProductLookup = Record<string, ProductPickerItemDto>;
