hydration.d.ts 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. import type { QueryClient } from './queryClient';
  2. import type { Query, QueryState } from './query';
  3. import type { MutationKey, MutationOptions, QueryKey, QueryOptions } from './types';
  4. import type { Mutation, MutationState } from './mutation';
  5. export interface DehydrateOptions {
  6. dehydrateMutations?: boolean;
  7. dehydrateQueries?: boolean;
  8. shouldDehydrateMutation?: ShouldDehydrateMutationFunction;
  9. shouldDehydrateQuery?: ShouldDehydrateQueryFunction;
  10. }
  11. export interface HydrateOptions {
  12. defaultOptions?: {
  13. queries?: QueryOptions;
  14. mutations?: MutationOptions;
  15. };
  16. }
  17. interface DehydratedMutation {
  18. mutationKey?: MutationKey;
  19. state: MutationState;
  20. }
  21. interface DehydratedQuery {
  22. queryHash: string;
  23. queryKey: QueryKey;
  24. state: QueryState;
  25. }
  26. export interface DehydratedState {
  27. mutations: DehydratedMutation[];
  28. queries: DehydratedQuery[];
  29. }
  30. export declare type ShouldDehydrateQueryFunction = (query: Query) => boolean;
  31. export declare type ShouldDehydrateMutationFunction = (mutation: Mutation) => boolean;
  32. export declare function defaultShouldDehydrateMutation(mutation: Mutation): boolean;
  33. export declare function defaultShouldDehydrateQuery(query: Query): boolean;
  34. export declare function dehydrate(client: QueryClient, options?: DehydrateOptions): DehydratedState;
  35. export declare function hydrate(client: QueryClient, dehydratedState: unknown, options?: HydrateOptions): void;
  36. export {};
  37. //# sourceMappingURL=hydration.d.ts.map