/// import { ComponentClass, StatelessComponent } from 'react'; import ApolloClient, { MutationQueryReducersMap, ApolloQueryResult, ApolloError, FetchPolicy, FetchMoreOptions, UpdateQueryOptions, FetchMoreQueryOptions, SubscribeToMoreOptions, PureQueryOptions, MutationUpdaterFn } from 'apollo-client'; export interface MutationOpts { variables?: TVariables; optimisticResponse?: Object; updateQueries?: MutationQueryReducersMap; refetchQueries?: string[] | PureQueryOptions[]; update?: MutationUpdaterFn; client?: ApolloClient; notifyOnNetworkStatusChange?: boolean; } export interface QueryOpts { ssr?: boolean; variables?: TVariables; fetchPolicy?: FetchPolicy; pollInterval?: number; client?: ApolloClient; notifyOnNetworkStatusChange?: boolean; skip?: boolean; } export interface QueryProps { error?: ApolloError; networkStatus: number; loading: boolean; variables: TVariables; fetchMore: (fetchMoreOptions: FetchMoreQueryOptions & FetchMoreOptions) => Promise>; refetch: (variables?: TVariables) => Promise>; startPolling: (pollInterval: number) => void; stopPolling: () => void; subscribeToMore: (options: SubscribeToMoreOptions) => () => void; updateQuery: (mapFn: (previousQueryResult: any, options: UpdateQueryOptions) => any) => void; } export declare type MutationFunc = (opts: MutationOpts) => Promise>; export interface OptionProps { ownProps: TProps; data?: QueryProps & TResult; mutate?: MutationFunc; } export declare type ChildProps = P & { data?: QueryProps & Partial; mutate?: MutationFunc; }; export declare type NamedProps = P & { ownProps: R; }; export declare type OperationVariables = { [key: string]: any; }; export interface OperationOption { options?: QueryOpts | MutationOpts | ((props: TProps) => QueryOpts | MutationOpts); props?: (props: OptionProps) => any; skip?: boolean | ((props: any) => boolean); name?: string; withRef?: boolean; shouldResubscribe?: (props: TProps, nextProps: TProps) => boolean; alias?: string; } export declare type CompositeComponent

= ComponentClass

| StatelessComponent

; export interface ComponentDecorator { (component: CompositeComponent): ComponentClass; } export interface InferableComponentDecorator { >(component: T): T; }