rage-framework
Version:
## How to Install *server-side* ```bash npm install @rage-framework/server ```
27 lines (26 loc) • 1.35 kB
TypeScript
import { BehaviorSubject, Observable } from 'rxjs';
import { CacheLayer } from './cache-layer';
import { CacheLayerItem, CacheLayerInterface, Duplicates } from './cache-layer.interfaces';
import { ServiceArgumentsInternal } from "../../decorators/interfaces/service-arguments";
import { LoggerService } from "../utils/logger.service";
export declare class CacheService {
private logger;
constructor(logger: LoggerService);
_cachedLayers: BehaviorSubject<CacheLayer<CacheLayerItem<any>>[]>;
map: Map<any, any>;
config: any;
static createCacheInstance<T>(cacheLayer: any): CacheLayer<CacheLayerItem<T>>;
getLayer<T>(name: string): CacheLayer<CacheLayerItem<T>>;
getLayersByName<T>(name: string): CacheLayer<CacheLayerItem<T>>[];
searchForDuplicateDependenciesInsideApp(): string[];
private isExcludedEvent;
searchForItem(classItem: Function): ServiceArgumentsInternal;
searchForDuplicatesByHash(key: string): Duplicates[];
createLayer<T>(layer: CacheLayerInterface): CacheLayer<CacheLayerItem<T>>;
private LayerHook;
private protectLayerFromInvaders;
private OnExpire;
removeLayer<T>(layerInstance: CacheLayer<CacheLayerItem<T>>): void;
transferItems(name: string, newCacheLayers: CacheLayerInterface[]): CacheLayer<CacheLayerItem<any>>[];
flushCache(): Observable<boolean>;
}