import { CacheConfig } from './models/cache-config'; type DecoratorSignature = (_: Object, __: string | symbol, descriptor: TypedPropertyDescriptor) => TypedPropertyDescriptor | void; /** * Decorator, used to cache calculated result of functions. */ export declare function Cache(cacheConfigOrTarget: CacheConfig): DecoratorSignature; export declare function Cache(cacheConfigOrTarget: Object, propertyKey: string | symbol, descriptor: TypedPropertyDescriptor): TypedPropertyDescriptor | void; /** * Decorated function should return {@link ConditionalResult}. * You have to check types by yourself {@see https://github.com/microsoft/TypeScript/issues/4881} */ export declare function PConditionalCache(_: Object, __: string | symbol, descriptor: TypedPropertyDescriptor): TypedPropertyDescriptor | void; export {};