/**
 * Generates a human-readable Vietnamese explanation of the AVM confidence score.
 *
 * The explanation considers:
 * - Overall confidence level (high/medium/low)
 * - Number of comparable properties used
 * - General market data quality
 */
export function generateConfidenceExplanation(
  confidence: number,
  comparableCount: number,
): string {
  const parts: string[] = [];

  // Confidence level description
  if (confidence >= 0.8) {
    parts.push('Mức độ tin cậy cao');
  } else if (confidence >= 0.5) {
    parts.push('Mức độ tin cậy trung bình');
  } else if (confidence > 0) {
    parts.push('Mức độ tin cậy thấp');
  } else {
    return 'Không đủ dữ liệu để đưa ra ước tính đáng tin cậy. Kết quả chỉ mang tính tham khảo.';
  }

  parts.push(`(${Math.round(confidence * 100)}%).`);

  // Comparable properties context
  if (comparableCount >= 10) {
    parts.push(`Dựa trên ${comparableCount} bất động sản tương đương trong khu vực, cung cấp cơ sở dữ liệu vững chắc.`);
  } else if (comparableCount >= 5) {
    parts.push(`Dựa trên ${comparableCount} bất động sản tương đương. Dữ liệu đủ để ước tính hợp lý.`);
  } else if (comparableCount >= 3) {
    parts.push(`Chỉ có ${comparableCount} bất động sản tương đương. Kết quả có thể dao động.`);
  } else {
    parts.push('Số lượng bất động sản tương đương hạn chế. Nên tham khảo thêm các nguồn khác.');
  }

  // Additional guidance based on confidence
  if (confidence < 0.5) {
    parts.push('Khuyến nghị: Nên tham vấn chuyên gia định giá để có kết quả chính xác hơn.');
  }

  return parts.join(' ');
}
