1 | import { ApolloCache, ApolloClient } from '../../core';
|
2 | import { ApolloError } from '../../errors';
|
3 | import { ApolloQueryResult, OperationVariables, FetchMoreOptions, UpdateQueryOptions, FetchMoreQueryOptions, SubscribeToMoreOptions, DefaultContext } from '../../core';
|
4 | import { MutationFunction, BaseQueryOptions, BaseMutationOptions, MutationResult } from '../types/types';
|
5 | export interface QueryControls<TData = any, TGraphQLVariables = OperationVariables> {
|
6 | error?: ApolloError;
|
7 | networkStatus: number;
|
8 | loading: boolean;
|
9 | variables: TGraphQLVariables;
|
10 | fetchMore: (fetchMoreOptions: FetchMoreQueryOptions<TGraphQLVariables, TData> & FetchMoreOptions<TData, TGraphQLVariables>) => Promise<ApolloQueryResult<TData>>;
|
11 | refetch: (variables?: TGraphQLVariables) => Promise<ApolloQueryResult<TData>>;
|
12 | startPolling: (pollInterval: number) => void;
|
13 | stopPolling: () => void;
|
14 | subscribeToMore: (options: SubscribeToMoreOptions) => () => void;
|
15 | updateQuery: (mapFn: (previousQueryResult: any, options: UpdateQueryOptions<any>) => any) => void;
|
16 | }
|
17 | export type DataValue<TData, TGraphQLVariables = OperationVariables> = QueryControls<TData, TGraphQLVariables> & Partial<TData>;
|
18 | export interface DataProps<TData, TGraphQLVariables = OperationVariables> {
|
19 | data: DataValue<TData, TGraphQLVariables>;
|
20 | }
|
21 | export interface MutateProps<TData = any, TGraphQLVariables = OperationVariables> {
|
22 | mutate: MutationFunction<TData, TGraphQLVariables>;
|
23 | result: MutationResult<TData>;
|
24 | }
|
25 | export type ChildProps<TProps = {}, TData = {}, TGraphQLVariables = OperationVariables> = TProps & Partial<DataProps<TData, TGraphQLVariables>> & Partial<MutateProps<TData, TGraphQLVariables>>;
|
26 | export type ChildDataProps<TProps = {}, TData = {}, TGraphQLVariables = OperationVariables> = TProps & DataProps<TData, TGraphQLVariables>;
|
27 | export type ChildMutateProps<TProps = {}, TData = {}, TGraphQLVariables = OperationVariables> = TProps & MutateProps<TData, TGraphQLVariables>;
|
28 | export interface OptionProps<TProps = any, TData = any, TGraphQLVariables = OperationVariables> extends Partial<DataProps<TData, TGraphQLVariables>>, Partial<MutateProps<TData, TGraphQLVariables>> {
|
29 | ownProps: TProps;
|
30 | }
|
31 | export interface OperationOption<TProps, TData, TGraphQLVariables extends OperationVariables = OperationVariables, TChildProps = ChildProps<TProps, TData, TGraphQLVariables>, TContext = DefaultContext, TCache extends ApolloCache<any> = ApolloCache<any>> {
|
32 | options?: BaseQueryOptions<TGraphQLVariables> | BaseMutationOptions<TData, TGraphQLVariables, TContext, TCache> | ((props: TProps) => BaseQueryOptions<TGraphQLVariables> | BaseMutationOptions<TData, TGraphQLVariables, TContext, TCache>);
|
33 | props?: (props: OptionProps<TProps, TData, TGraphQLVariables>, lastProps?: TChildProps | void) => TChildProps;
|
34 | skip?: boolean | ((props: TProps) => boolean);
|
35 | name?: string;
|
36 | withRef?: boolean;
|
37 | shouldResubscribe?: (props: TProps, nextProps: TProps) => boolean;
|
38 | alias?: string;
|
39 | }
|
40 | export type WithApolloClient<P> = P & {
|
41 | client?: ApolloClient<any>;
|
42 | };
|
43 |
|
\ | No newline at end of file |