/** * Memoize Pattern - Cache function results */ import { Logger } from "../types/common"; export interface MemoizeOptions { execute: (...args: TArgs) => Promise | TResult; ttl?: number; keyFn?: (...args: TArgs) => string; logger?: Logger; onCacheHit?: (key: string) => void; onCacheMiss?: (key: string) => void; } export interface MemoizedFunction { (...args: TArgs): Promise; clear: () => void; } export declare function memoize(options: MemoizeOptions): MemoizedFunction; //# sourceMappingURL=memoize.d.ts.map