UNPKG

react-query-handler

Version:

A React component to handle query states with TypeScript support

33 lines (32 loc) 1.17 kB
import React, { ReactNode } from "react"; export interface IQueryResult<T> { isLoading: boolean; isError: boolean; isSuccess: boolean; data?: T; error?: Error; } export interface IQueryHandlerProps<T> { query?: IQueryResult<T>; loadingComponent?: ReactNode; errorComponent?: ReactNode; emptyComponent?: ReactNode; children: ReactNode; } export interface IQueryHandlerConfig { defaultLoadingComponent?: ReactNode; defaultErrorComponent?: ReactNode; defaultEmptyComponent?: ReactNode; } export declare const QueryHandlerProvider: React.FC<{ config: IQueryHandlerConfig; children: ReactNode; }>; declare const QueryHandler: <T>({ query, loadingComponent, errorComponent, emptyComponent, children, }: IQueryHandlerProps<T>) => string | number | true | Iterable<React.ReactNode> | React.JSX.Element; export declare const useQueryHandler: <T>(query?: IQueryResult<T>, components?: { loadingComponent?: ReactNode; errorComponent?: ReactNode; emptyComponent?: ReactNode; }) => ReactNode | T | undefined; export declare const useQueryHandlerConfig: () => IQueryHandlerConfig; export default QueryHandler;