UNPKG

react-query-external-sync

Version:

A tool for syncing React Query state to an external Dev Tools

46 lines (45 loc) 1.42 kB
import { DefaultError, MutationKey, MutationMeta, MutationScope, MutationState, QueryKey, QueryMeta, QueryObserverOptions, QueryState } from '@tanstack/react-query'; export interface SimpleDehydratedState { mutations: unknown[]; queries: unknown[]; } export interface SyncMessage { type: 'dehydrated-state'; state: DehydratedState; isOnlineManagerOnline: boolean; persistentDeviceId: string; } export interface DehydratedState { mutations: DehydratedMutation[]; queries: DehydratedQuery[]; } export interface DehydratedMutation { mutationId: number; mutationKey?: MutationKey; state: MutationState; meta?: MutationMeta; scope?: MutationScope; gcTime?: number; } export interface DehydratedQuery { queryHash: string; queryKey: QueryKey; state: QueryState; promise?: Promise<unknown>; meta?: QueryMeta; observers: ObserverState[]; gcTime?: number; } export interface ObserverState<TQueryFnData = unknown, TError = DefaultError, TData = TQueryFnData, TQueryData = TQueryFnData, TQueryKey extends QueryKey = QueryKey> { queryHash: string; options: QueryObserverOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>; } export interface User { id: string; deviceName: string; deviceId: string; platform?: string; isConnected?: boolean; extraDeviceInfo?: string; envVariables?: Record<string, string>; }