import { OperationType, CacheConfig, GraphQLTaggedNode } from 'relay-runtime'; import { RenderProps, QueryOptions, LoadQuery } from 'relay-hooks'; import { Environment } from '@wora/relay-offline'; export interface CacheConfigTTL extends CacheConfig { ttl?: number; } export interface OfflineLoadQuery extends LoadQuery { getValue: (environment?: Environment) => RenderProps | Promise; next: (environment: Environment, gqlQuery: GraphQLTaggedNode, variables?: TOperationType['variables'], options?: QueryOptionsOffline) => Promise; } export interface QueryProps extends QueryOptionsOffline { query: GraphQLTaggedNode; variables: T['variables']; } export declare type QueryOptionsOffline = QueryOptions & { networkCacheConfig?: CacheConfigTTL; };