@hhgtech/hhg-components
Version:
Hello Health Group common components
25 lines (24 loc) • 910 B
TypeScript
import { ListProviderType, TFilterOptions } from "./type";
export declare function useList<T>({ fetcher, pageSize, defaultSearch, defaultFilters, debounceSearch, defaultLoading, }: {
fetcher: ListProviderType<T>['fetcher'];
pageSize?: number;
defaultSearch?: string;
defaultFilters?: Record<string, any>;
debounceSearch?: number;
defaultLoading?: boolean;
}): {
items: any[];
total: number;
page: number;
pageSize: number;
search: string;
loading: boolean;
loadingMore: boolean;
filters: Record<string, any>;
handleChangePage: (page: number) => void;
handleChangeSearch: (value: string) => void;
handleLoadMore: () => void;
handleChangeFilter: (filterData: TFilterOptions, filterOptions: TFilterOptions[]) => void;
handleUpdateFilter: (filterObject: Record<string, any>) => void;
resetData: () => void;
};