UNPKG

3.88 kBTypeScriptView Raw
1import { NetworkStatus } from './networkStatus';
2import { Observable } from '../utilities';
3import { ApolloError } from '../errors';
4import { QueryManager } from './QueryManager';
5import { ApolloQueryResult, OperationVariables, TypedDocumentNode } from './types';
6import { WatchQueryOptions, FetchMoreQueryOptions, SubscribeToMoreOptions } from './watchQueryOptions';
7import { QueryInfo } from './QueryInfo';
8import { MissingFieldError } from '../cache';
9import { MissingTree } from '../cache/core/types/common';
10export interface FetchMoreOptions<TData = any, TVariables = OperationVariables> {
11 updateQuery?: (previousQueryResult: TData, options: {
12 fetchMoreResult?: TData;
13 variables?: TVariables;
14 }) => TData;
15}
16export interface UpdateQueryOptions<TVariables> {
17 variables?: TVariables;
18}
19export declare class ObservableQuery<TData = any, TVariables extends OperationVariables = OperationVariables> extends Observable<ApolloQueryResult<TData>> {
20 readonly options: WatchQueryOptions<TVariables, TData>;
21 readonly queryId: string;
22 readonly queryName?: string;
23 get query(): TypedDocumentNode<TData, TVariables>;
24 get variables(): TVariables | undefined;
25 private isTornDown;
26 private queryManager;
27 private observers;
28 private subscriptions;
29 private last?;
30 private queryInfo;
31 private concast?;
32 private observer?;
33 private pollingInfo?;
34 constructor({ queryManager, queryInfo, options, }: {
35 queryManager: QueryManager<any>;
36 queryInfo: QueryInfo;
37 options: WatchQueryOptions<TVariables, TData>;
38 });
39 result(): Promise<ApolloQueryResult<TData>>;
40 getCurrentResult(saveAsLastResult?: boolean): ApolloQueryResult<TData>;
41 isDifferentFromLastResult(newResult: ApolloQueryResult<TData>, variables?: TVariables): boolean | undefined;
42 private getLast;
43 getLastResult(variablesMustMatch?: boolean): ApolloQueryResult<TData> | undefined;
44 getLastError(variablesMustMatch?: boolean): ApolloError | undefined;
45 resetLastResults(): void;
46 resetQueryStoreErrors(): void;
47 refetch(variables?: Partial<TVariables>): Promise<ApolloQueryResult<TData>>;
48 fetchMore<TFetchData = TData, TFetchVars extends OperationVariables = TVariables>(fetchMoreOptions: FetchMoreQueryOptions<TFetchVars, TFetchData> & {
49 updateQuery?: (previousQueryResult: TData, options: {
50 fetchMoreResult: TFetchData;
51 variables: TFetchVars;
52 }) => TData;
53 }): Promise<ApolloQueryResult<TFetchData>>;
54 subscribeToMore<TSubscriptionData = TData, TSubscriptionVariables extends OperationVariables = TVariables>(options: SubscribeToMoreOptions<TData, TSubscriptionVariables, TSubscriptionData>): () => void;
55 setOptions(newOptions: Partial<WatchQueryOptions<TVariables, TData>>): Promise<ApolloQueryResult<TData>>;
56 setVariables(variables: TVariables): Promise<ApolloQueryResult<TData> | void>;
57 updateQuery<TVars extends OperationVariables = TVariables>(mapFn: (previousQueryResult: TData, options: Pick<WatchQueryOptions<TVars, TData>, "variables">) => TData): void;
58 startPolling(pollInterval: number): void;
59 stopPolling(): void;
60 private applyNextFetchPolicy;
61 private fetch;
62 private updatePolling;
63 private updateLastResult;
64 reobserve(newOptions?: Partial<WatchQueryOptions<TVariables, TData>>, newNetworkStatus?: NetworkStatus): Promise<ApolloQueryResult<TData>>;
65 private observe;
66 private reportResult;
67 private reportError;
68 hasObservers(): boolean;
69 private tearDownQuery;
70}
71export declare function reobserveCacheFirst<TData, TVars extends OperationVariables>(obsQuery: ObservableQuery<TData, TVars>): Promise<ApolloQueryResult<TData>>;
72export declare function logMissingFieldErrors(missing: MissingFieldError[] | MissingTree | undefined): void;
73//# sourceMappingURL=ObservableQuery.d.ts.map
\No newline at end of file