import { NgDocCacheAccessor, NgDocCachedType } from '../interfaces';
/**
 * Decorator for cached properties, it will add the property name to the cachedProperties set
 * @param accessor - Accessor for the cached property, it will be used to get and set the property value in the cache
 */
export declare function CachedProperty<TClass, TProperty, TCachedType extends NgDocCachedType>(accessor?: Partial<NgDocCacheAccessor<TCachedType, TProperty>>): (target: undefined | TClass, context: ClassFieldDecoratorContext<TClass, TProperty>) => (this: TClass, initialValue: TProperty) => TProperty;
