timm.d.ts
1.91 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
declare module 'timm' {
type ArrayOrObject = Array<any> | Object;
type Key = number | string;
export function clone<T = ArrayOrObject>(obj: T): T;
export function addLast<T>(array: Array<T>, val: Array<T> | T): Array<T>;
export function addFirst<T>(array: Array<T>, val: Array<T> | T): Array<T>;
export function removeLast<T>(array: Array<T>): Array<T>;
export function removeFirst<T>(array: Array<T>): Array<T>;
export function insert<T>(
array: Array<T>,
idx: number,
val: Array<T> | T
): Array<T>;
export function removeAt<T>(array: Array<T>, idx: number): Array<T>;
export function replaceAt<T>(
array: Array<T>,
idx: number,
newItem: T
): Array<T>;
export function getIn(obj: ArrayOrObject | undefined, path: Array<Key>): any;
export function set<T>(obj: T | undefined, key: Key, val: any): T;
export function setIn<T = ArrayOrObject>(
obj: T,
path: Array<Key>,
val: any
): T;
export function update<T = ArrayOrObject>(
obj: T,
key: Key,
fnUpdate: (prevValue: any) => any
): T;
export function updateIn<T = ArrayOrObject>(
obj: T,
path: Array<Key>,
fnUpdate: (prevValue: any) => any
): T;
export function merge(
a: Object,
b?: Object,
c?: Object,
d?: Object,
e?: Object,
f?: Object,
...rest: Array<Object>
): Object;
export function mergeDeep(
a: Object,
b?: Object,
c?: Object,
d?: Object,
e?: Object,
f?: Object,
...rest: Array<Object>
): Object;
export function mergeIn<T = ArrayOrObject>(
a: T,
path: Array<Key>,
b?: Object,
c?: Object,
d?: Object,
e?: Object,
f?: Object,
...rest: Array<Object>
): T;
export function omit(obj: Object, attrs: Array<string> | string): Object;
export function addDefaults(
a: Object,
b?: Object,
c?: Object,
d?: Object,
e?: Object,
f?: Object,
...rest: Array<Object>
): Object;
}