import Cache from "./cache"; import { FullSubscriptionEntry, SubscriptionItem } from "./queryTypes"; declare type QueryPacket = { query: string; variables: unknown; }; declare type ClientOptions = { endpoint: string; cacheSize?: number; noCaching?: boolean; }; declare type OnMutationQuerySetup = { cache: Cache; softReset: (newResults: Object) => void; hardReset: () => void; refresh: () => void; currentResults: () => unknown; isActive: () => boolean; }; export default class Client { private caches; private mutationListeners; private forceListeners; private cacheSize?; private fetchOptions?; endpoint: string; constructor(props: ClientOptions); get cacheSizeToUse(): number; getCache(query: string): Cache; preload(query: string, variables: unknown): undefined; newCacheForQuery(query: string): Cache; setCache(query: string, cache: Cache): void; runQuery(query: string, variables: unknown): Promise; runUri(uri: string): Promise; getGraphqlQuery({ query, variables }: QueryPacket): string; subscribeMutation(subscription: SubscriptionItem | SubscriptionItem[]): () => boolean; subscribeQuery(subscription: FullSubscriptionEntry[], options: OnMutationQuerySetup): () => boolean; forceUpdate(query: string): void; registerQuery(query: string, refresh: () => void): () => boolean | undefined; processMutation(mutation: string, variables: unknown): Promise; private executeMutationSubscription; runMutation(mutation: string, variables: unknown): Promise; } declare class DefaultClientManager { defaultClient: Client | null; setDefaultClient: (client: Client) => Client; getDefaultClient: () => Client | null; } export declare const defaultClientManager: DefaultClientManager; export {};