1 |
|
2 |
|
3 |
|
4 |
|
5 |
|
6 |
|
7 |
|
8 | declare namespace memoizee {
|
9 | interface Options<F extends (...args: any[]) => any> {
|
10 | length?: number | false | undefined;
|
11 | maxAge?: number | undefined;
|
12 | max?: number | undefined;
|
13 | preFetch?: number | true | undefined;
|
14 | promise?: boolean | "then" | "done" | "done:finally" | undefined;
|
15 | dispose?(value: any): void;
|
16 | async?: boolean | undefined;
|
17 | primitive?: boolean | undefined;
|
18 | normalizer?(args: Parameters<F>): string;
|
19 | resolvers?: Array<(arg: any) => any> | undefined;
|
20 | profileName?: string;
|
21 | }
|
22 |
|
23 | interface Memoized<F> {
|
24 | delete: F;
|
25 | clear: F & (() => void);
|
26 | }
|
27 | }
|
28 |
|
29 | declare function memoizee<F extends (...args: any[]) => any>(f: F, options?: memoizee.Options<F>): F & memoizee.Memoized<F>;
|
30 |
|
31 | export = memoizee;
|