UNPKG

2.98 kBTypeScriptView Raw
1import { GraphQLError } from 'graphql';
2import { NetworkStatus } from './networkStatus';
3import { Observable } from '../util/Observable';
4import { QueryScheduler } from '../scheduler/scheduler';
5import { ApolloError } from '../errors/ApolloError';
6import { ApolloQueryResult, OperationVariables } from './types';
7import { ModifiableWatchQueryOptions, WatchQueryOptions, FetchMoreQueryOptions, SubscribeToMoreOptions, ErrorPolicy } from './watchQueryOptions';
8import { QueryStoreValue } from '../data/queries';
9export declare type ApolloCurrentResult<T> = {
10 data: T | {};
11 errors?: GraphQLError[];
12 loading: boolean;
13 networkStatus: NetworkStatus;
14 error?: ApolloError;
15 partial?: boolean;
16};
17export interface FetchMoreOptions<TData = any, TVariables = OperationVariables> {
18 updateQuery: (previousQueryResult: TData, options: {
19 fetchMoreResult?: TData;
20 variables?: TVariables;
21 }) => TData;
22}
23export interface UpdateQueryOptions<TVariables> {
24 variables?: TVariables;
25}
26export declare const hasError: (storeValue: QueryStoreValue, policy?: ErrorPolicy) => true | Error | null | undefined;
27export declare class ObservableQuery<TData = any, TVariables = OperationVariables> extends Observable<ApolloQueryResult<TData>> {
28 options: WatchQueryOptions<TVariables>;
29 queryId: string;
30 variables: TVariables;
31 private isCurrentlyPolling;
32 private shouldSubscribe;
33 private isTornDown;
34 private scheduler;
35 private queryManager;
36 private observers;
37 private subscriptionHandles;
38 private lastResult;
39 private lastResultSnapshot;
40 private lastError;
41 constructor({ scheduler, options, shouldSubscribe, }: {
42 scheduler: QueryScheduler<any>;
43 options: WatchQueryOptions<TVariables>;
44 shouldSubscribe?: boolean;
45 });
46 result(): Promise<ApolloQueryResult<TData>>;
47 currentResult(): ApolloCurrentResult<TData>;
48 isDifferentFromLastResult(newResult: ApolloQueryResult<TData>): boolean;
49 getLastResult(): ApolloQueryResult<TData>;
50 getLastError(): ApolloError;
51 resetLastResults(): void;
52 refetch(variables?: TVariables): Promise<ApolloQueryResult<TData>>;
53 fetchMore<K extends keyof TVariables>(fetchMoreOptions: FetchMoreQueryOptions<TVariables, K> & FetchMoreOptions<TData, TVariables>): Promise<ApolloQueryResult<TData>>;
54 subscribeToMore<TSubscriptionData = TData>(options: SubscribeToMoreOptions<TData, TVariables, TSubscriptionData>): () => void;
55 setOptions(opts: ModifiableWatchQueryOptions): Promise<ApolloQueryResult<TData>>;
56 setVariables(variables: TVariables, tryFetch?: boolean, fetchResults?: boolean): Promise<ApolloQueryResult<TData>>;
57 updateQuery(mapFn: (previousQueryResult: TData, options: UpdateQueryOptions<TVariables>) => TData): void;
58 stopPolling(): void;
59 startPolling(pollInterval: number): void;
60 private onSubscribe;
61 private setUpQuery;
62 private tearDownQuery;
63}
64//# sourceMappingURL=ObservableQuery.d.ts.map
\No newline at end of file