/** * Implements lazy initialization for getter or memoization of a function call similar to pure {@link: Pipe}. * Replaces getter with its calculated value upon first call or keeps track of last call arguments and returned * value for function, skipping calculation when arguments are strictly the same. * * @throws error if used not on getter or function * * CAUTION: they must be pure. * @deprecated use computed instead */ export declare function tuiPure(target: object, propertyKey: string, { get, enumerable, value }: TypedPropertyDescriptor): TypedPropertyDescriptor; /** * Implements lazy initialization for getter or memoization of a function call similar to pure {@link: Pipe}. * Replaces getter with its calculated value upon first call or keeps track of last call arguments and returned * value for function, skipping calculation when arguments are strictly the same. * * CAUTION: they must be pure. * @deprecated use computed instead */ export declare function tuiPure(target: (...args: A) => R, context: ClassGetterDecoratorContext | ClassMethodDecoratorContext): (...args: A) => R; export declare class TuiPureException extends Error { constructor(); }