import { useQuery, UseQueryResult } from '@tanstack/react-query';
import { profileService } from '../services/profile.service';
import { Colaborador } from '../domain/Colaborador';

export const COLABORADOR_ATUAL_QUERY_KEY = ['colaborador-atual'] as const;

/**
 * Hook para obter o colaborador atualmente autenticado.
 * Encapsula a lógica de busca e cache do perfil do usuário,
 * desacoplando essa responsabilidade do módulo de login.
 */
export function useColaboradorAtual(): UseQueryResult<Colaborador> {
  return useQuery({
    queryKey: COLABORADOR_ATUAL_QUERY_KEY,
    queryFn: () => profileService.obterColaboradorAtual(),
    retry: false,
    staleTime: Infinity,
  });
}
