/** * GeraClinic health calculators — pure, non-diagnostic reference math. * * These mirror GeraClinic's published health-tools library * (apps/gera-clinic-web/src/lib/health-tools/calc.ts) exactly: same formulas, * same WHO/NIH/ACC-AHA/ADAG reference ranges. Every function returns an * OBJECTIVE number plus, where applicable, a public reference CATEGORY label. * Nothing here diagnoses a condition or prescribes a dose — orientation only. */ export declare const LB_PER_KG = 2.2046226218; export declare const CM_PER_INCH = 2.54; export declare function cmToIn(cm: number): number; export type BmiCategory = 'Underweight' | 'Healthy weight' | 'Overweight' | 'Obesity'; export declare function bmiCategory(value: number): BmiCategory; export declare function bmi(weightKg: number, heightCm: number): { bmi: number; category: BmiCategory; healthyWeightRangeKg: { minKg: number; maxKg: number; }; reference: string; }; export declare function healthyWeightRangeKg(heightCm: number): { minKg: number; maxKg: number; }; export type Sex = 'male' | 'female'; export type ActivityLevel = 'sedentary' | 'light' | 'moderate' | 'active' | 'very_active'; export declare const ACTIVITY_FACTORS: Record; export declare function bmrValue(weightKg: number, heightCm: number, ageYears: number, sex: Sex): number; export declare function bmrTdee(weightKg: number, heightCm: number, ageYears: number, sex: Sex, activity: ActivityLevel): { bmrKcalPerDay: number; tdeeKcalPerDay: number; activityFactor: number; reference: string; }; export declare function idealWeightKg(heightCm: number, sex: Sex): { reference: string; devineKg: number; robinsonKg: number; millerKg: number; hamwiKg: number; }; export type BpCategory = 'Normal' | 'Elevated' | 'Hypertension stage 1' | 'Hypertension stage 2' | 'Hypertensive crisis'; export declare function bloodPressureCategory(systolic: number, diastolic: number): { systolic: number; diastolic: number; category: BpCategory; reference: string; }; export declare function heartRateZones(ageYears: number): { estimatedMaxHr: number; zones: { description: string; lowBpm: number; highBpm: number; name: string; }[]; reference: string; }; export declare const MGDL_PER_MMOL = 18.0182; export declare function a1c(a1cPercent?: number, avgGlucoseMgDl?: number): { a1cPercent: number; estAvgGlucoseMgDl: number; estAvgGlucoseMmolL: number; reference: string; avgGlucoseMgDl?: undefined; estA1cPercent?: undefined; avgGlucoseMmolL?: undefined; error?: undefined; } | { avgGlucoseMgDl: number; estA1cPercent: number; avgGlucoseMmolL: number; reference: string; a1cPercent?: undefined; estAvgGlucoseMgDl?: undefined; estAvgGlucoseMmolL?: undefined; error?: undefined; } | { error: string; a1cPercent?: undefined; estAvgGlucoseMgDl?: undefined; estAvgGlucoseMmolL?: undefined; reference?: undefined; avgGlucoseMgDl?: undefined; estA1cPercent?: undefined; avgGlucoseMmolL?: undefined; }; export declare function waterIntakeLitres(weightKg: number, activityMinutes?: number): { litresPerDay: number; reference: string; }; export type WaistHeightCategory = 'Low' | 'Healthy' | 'Increased' | 'High'; export declare function waistToHeight(waistCm: number, heightCm: number): { ratio: number; category: WaistHeightCategory; reference: string; }; export interface CalculatorInfo { id: string; title: string; description: string; inputs: string[]; reference: string; } export declare const CALCULATORS: CalculatorInfo[];