import { Constructor } from '@ng-doc/core';
import { NgDocCacheAccessor } from '../interfaces';
/**
 * Decorator for cached entities, it will load the cache and assign the properties to the entity
 */
export declare function CachedEntity<TClass extends Constructor<{
    id: string;
}>>(): (Value: TClass, _context: ClassDecoratorContext<TClass>) => {
    new (...args: any[]): {
        __cachedProps?: Map<string, NgDocCacheAccessor<any, any>>;
        __cachedFiles?: Set<string>;
        id: string;
    };
} & TClass;
