import { useMutation, useQueryClient } from '@tanstack/react-query';
import { apiFetch } from '../lib/api';
import type { ScanResult } from '../lib/types';

export function useScan() {
  const qc = useQueryClient();
  return useMutation({
    mutationFn: (url?: string) =>
      apiFetch<ScanResult>('/scan', {
        method: 'POST',
        body: JSON.stringify({ url: url ?? '' }),
      }),
    onSuccess: () => {
      qc.invalidateQueries({ queryKey: ['issues'] });
      qc.invalidateQueries({ queryKey: ['report'] });
    },
  });
}
