UNPKG

layered-loader

Version:

Data loader with support for caching and fallback data sources

15 lines (14 loc) 810 B
import type { DataSource } from './types/DataSources'; export type GeneratedDataSourceParams<LoadedValue, LoaderParams = undefined> = { name?: string; dataSourceGetOneFn?: (loadParams: LoaderParams) => Promise<LoadedValue | undefined | null>; dataSourceGetManyFn?: (keys: string[], loadParams?: LoaderParams) => Promise<LoadedValue[]>; }; export declare class GeneratedDataSource<LoadedValue, LoadParams = undefined> implements DataSource<LoadedValue, LoadParams> { private readonly getOneFn; private readonly getManyFn; readonly name: string; constructor(params: GeneratedDataSourceParams<LoadedValue, LoadParams>); get(loadParams: LoadParams): Promise<LoadedValue | undefined | null>; getMany(keys: string[], loadParams: LoadParams | undefined): Promise<LoadedValue[]>; }