// ─── Entities ──────────────────────────────────────────────────────────────
export interface Country {
  id: number;
  name: string;
  code: string;
  flag_url: string;
  created_at: string;
  updated_at: string;
  deleted_at: string | null;
}

// ─── DTOs ──────────────────────────────────────────────────────────────────
export interface CreateCountryDto {
  name: string;
  code: string;
  flag_url?: string;
}

export type UpdateCountryDto = Partial<CreateCountryDto>;

// ─── Paginated response ─────────────────────────────────────────────────────
export interface PaginatedCountriesResponse {
  data: Country[];
  meta: {
    total: number;
    page: number;
    limit: number;
    totalPages: number;
    hasNextPage: boolean;
    hasPrevPage: boolean;
  };
}

// ─── Table row ───────────────────────────────────────────────────────────────
export interface CountryRow {
  sno: number;
  id: number;
  name: string;
  code: string;
  flag_url: string;
  created_at: string;
  updated_at: string;
  [key: string]: any;
}
