@naverpay/hidash
Version:
improved lodash
17 lines (15 loc) • 530 B
text/typescript
type AnyFunc = (...args: any[]) => any;
interface MemoizedFunction<T extends AnyFunc> {
(...args: Parameters<T>): ReturnType<T>;
cache: Map<any, ReturnType<T>>;
}
declare class MemoizeCache<T> extends Map<any, T> {
}
/**
* @descriptoin https://unpkg.com/browse/lodash.memoize@4.1.2/index.js
*/
declare function memoize<T extends AnyFunc>(func: T, resolver?: (...args: Parameters<T>) => any): MemoizedFunction<T>;
declare namespace memoize {
var Cache: typeof MemoizeCache;
}
export { memoize as default, memoize };