UNPKG

@zenweb/cache

Version:
30 lines (29 loc) 938 B
import { Cache } from "./cache.js"; import { CacheHelperKey, CacheHelperOption, CacheKeyType } from "./types.js"; export declare class CacheNotExists extends Error { } export declare class CacheHelper<P extends CacheKeyType[], T = unknown> { private _cache; private _key; private _fetch?; private _opt?; constructor(_cache: Cache, _key: CacheHelperKey<P>, _fetch?: ((...param: P) => Promise<T> | T) | undefined, _opt?: CacheHelperOption | undefined); /** * 取得缓存 key */ key(...param: P): string | Promise<string>; /** * 取得缓存 * * 如果已定义 `fetch` 参数当缓存不存在时使用 `fetch` 获取并设置缓存,否则抛出异常 */ get(...param: P): Promise<T>; /** * 设置缓存 */ set(value: T, ...param: P): Promise<import("./types.js").SetResult>; /** * 删除缓存 */ del(...param: P): Promise<number>; }