import { api } from "@/lib/api";
import type { ApiEnvelope } from "@/types/api";
import type { AdminMessage, PaginatedResult } from "@/types/admin";

export async function getMessages(params: { page?: number; limit?: number; lu?: boolean } = {}) {
  const { data } = await api.get<ApiEnvelope<PaginatedResult<AdminMessage>>>("/admin/messages", { params });
  return data.data;
}

export async function updateStatutMessage(id: number, payload: { lu?: boolean; traite?: boolean }): Promise<AdminMessage> {
  const { data } = await api.put<ApiEnvelope<AdminMessage>>(`/admin/messages/${id}/statut`, payload);
  return data.data;
}

export async function deleteMessage(id: number): Promise<void> {
  await api.delete(`/admin/messages/${id}`);
}
