import 'reflect-metadata'; import { Awaitable, ClassType, TypedMethodDecorator } from './def'; import { MayBeArray } from './utility/utility'; export declare const CacheTTL: (ttl: number) => ClassDecorator & MethodDecorator; export declare const CachePrefix: (prefix: string) => ClassDecorator; type ObjectFunction = (o: any) => Awaitable; type ObjectAndKeyFunction = (o: any, key: string) => Awaitable; export declare const CacheKey: (fun?: ObjectAndKeyFunction) => PropertyDecorator & TypedMethodDecorator>; export declare const LockKey: (fun?: ObjectAndKeyFunction>) => PropertyDecorator & TypedMethodDecorator>>; export declare const CastType: (cb: () => ClassType) => PropertyDecorator; export {};