1 | import type { DocumentNode } from "graphql";
|
2 | import type { ApolloLink, FetchResult } from "../link/core/index.js";
|
3 | import type { Cache, ApolloCache } from "../cache/index.js";
|
4 | import { Observable, DocumentTransform } from "../utilities/index.js";
|
5 | import type { QueryOptions, WatchQueryOptions, SubscriptionOptions, MutationOptions, ErrorPolicy, MutationFetchPolicy } from "./watchQueryOptions.js";
|
6 | import { ObservableQuery } from "./ObservableQuery.js";
|
7 | import { NetworkStatus } from "./networkStatus.js";
|
8 | import type { ApolloQueryResult, OperationVariables, MutationUpdaterFunction, OnQueryUpdated, InternalRefetchQueriesInclude, InternalRefetchQueriesOptions, InternalRefetchQueriesMap, DefaultContext } from "./types.js";
|
9 | import { LocalState } from "./LocalState.js";
|
10 | import type { QueryStoreValue } from "./QueryInfo.js";
|
11 | interface MutationStoreValue {
|
12 | mutation: DocumentNode;
|
13 | variables: Record<string, any>;
|
14 | loading: boolean;
|
15 | error: Error | null;
|
16 | }
|
17 | type UpdateQueries<TData> = MutationOptions<TData, any, any>["updateQueries"];
|
18 | interface TransformCacheEntry {
|
19 | hasClientExports: boolean;
|
20 | hasForcedResolvers: boolean;
|
21 | hasNonreactiveDirective: boolean;
|
22 | clientQuery: DocumentNode | null;
|
23 | serverQuery: DocumentNode | null;
|
24 | defaultVars: OperationVariables;
|
25 | asQuery: DocumentNode;
|
26 | }
|
27 | import type { DefaultOptions } from "./ApolloClient.js";
|
28 | import { Trie } from "@wry/trie";
|
29 | export declare class QueryManager<TStore> {
|
30 | cache: ApolloCache<TStore>;
|
31 | link: ApolloLink;
|
32 | defaultOptions: DefaultOptions;
|
33 | readonly assumeImmutableResults: boolean;
|
34 | readonly documentTransform: DocumentTransform;
|
35 | readonly ssrMode: boolean;
|
36 | readonly defaultContext: Partial<DefaultContext>;
|
37 | private queryDeduplication;
|
38 | private clientAwareness;
|
39 | private localState;
|
40 | private onBroadcast?;
|
41 | mutationStore?: {
|
42 | [mutationId: string]: MutationStoreValue;
|
43 | };
|
44 | private queries;
|
45 | protected fetchCancelFns: Map<string, (error: any) => any>;
|
46 | constructor({ cache, link, defaultOptions, documentTransform, queryDeduplication, onBroadcast, ssrMode, clientAwareness, localState, assumeImmutableResults, defaultContext, }: {
|
47 | cache: ApolloCache<TStore>;
|
48 | link: ApolloLink;
|
49 | defaultOptions?: DefaultOptions;
|
50 | documentTransform?: DocumentTransform;
|
51 | queryDeduplication?: boolean;
|
52 | onBroadcast?: () => void;
|
53 | ssrMode?: boolean;
|
54 | clientAwareness?: Record<string, string>;
|
55 | localState?: LocalState<TStore>;
|
56 | assumeImmutableResults?: boolean;
|
57 | defaultContext?: Partial<DefaultContext>;
|
58 | });
|
59 | /**
|
60 | * Call this method to terminate any active query processes, making it safe
|
61 | * to dispose of this QueryManager instance.
|
62 | */
|
63 | stop(): void;
|
64 | private cancelPendingFetches;
|
65 | mutate<TData, TVariables extends OperationVariables, TContext extends Record<string, any>, TCache extends ApolloCache<any>>({ mutation, variables, optimisticResponse, updateQueries, refetchQueries, awaitRefetchQueries, update: updateWithProxyFn, onQueryUpdated, fetchPolicy, errorPolicy, keepRootFields, context, }: MutationOptions<TData, TVariables, TContext>): Promise<FetchResult<TData>>;
|
66 | markMutationResult<TData, TVariables, TContext, TCache extends ApolloCache<any>>(mutation: {
|
67 | mutationId: string;
|
68 | result: FetchResult<TData>;
|
69 | document: DocumentNode;
|
70 | variables?: TVariables;
|
71 | fetchPolicy?: MutationFetchPolicy;
|
72 | errorPolicy: ErrorPolicy;
|
73 | context?: TContext;
|
74 | updateQueries: UpdateQueries<TData>;
|
75 | update?: MutationUpdaterFunction<TData, TVariables, TContext, TCache>;
|
76 | awaitRefetchQueries?: boolean;
|
77 | refetchQueries?: InternalRefetchQueriesInclude;
|
78 | removeOptimistic?: string;
|
79 | onQueryUpdated?: OnQueryUpdated<any>;
|
80 | keepRootFields?: boolean;
|
81 | }, cache?: ApolloCache<TStore>): Promise<FetchResult<TData>>;
|
82 | markMutationOptimistic<TData, TVariables, TContext, TCache extends ApolloCache<any>>(optimisticResponse: any, mutation: {
|
83 | mutationId: string;
|
84 | document: DocumentNode;
|
85 | variables?: TVariables;
|
86 | fetchPolicy?: MutationFetchPolicy;
|
87 | errorPolicy: ErrorPolicy;
|
88 | context?: TContext;
|
89 | updateQueries: UpdateQueries<TData>;
|
90 | update?: MutationUpdaterFunction<TData, TVariables, TContext, TCache>;
|
91 | keepRootFields?: boolean;
|
92 | }): boolean;
|
93 | fetchQuery<TData, TVars extends OperationVariables>(queryId: string, options: WatchQueryOptions<TVars, TData>, networkStatus?: NetworkStatus): Promise<ApolloQueryResult<TData>>;
|
94 | getQueryStore(): Record<string, QueryStoreValue>;
|
95 | resetErrors(queryId: string): void;
|
96 | transform(document: DocumentNode): DocumentNode;
|
97 | private transformCache;
|
98 | getDocumentInfo(document: DocumentNode): TransformCacheEntry;
|
99 | private getVariables;
|
100 | watchQuery<T, TVariables extends OperationVariables = OperationVariables>(options: WatchQueryOptions<TVariables, T>): ObservableQuery<T, TVariables>;
|
101 | query<TData, TVars extends OperationVariables = OperationVariables>(options: QueryOptions<TVars, TData>, queryId?: string): Promise<ApolloQueryResult<TData>>;
|
102 | private queryIdCounter;
|
103 | generateQueryId(): string;
|
104 | private requestIdCounter;
|
105 | generateRequestId(): number;
|
106 | private mutationIdCounter;
|
107 | generateMutationId(): string;
|
108 | stopQueryInStore(queryId: string): void;
|
109 | private stopQueryInStoreNoBroadcast;
|
110 | clearStore(options?: Cache.ResetOptions): Promise<void>;
|
111 | getObservableQueries(include?: InternalRefetchQueriesInclude): Map<string, ObservableQuery<any, OperationVariables>>;
|
112 | reFetchObservableQueries(includeStandby?: boolean): Promise<ApolloQueryResult<any>[]>;
|
113 | setObservableQuery(observableQuery: ObservableQuery<any, any>): void;
|
114 | startGraphQLSubscription<T = any>({ query, fetchPolicy, errorPolicy, variables, context, }: SubscriptionOptions): Observable<FetchResult<T>>;
|
115 | stopQuery(queryId: string): void;
|
116 | private stopQueryNoBroadcast;
|
117 | removeQuery(queryId: string): void;
|
118 | broadcastQueries(): void;
|
119 | getLocalState(): LocalState<TStore>;
|
120 | protected inFlightLinkObservables: Trie<{
|
121 | observable?: Observable<FetchResult<any>> | undefined;
|
122 | }>;
|
123 | private getObservableFromLink;
|
124 | private getResultsFromLink;
|
125 | private fetchConcastWithInfo;
|
126 | refetchQueries<TResult>({ updateCache, include, optimistic, removeOptimistic, onQueryUpdated, }: InternalRefetchQueriesOptions<ApolloCache<TStore>, TResult>): InternalRefetchQueriesMap<TResult>;
|
127 | private fetchQueryByPolicy;
|
128 | private getQuery;
|
129 | private prepareContext;
|
130 | }
|
131 | export {};
|
132 |
|
\ | No newline at end of file |