1 | import { DecoratorConfig, ResolvableFunction } from './factory';
|
2 | export interface DebounceOptions {
|
3 | wait?: number;
|
4 | leading?: boolean;
|
5 | trailing?: boolean;
|
6 | maxWait?: number;
|
7 | }
|
8 | export interface ApplicateOptions {
|
9 | config: DecoratorConfig;
|
10 | target: any;
|
11 | value: any;
|
12 | args: any[];
|
13 | instance?: Object;
|
14 | }
|
15 | export interface ThrottleOptions {
|
16 | leading?: boolean;
|
17 | trailing?: boolean;
|
18 | }
|
19 | export interface MemoizeMap<T, U> {
|
20 | get(key: T): U;
|
21 | has(key: T): boolean;
|
22 | set(key: T, value: U): void;
|
23 | delete(key: T): void;
|
24 | clear?(): void;
|
25 | }
|
26 | export interface MemoizeConfig<T, U> {
|
27 | resolver?: ResolvableFunction;
|
28 | type?: {
|
29 | new (...args: any[]): MemoizeMap<T, U>;
|
30 | };
|
31 | cache?: MemoizeMap<T, U>;
|
32 | }
|