export const PRE_REGISTRATION_BUCKETS = {
  in_progress: "در حال تکمیل",
  pending_review: "منتظر بررسی مدیر",
  waitlisted: "لیست انتظار",
  completed: "تکمیل / تأیید شده",
  rejected: "رد شده",
} as const;

export type PreRegistrationBucket = keyof typeof PRE_REGISTRATION_BUCKETS;

/** Alias for URL filter `group` — same keys as legacy buckets */
export type PreRegistrationGroup = PreRegistrationBucket;

export const PRE_REGISTRATION_GROUP_STATUSES: Record<PreRegistrationGroup, string[]> = {
  in_progress: [
    "draft",
    "eligibility_checked",
    "documents_pending",
    "rules_accepted",
    "payment_pending",
    "abandoned",
  ],
  pending_review: [
    "submitted",
    "under_review",
    "documents_requested",
    "interview_scheduled",
    "entrance_exam_scheduled",
  ],
  waitlisted: ["waitlisted"],
  completed: ["approved", "converted"],
  rejected: ["rejected"],
};

export const BUCKET_ACCENTS: Record<PreRegistrationBucket, string> = {
  in_progress: "border-amber-200 bg-amber-50 text-amber-900",
  pending_review: "border-sky-200 bg-sky-50 text-sky-900",
  waitlisted: "border-violet-200 bg-violet-50 text-violet-900",
  completed: "border-emerald-200 bg-emerald-50 text-emerald-900",
  rejected: "border-rose-200 bg-rose-50 text-rose-900",
};

export function isPreRegistrationGroup(value: string | null | undefined): value is PreRegistrationGroup {
  return Boolean(value && value in PRE_REGISTRATION_BUCKETS);
}
