1 | import { DocumentNode } from 'graphql';
|
2 | export declare namespace DataProxy {
|
3 | interface Query<TVariables> {
|
4 | query: DocumentNode;
|
5 | variables?: TVariables;
|
6 | }
|
7 | interface Fragment<TVariables> {
|
8 | id: string;
|
9 | fragment: DocumentNode;
|
10 | fragmentName?: string;
|
11 | variables?: TVariables;
|
12 | }
|
13 | interface WriteQueryOptions<TData, TVariables> extends Query<TVariables> {
|
14 | data: TData;
|
15 | }
|
16 | interface WriteFragmentOptions<TData, TVariables> extends Fragment<TVariables> {
|
17 | data: TData;
|
18 | }
|
19 | interface WriteDataOptions<TData> {
|
20 | data: TData;
|
21 | id?: string;
|
22 | }
|
23 | type DiffResult<T> = {
|
24 | result?: T;
|
25 | complete?: boolean;
|
26 | };
|
27 | }
|
28 | export interface DataProxy {
|
29 | readQuery<QueryType, TVariables = any>(options: DataProxy.Query<TVariables>, optimistic?: boolean): QueryType | null;
|
30 | readFragment<FragmentType, TVariables = any>(options: DataProxy.Fragment<TVariables>, optimistic?: boolean): FragmentType | null;
|
31 | writeQuery<TData = any, TVariables = any>(options: DataProxy.WriteQueryOptions<TData, TVariables>): void;
|
32 | writeFragment<TData = any, TVariables = any>(options: DataProxy.WriteFragmentOptions<TData, TVariables>): void;
|
33 | writeData<TData = any>(options: DataProxy.WriteDataOptions<TData>): void;
|
34 | }
|
35 |
|
\ | No newline at end of file |