interface UseTableProps<T> {
    data: T[];
    itemsPerPage?: number;
    searchFields?: (keyof T)[];
}
export declare function useTable<T>({ data, itemsPerPage, searchFields }: UseTableProps<T>): {
    searchTerm: string;
    setSearchTerm: import('react').Dispatch<import('react').SetStateAction<string>>;
    statusFilter: string;
    setStatusFilter: import('react').Dispatch<import('react').SetStateAction<string>>;
    roleFilter: string;
    setRoleFilter: import('react').Dispatch<import('react').SetStateAction<string>>;
    currentPage: number;
    setCurrentPage: import('react').Dispatch<import('react').SetStateAction<number>>;
    filteredData: T[];
    paginatedData: T[];
    totalPages: number;
    startIndex: number;
    endIndex: number;
    totalItems: number;
};
export {};
