/**
 * Favorite Service
 * Handles CRUD operations for user favorites via API
 */

import http from '@/http';

export interface ApiFavorite {
  id: number;
  cibleId: number;
  tableCible: string;
  libelle: string;
}

/**
 * Get all favorites for the current user
 */
export async function getFavorites(): Promise<ApiFavorite[]> {
  const response = await http.get('/favoris');
  return response.data;
}

/**
 * Add a favorite
 */
export async function addApiFavorite(cibleId: number, tableCible: string): Promise<ApiFavorite> {
  const response = await http.post('/favoris', { cibleId, tableCible });
  return response.data;
}

/**
 * Remove a favorite
 */
export async function removeApiFavorite(favoriteId: number): Promise<void> {
  await http.delete(`/favoris/${favoriteId}`);
}
