UNPKG

3.11 kBTypeScriptView Raw
1import { ApolloCache, ApolloClient } from '../../core';
2import { ApolloError } from '../../errors';
3import { ApolloQueryResult, OperationVariables, FetchMoreOptions, UpdateQueryOptions, FetchMoreQueryOptions, SubscribeToMoreOptions, DefaultContext } from '../../core';
4import { MutationFunction, BaseQueryOptions, BaseMutationOptions, MutationResult } from '../types/types';
5export 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}
17export type DataValue<TData, TGraphQLVariables = OperationVariables> = QueryControls<TData, TGraphQLVariables> & Partial<TData>;
18export interface DataProps<TData, TGraphQLVariables = OperationVariables> {
19 data: DataValue<TData, TGraphQLVariables>;
20}
21export interface MutateProps<TData = any, TGraphQLVariables = OperationVariables> {
22 mutate: MutationFunction<TData, TGraphQLVariables>;
23 result: MutationResult<TData>;
24}
25export type ChildProps<TProps = {}, TData = {}, TGraphQLVariables = OperationVariables> = TProps & Partial<DataProps<TData, TGraphQLVariables>> & Partial<MutateProps<TData, TGraphQLVariables>>;
26export type ChildDataProps<TProps = {}, TData = {}, TGraphQLVariables = OperationVariables> = TProps & DataProps<TData, TGraphQLVariables>;
27export type ChildMutateProps<TProps = {}, TData = {}, TGraphQLVariables = OperationVariables> = TProps & MutateProps<TData, TGraphQLVariables>;
28export interface OptionProps<TProps = any, TData = any, TGraphQLVariables = OperationVariables> extends Partial<DataProps<TData, TGraphQLVariables>>, Partial<MutateProps<TData, TGraphQLVariables>> {
29 ownProps: TProps;
30}
31export 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}
40export type WithApolloClient<P> = P & {
41 client?: ApolloClient<any>;
42};
43//# sourceMappingURL=types.d.ts.map
\No newline at end of file