@re-shell/cli
Version:
Full-stack development platform uniting microservices and microfrontends. Build complete applications with .NET (ASP.NET Core Web API, Minimal API), Java (Spring Boot, Quarkus, Micronaut, Vert.x), Rust (Actix-Web, Warp, Rocket, Axum), Python (FastAPI, Dja
71 lines (70 loc) • 1.72 kB
TypeScript
export declare class StartupCache {
private static instance;
private cachePath;
private metadata;
private memoryCache;
private dirty;
private constructor();
static getInstance(): StartupCache;
/**
* Get a cached value
*/
get<T>(key: string): T | null;
/**
* Set a cached value
*/
set(key: string, value: any, ttl?: number): void;
/**
* Check if cache has valid entry
*/
has(key: string): boolean;
/**
* Delete a cached value
*/
delete(key: string): void;
/**
* Clear all cache
*/
clear(): void;
/**
* Get or compute a cached value
*/
getOrCompute<T>(key: string, compute: () => Promise<T>, ttl?: number): Promise<T>;
/**
* Cache command metadata for faster lookup
*/
cacheCommandMetadata(commands: Record<string, any>): void;
/**
* Get cached command metadata
*/
getCachedCommandMetadata(): Record<string, any> | null;
/**
* Cache framework detection results
*/
cacheFrameworkDetection(path: string, framework: string): void;
/**
* Get cached framework detection
*/
getCachedFrameworkDetection(path: string): string | null;
/**
* Cache plugin metadata
*/
cachePluginMetadata(pluginId: string, metadata: any): void;
/**
* Get cached plugin metadata
*/
getCachedPluginMetadata(pluginId: string): any | null;
/**
* Load cache metadata from disk
*/
private loadMetadata;
/**
* Save cache metadata to disk
*/
private save;
/**
* Generate hash for cache keys
*/
private hash;
}
export declare const startupCache: StartupCache;