// Tier configuration for source credibility levels
export type SourceTier = 0 | 1 | 2 | 3 | 4 | 5;
export type ConflictStatus = "Unanimous" | "Agreed" | "Contested";
export type SourceStatus = "active" | "deprecated" | "quarantined";

export const tierLabels: Record<SourceTier, string> = {
  0: "Regulatory",
  1: "Clinical",
  2: "Observational",
  3: "Expert",
  4: "Community",
  5: "Anecdotal",
};

export const tierColors: Record<SourceTier, string> = {
  0: "bg-emerald-500/20 text-emerald-700 dark:text-emerald-300 border-emerald-500/30",
  1: "bg-blue-500/20 text-blue-700 dark:text-blue-300 border-blue-500/30",
  2: "bg-cyan-500/20 text-cyan-700 dark:text-cyan-300 border-cyan-500/30",
  3: "bg-amber-500/20 text-amber-700 dark:text-amber-300 border-amber-500/30",
  4: "bg-orange-500/20 text-orange-700 dark:text-orange-300 border-orange-500/30",
  5: "bg-red-500/20 text-red-700 dark:text-red-300 border-red-500/30",
};

export const tierBgColors: Record<SourceTier, string> = {
  0: "bg-emerald-500",
  1: "bg-blue-500",
  2: "bg-cyan-500",
  3: "bg-amber-500",
  4: "bg-orange-500",
  5: "bg-red-500",
};

export const statusColors: Record<SourceStatus, string> = {
  active: "text-emerald-600 dark:text-emerald-400",
  deprecated: "text-amber-600 dark:text-amber-400",
  quarantined: "text-red-600 dark:text-red-400",
};

export const statusIcons: Record<SourceStatus, string> = {
  active: "●",
  deprecated: "◐",
  quarantined: "⚠",
};

export const conflictColors: Record<ConflictStatus, string> = {
  Unanimous: "text-emerald-600 dark:text-emerald-400",
  Agreed: "text-amber-600 dark:text-amber-400",
  Contested: "text-red-600 dark:text-red-400",
};

export const conflictBgColors: Record<ConflictStatus, string> = {
  Unanimous: "bg-emerald-500",
  Agreed: "bg-amber-500",
  Contested: "bg-red-500",
};

export const conflictBadgeColors: Record<ConflictStatus, string> = {
  Unanimous: "bg-emerald-500/20 text-emerald-700 dark:text-emerald-300",
  Agreed: "bg-amber-500/20 text-amber-700 dark:text-amber-300",
  Contested: "bg-red-500/20 text-red-700 dark:text-red-300",
};

export const conflictLabels: Record<ConflictStatus, string> = {
  Unanimous: "Unanimous",
  Agreed: "Mostly Agreed",
  Contested: "Contested",
};
