import { DocumentNode } from 'graphql' ; export type Listener < Query extends unknown > = ( updateInfo : Query ) => void ; export interface FinchCache { setCache < Query extends unknown > ( doc , variables , result ) : void ; getCache < Query extends unknown > ( doc , variables ) : Query | undefined ; subscribe < Query extends unknown > ( doc , variables , listener ) ; }