/**
 * MPT 혈액대사검사 정상 범위 기준값
 *
 * @description
 * 각 MPT 항목별 권장 정상 범위를 정의합니다.
 * 이 범위 내에 있으면 "우수" 판정을 받습니다.
 *
 * @export
 * @constant
 */
export const MPT_NORMAL_RANGES = {
	/**
	 * 알부민 (Albumin)
	 * 단위: g/dL
	 */
	albumin: { min: 3.3, max: 4.3 },

	/**
	 * 총 글로불린 (Total Globulin)
	 * 단위: g/L
	 */
	totalGlobulin: { min: 9.1, max: 36.1 },

	/**
	 * A/G 비율 (Albumin/Globulin Ratio)
	 * 단위: 비율
	 */
	agRatio: { min: 0.1, max: 0.4 },

	/**
	 * 혈중요소질소 (Blood Urea Nitrogen)
	 * 단위: mg/dL
	 */
	bun: { min: 11.7, max: 18.9 },

	/**
	 * AST (Aspartate Aminotransferase)
	 * 단위: U/L
	 */
	ast: { min: 47, max: 92 },

	/**
	 * GGT (Gamma-Glutamyl Transferase)
	 * 단위: U/L
	 */
	ggt: { min: 11, max: 32 },

	/**
	 * 지방간 지수 (Fatty Liver Index)
	 * 단위: 지수
	 */
	fattyLiverIndex: { min: -1.2, max: 9.9 },

	/**
	 * 칼슘 (Calcium)
	 * 단위: mg/dL
	 */
	calcium: { min: 8.1, max: 10.6 },

	/**
	 * 인 (Phosphorus)
	 * 단위: mg/dL
	 */
	phosphorus: { min: 6.2, max: 8.9 },

	/**
	 * Ca/P 비율 (Calcium/Phosphorus Ratio)
	 * 단위: 비율
	 */
	caPRatio: { min: 1.2, max: 1.3 },

	/**
	 * 마그네슘 (Magnesium)
	 * 단위: mg/dL
	 */
	magnesium: { min: 1.6, max: 3.3 },
} as const;

/**
 * MPT 항목 타입
 */
export type MptCriteriaKey = keyof typeof MPT_NORMAL_RANGES;

/**
 * MPT 범위 타입
 */
export interface MptRange {
	min: number;
	max: number;
}
