import client from './client' export interface Garden { id?: number nom: string description?: string type: string longueur_m?: number largeur_m?: number surface_m2?: number carre_potager?: boolean carre_x_cm?: number carre_y_cm?: number photo_parcelle?: string latitude?: number longitude?: number altitude?: number adresse?: string exposition?: string ombre?: string sol_type?: string grille_largeur: number grille_hauteur: number } export interface GardenCell { id?: number garden_id?: number col: number row: number libelle?: string etat: string notes?: string } export interface Measurement { id?: number garden_id?: number temp_air?: number temp_sol?: number humidite_air?: number humidite_sol?: number source?: string ts?: string } export const gardensApi = { list: () => client.get('/api/gardens').then(r => r.data), get: (id: number) => client.get(`/api/gardens/${id}`).then(r => r.data), create: (g: Partial) => client.post('/api/gardens', g).then(r => r.data), update: (id: number, g: Partial) => client.put(`/api/gardens/${id}`, g).then(r => r.data), uploadPhoto: (id: number, file: File) => { const fd = new FormData() fd.append('file', file) return client.post(`/api/gardens/${id}/photo`, fd).then(r => r.data) }, delete: (id: number) => client.delete(`/api/gardens/${id}`), cells: (id: number) => client.get(`/api/gardens/${id}/cells`).then(r => r.data), createCell: (id: number, cell: Partial) => client.post(`/api/gardens/${id}/cells`, cell).then(r => r.data), updateCell: (id: number, cellId: number, cell: Partial) => client.put(`/api/gardens/${id}/cells/${cellId}`, cell).then(r => r.data), measurements: (id: number) => client.get(`/api/gardens/${id}/measurements`).then(r => r.data), addMeasurement: (id: number, m: Partial) => client.post(`/api/gardens/${id}/measurements`, m).then(r => r.data), }