1 | import { ApolloClient, ApolloError, OperationVariables, SubscriptionOptions } from 'apollo-client';
|
2 | import { DocumentNode } from 'graphql';
|
3 | import { Omit } from './utils';
|
4 | export declare type OnSubscriptionData<TData> = (options: OnSubscriptionDataOptions<TData>) => any;
|
5 | export interface OnSubscriptionDataOptions<TData> {
|
6 | client: ApolloClient<any>;
|
7 | subscriptionData: SubscriptionHookResult<TData>;
|
8 | }
|
9 | export interface SubscriptionHookOptions<TData, TVariables, TCache = object> extends Omit<SubscriptionOptions<TVariables>, 'query'> {
|
10 | skip?: boolean;
|
11 | onSubscriptionData?: OnSubscriptionData<TData>;
|
12 | client?: ApolloClient<TCache>;
|
13 | }
|
14 | export interface SubscriptionHookResult<TData> {
|
15 | data?: TData;
|
16 | error?: ApolloError;
|
17 | loading: boolean;
|
18 | }
|
19 | export declare function useSubscription<TData = any, TVariables = OperationVariables, TCache = object>(query: DocumentNode, { onSubscriptionData, client: overrideClient, ...options }?: SubscriptionHookOptions<TData, TVariables, TCache>): SubscriptionHookResult<TData>;
|