/**
 * 課程建議相關的 API 契約。
 * 後端尚未開發，這份型別即為前後端約定的介面。
 */

/** 體適能組別 */
export type FitnessGroup = 'low' | 'medium' | 'high'

/** 後端以 Y/N 字串表示布林值 */
export type YesNo = 'Y' | 'N'

/** 課表的三個時段 */
export type TimeSlot = 'morning' | 'noon' | 'night'

/** 課表的一天；未被選取的時段其欄位為 undefined */
export interface CourseRow {
  /** 1 = 週一 … 7 = 週日 */
  day: number
  morning?: string
  noon?: string
  night?: string
}

export type CourseList = CourseRow[]

/** 取得課表所需的查詢參數 */
export interface CourseListParams {
  group: FitnessGroup
  morning: YesNo
  noon: YesNo
  night: YesNo
}

/** 登入請求：僅需手機門號 */
export interface LoginRequest {
  phone: string
}

/** 登入成功回應，userID 供後續課程 API 查詢使用 */
export interface LoginResponse {
  userID: string
  userName: string
  phone: string
  group: FitnessGroup
}
