queryObserver.d.ts 3.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. import { Subscribable } from './subscribable';
  2. import type { QueryKey, QueryObserverOptions, QueryObserverResult, RefetchOptions } from './types';
  3. import type { Action, FetchOptions, Query } from './query';
  4. import type { QueryClient } from './queryClient';
  5. import type { DefaultedQueryObserverOptions, RefetchPageFilters } from './types';
  6. declare type QueryObserverListener<TData, TError> = (result: QueryObserverResult<TData, TError>) => void;
  7. export interface NotifyOptions {
  8. cache?: boolean;
  9. listeners?: boolean;
  10. onError?: boolean;
  11. onSuccess?: boolean;
  12. }
  13. export interface ObserverFetchOptions extends FetchOptions {
  14. throwOnError?: boolean;
  15. }
  16. export declare class QueryObserver<TQueryFnData = unknown, TError = unknown, TData = TQueryFnData, TQueryData = TQueryFnData, TQueryKey extends QueryKey = QueryKey> extends Subscribable<QueryObserverListener<TData, TError>> {
  17. options: QueryObserverOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>;
  18. private client;
  19. private currentQuery;
  20. private currentQueryInitialState;
  21. private currentResult;
  22. private currentResultState?;
  23. private currentResultOptions?;
  24. private previousQueryResult?;
  25. private selectError;
  26. private selectFn?;
  27. private selectResult?;
  28. private staleTimeoutId?;
  29. private refetchIntervalId?;
  30. private currentRefetchInterval?;
  31. private trackedProps;
  32. constructor(client: QueryClient, options: QueryObserverOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>);
  33. protected bindMethods(): void;
  34. protected onSubscribe(): void;
  35. protected onUnsubscribe(): void;
  36. shouldFetchOnReconnect(): boolean;
  37. shouldFetchOnWindowFocus(): boolean;
  38. destroy(): void;
  39. setOptions(options?: QueryObserverOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>, notifyOptions?: NotifyOptions): void;
  40. getOptimisticResult(options: DefaultedQueryObserverOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>): QueryObserverResult<TData, TError>;
  41. getCurrentResult(): QueryObserverResult<TData, TError>;
  42. trackResult(result: QueryObserverResult<TData, TError>): QueryObserverResult<TData, TError>;
  43. getCurrentQuery(): Query<TQueryFnData, TError, TQueryData, TQueryKey>;
  44. remove(): void;
  45. refetch<TPageData>({ refetchPage, ...options }?: RefetchOptions & RefetchPageFilters<TPageData>): Promise<QueryObserverResult<TData, TError>>;
  46. fetchOptimistic(options: QueryObserverOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>): Promise<QueryObserverResult<TData, TError>>;
  47. protected fetch(fetchOptions: ObserverFetchOptions): Promise<QueryObserverResult<TData, TError>>;
  48. private executeFetch;
  49. private updateStaleTimeout;
  50. private computeRefetchInterval;
  51. private updateRefetchInterval;
  52. private updateTimers;
  53. private clearStaleTimeout;
  54. private clearRefetchInterval;
  55. protected createResult(query: Query<TQueryFnData, TError, TQueryData, TQueryKey>, options: QueryObserverOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>): QueryObserverResult<TData, TError>;
  56. updateResult(notifyOptions?: NotifyOptions): void;
  57. private updateQuery;
  58. onQueryUpdate(action: Action<TData, TError>): void;
  59. private notify;
  60. }
  61. export {};
  62. //# sourceMappingURL=queryObserver.d.ts.map