import { useQuery, useMutation, useQueryClient } from '@tanstack/react-query' import api from '@/services/api' import type { ReportMeta } from '@/types' interface ReportsListResponse { items: ReportMeta[] total: number } export function useReports() { return useQuery({ queryKey: ['reports'], queryFn: () => api.get('/reports/list').then(r => r.data), }) } export function useGenerateReport() { const queryClient = useQueryClient() return useMutation({ mutationFn: (params: { jahr: number; kw: number }) => api.post('/reports/generate', null, { params }).then(r => r.data), onSuccess: () => { queryClient.invalidateQueries({ queryKey: ['reports'] }) }, }) } export function useDeleteReports() { const queryClient = useQueryClient() return useMutation({ mutationFn: (ids: number[]) => api.delete('/reports/delete', { data: ids }), onSuccess: () => { queryClient.invalidateQueries({ queryKey: ['reports'] }) }, }) }