jotai
Version:
👻 Next gen state management that will spook you
15 lines (14 loc) • 1.34 kB
TypeScript
import { QueryKey, QueryObserverOptions } from 'react-query';
import { WritableAtom } from 'jotai';
import { CreateQueryOptions, GetQueryClient } from './types';
export declare type AtomWithQueryAction = {
type: 'refetch';
};
export declare type AtomWithQueryOptions<TQueryFnData, TError, TData, TQueryData> = QueryObserverOptions<TQueryFnData, TError, TData, TQueryData> & {
queryKey: QueryKey;
};
export declare type AtomWithQueryOptionsWithEnabled<TQueryFnData, TError, TData, TQueryData> = Pick<AtomWithQueryOptions<TQueryFnData, TError, TData, TQueryData>, Exclude<keyof AtomWithQueryOptions<TQueryFnData, TError, TData, TQueryData>, 'enabled'>> & {
enabled: boolean;
};
export declare function atomWithQuery<TQueryFnData, TError, TData = TQueryFnData, TQueryData = TQueryFnData>(createQuery: CreateQueryOptions<AtomWithQueryOptionsWithEnabled<TQueryFnData, TError, TData, TQueryData>>, getQueryClient?: GetQueryClient): WritableAtom<TData | TQueryData | undefined, AtomWithQueryAction, Promise<void>>;
export declare function atomWithQuery<TQueryFnData, TError, TData = TQueryFnData, TQueryData = TQueryFnData>(createQuery: CreateQueryOptions<AtomWithQueryOptions<TQueryFnData, TError, TData, TQueryData>>, getQueryClient?: GetQueryClient): WritableAtom<TData | TQueryData, AtomWithQueryAction, Promise<void>>;