UNPKG

gqty

Version:

The No-GraphQL Client for TypeScript

20 lines (19 loc) 690 B
import type { CacheDataContainer } from './Cache'; import type { Selection } from './Selection'; import type { Unsubscribe } from './Unsubscribe'; /** * Containers that handles selections. */ export interface Selectable { select(selection: Selection, /** * When no cache container is provided, it currently means virtual * selections on null objects or empty arrays where proxies cannot be * further created. * * The selectable context is responsible to restore a meaningful * sub-selection tree regarding these selections. */ cache?: CacheDataContainer): boolean | void; subscribeSelect(callback: Selectable['select']): Unsubscribe; }