UNPKG

layered-loader

Version:

Data loader with support for caching and fallback data sources

21 lines (20 loc) 1.86 kB
import { AbstractCache } from './AbstractCache'; import type { InMemoryGroupCacheConfiguration } from './memory/InMemoryGroupCache'; import type { GroupNotificationPublisher } from './notifications/GroupNotificationPublisher'; import type { GroupCache } from './types/DataSources'; import type { GetManyResult, SynchronousGroupCache } from './types/SyncDataSources'; export declare abstract class AbstractGroupCache<LoadedValue, LoadParams = string> extends AbstractCache<LoadedValue, Map<string, Promise<LoadedValue | undefined | null> | undefined>, GroupCache<LoadedValue>, SynchronousGroupCache<LoadedValue>, InMemoryGroupCacheConfiguration, GroupNotificationPublisher<LoadedValue>, LoadParams> { isGroupCache(): boolean; invalidateCacheForGroup(group: string): Promise<void>; getInMemoryOnly(loadParams: LoadParams, group: string): LoadedValue | undefined | null; getManyInMemoryOnly(keys: string[], group: string): GetManyResult<LoadedValue>; getAsyncOnly(loadParams: LoadParams, group: string): Promise<LoadedValue | undefined | null>; getManyAsyncOnly(keys: string[], group: string, loadParams?: LoadParams): Promise<GetManyResult<LoadedValue>>; get(loadParams: LoadParams, group: string): Promise<LoadedValue | undefined | null>; getMany(keys: string[], group: string, loadParams?: LoadParams): Promise<LoadedValue[]>; invalidateCacheFor(key: string, group: string): Promise<void>; protected resolveGroupValue(key: string, group: string, _loadParams?: LoadParams): Promise<LoadedValue | undefined | null>; protected resolveManyGroupValues(keys: string[], group: string, _loadParams?: LoadParams): Promise<GetManyResult<LoadedValue>>; protected resolveGroupLoads(group: string): Map<any, any>; protected deleteGroupRunningLoad(groupLoads: Map<string, unknown>, group: string, key: string): void; }