@e-group/hooks
Version:
eGroup team react-hooks that share across projects.
6 lines (5 loc) • 959 B
TypeScript
import { AxiosError, AxiosResponse } from 'axios';
import queryString, { StringifiableRecord } from 'query-string';
import { SWRConfiguration, Fetcher } from 'swr';
import { PathParams as DefaultPathParamsType, ReturnedValues } from '../typings';
export default function makeGetHook<Data = unknown, PathParams = DefaultPathParamsType, ErrorData = unknown>(urlPattern: string, fetcherArg?: Fetcher<AxiosResponse<Data>>, defaultPathParams?: PathParams, defaultQueryParams?: StringifiableRecord, defaultConfig?: SWRConfiguration<AxiosResponse<Data>, AxiosError<ErrorData>>): (pathParams?: PathParams | undefined, queryParams?: Record<string, string | number | boolean | readonly queryString.Stringifiable[] | null | undefined> | undefined, config?: Partial<import("swr/dist/types").PublicConfiguration<AxiosResponse<Data>, AxiosError<ErrorData>, Fetcher<AxiosResponse<Data>>>> | undefined, disableFetch?: boolean | undefined) => ReturnedValues<Data, ErrorData>;