import { ServerError, ServerParseError, ApolloLink } from '@apollo/client'; import { FormattedExecutionResult, GraphQLFormattedError } from 'graphql'; import Dispatcher from './Dispatcher'; /** * Applies reasonable defaults to `useApolloNetworkStatusReducer`. */ export type OperationError = { networkError?: Error | ServerError | ServerParseError; operation: ApolloLink.Operation; response?: FormattedExecutionResult; graphQLErrors?: ReadonlyArray; }; export type NetworkStatus = { numPendingQueries: number; numPendingMutations: number; queryError?: OperationError; mutationError?: OperationError; }; export type UseApolloNetworkStatusOptions = { shouldHandleOperation?: (operation: ApolloLink.Operation) => boolean; }; export default function useApolloNetworkStatus(dispatcher: Dispatcher, options?: UseApolloNetworkStatusOptions): NetworkStatus;