import { UseQueryOptions } from '@tanstack/react-query'; import { UpdateTeamData } from '../api/teams.api'; import { TeamsQueryParams, TeamsQueryResult, Team } from '../types/team.types'; import { AdvancedFilterConfig } from '../../types/filter'; /** * Hook para obtener la lista de equipos con TanStack Query */ export declare function useTeams(params?: TeamsQueryParams, options?: Omit, 'queryKey' | 'queryFn'>): import('@tanstack/react-query').UseQueryResult; /** * Hook para obtener equipos con filtros avanzados del FilterPopup */ export declare function useTeamsWithFilters(advancedFilters: AdvancedFilterConfig[], params?: Omit, options?: Omit, 'queryKey' | 'queryFn'>): import('@tanstack/react-query').UseQueryResult; /** * Hook que combina la tabla con TanStack Query * Gestiona automáticamente paginación, ordenamiento y filtros */ export interface UseTeamsTableOptions { page?: number; pageSize?: number; sortField?: string; sortDirection?: 'asc' | 'desc'; filters?: AdvancedFilterConfig[]; search?: string; enabled?: boolean; } export declare function useTeamsTable(options?: UseTeamsTableOptions): { data: Team[]; pagination: { page: number; pageSize: number; pageCount: number; total: number; } | null; isLoading: boolean; isFetching: boolean; isError: boolean; error: Error | null; isSuccess: boolean; isPlaceholderData: boolean; refetch: () => Promise; prefetchNextPage: () => void; query: import('@tanstack/react-query').UseQueryResult; }; /** * Hook para invalidar el cache de equipos */ export declare function useInvalidateTeams(): { invalidateAll: () => Promise; invalidateLists: () => Promise; }; /** * Variables para la mutación de actualización */ export interface UpdateTeamVariables { id: number; data: UpdateTeamData; } type OptimisticContext = { previousData: [readonly unknown[], unknown][]; }; /** * Hook para actualizar un equipo con optimistic updates */ export declare function useUpdateTeam(): import('@tanstack/react-query').UseMutationResult; /** * Hook para actualizar solo el nombre de un equipo con optimistic updates */ export declare function useUpdateTeamName(): import('@tanstack/react-query').UseMutationResult; export {}; //# sourceMappingURL=useTeams.d.ts.map