// Auto-generated types for PetCare

// ─── Base ───────────────────────────────────────────
export interface User {
  id: string;
  phone: string;
  nickname: string;
  avatarUrl: string;
  createdAt: string;
  updatedAt: string;
}

export interface Pet {
  id: string;
  ownerId: string;
  name: string;
  species: string;
  breed: string;
  birthDate: string;
  weightKg: number;
  avatarUrl: string;
  createdAt: string;
}

export interface Schedule {
  id: string;
  petId: string;
  type: "vaccine" | "deworming" | "checkup" | "grooming";
  title: string;
  scheduledAt: string;
  completed: boolean;
}

export interface DailyLog {
  id: string;
  petId: string;
  category: "food" | "exercise" | "excretion" | "weight";
  value: string;
  loggedAt: string;
}

export interface Hospital {
  id: string;
  name: string;
  address: string;
  phone: string;
  rating: number;
  distance: number;
  services: string[];
}

// ─── API Responses ──────────────────────────────────
export interface ApiResponse<T> {
  data: T;
  message: string;
}

export interface PaginatedResponse<T> extends ApiResponse<T[]> {
  total: number;
  page: number;
  pageSize: number;
}

export interface ApiError {
  code: string;
  message: string;
  details?: Record<string, string[]>;
}