import { http } from './http' export interface Spot { id: number name: string type: string latitude: number | null longitude: number | null } export interface Mate { dogId: number name: string breed: string | null } export interface AiMate { dogId: number name: string breed: string | null score: number reason: string } export interface Review { id: number tag: string | null content: string | null createdAt: string } export interface CheckInResult { id: number spotId: number dogId: number expiresAt: string } export const spotsApi = { list: () => http.get('/api/spots'), mates: (spotId: number, userId?: number) => http.get(`/api/spots/${spotId}/mates${userId ? `?userId=${userId}` : ''}`), aiMates: (spotId: number, dogId: number) => http.get(`/api/spots/${spotId}/ai-mates?dogId=${dogId}`), frequentBreeds: (spotId: number) => http.get<{ breeds: string[] }>(`/api/spots/${spotId}/frequent-breeds`), reviews: (spotId: number) => http.get(`/api/spots/${spotId}/reviews`), checkIn: (spotId: number, userId: number, dogId: number) => http.post(`/api/spots/${spotId}/checkins`, { userId, dogId }), addReview: (spotId: number, userId: number, tag: string) => http.post(`/api/spots/${spotId}/reviews`, { userId, tag }), }