import { CacheEntry } from './levelcache.classes.cacheentry.js'; export abstract class AbstractCache { public abstract ready: Promise; public abstract status: 'active' | 'inactive'; // Cache Entries /** * store a Blob */ public abstract storeCacheEntryByKey(keyArg: string, valueArg: CacheEntry): Promise; /** * retrieve cache entry */ public abstract retrieveCacheEntryByKey(keyArg: string): Promise; /** * checks for the presence of a key * @param keyArg */ public abstract checkKeyPresence(keyArg: string): Promise; /** * delete a key */ public abstract deleteCacheEntryByKey(keyArg: string): Promise; /** * clean the cache */ public abstract cleanOutdated(): Promise; /** * cleans the complete cache */ public abstract cleanAll(): Promise; }