dla
Version:
node.js data loader with caching and support of lists
28 lines (27 loc) • 1.11 kB
TypeScript
import * as Types from './shared-types';
export declare abstract class Cache<V> implements Types.ICache<V> {
abstract get(key: string): Promise<V>;
abstract set(key: string, value: V, options?: Types.IOptionsTTL): Promise<void>;
abstract remove(key: string): Promise<void>;
has(key: string): Promise<boolean>;
mhas(keys: string[]): Promise<{
[id: string]: boolean;
}>;
mget(keys: string[]): Promise<{
[key: string]: V;
}>;
mset(few: {
[key: string]: V;
}, options?: Types.IOptionsTTL): Promise<void>;
setnx(key: string, value: V, options?: Types.IOptionsTTL): Promise<void>;
msetnx(few: {
[key: string]: V;
}, options?: Types.IOptionsTTL): Promise<void>;
mremove(keys: string[]): Promise<void>;
load(key: string, loader: () => Types.SyncOrAsync<V>, options?: Types.IOptionsTTL & Types.IOptionsFast): Promise<V>;
mload(keys: string[], loader: (keys: string[]) => Types.SyncOrAsync<{
[id: string]: V;
}>, options?: Types.IOptionsTTL & Types.IOptionsFast): Promise<{
[id: string]: V;
}>;
}