UNPKG

@graphql-mesh/types

Version:
22 lines (21 loc) 848 B
type StoreFlags = { readonly: boolean; validate: boolean; }; type ProxyOptions<TData, TJSONData = any> = { codify: (value: TData, identifier: string) => string | Promise<string>; fromJSON: (jsonData: TJSONData, identifier: string) => TData | Promise<TData>; toJSON: (value: TData, identifier: string) => TJSONData | Promise<TJSONData>; validate: (oldValue: TData, newValue: TData, identifier: string) => void | Promise<void>; }; type StoreProxy<TData> = { set(value: TData): Promise<void>; get(): Promise<TData>; getWithSet(setterFn: () => TData | Promise<TData>): Promise<TData>; delete(): Promise<void>; }; export interface IMeshStore { child(childIdentifier: string, flags?: Partial<StoreFlags>): IMeshStore; proxy<TData>(id: string, options: ProxyOptions<TData>): StoreProxy<TData>; } export {};