UNPKG

365 kBTypeScriptView Raw
1// AUTO-GENERATED: do not modify this file directly.
2// If you need to make changes, modify generate-fp.ts (if necessary), then open a terminal in types/lodash/scripts, and do:
3// npm install && npm run generate
4
5import lodash = require("./index");
6
7export = _;
8
9declare const _: _.LoDashFp;
10declare namespace _ {
11 interface LodashAdd {
12 (augend: number): LodashAdd1x1;
13 (augend: lodash.__, addend: number): LodashAdd1x2;
14 (augend: number, addend: number): number;
15 }
16 type LodashAdd1x1 = (addend: number) => number;
17 type LodashAdd1x2 = (augend: number) => number;
18 interface LodashAfter {
19 <TFunc extends (...args: any[]) => any>(func: TFunc): LodashAfter1x1<TFunc>;
20 (func: lodash.__, n: number): LodashAfter1x2;
21 <TFunc extends (...args: any[]) => any>(func: TFunc, n: number): TFunc;
22 }
23 type LodashAfter1x1<TFunc extends (...args: any[]) => any> = (n: number) => TFunc;
24 type LodashAfter1x2 = <TFunc extends (...args: any[]) => any>(func: TFunc) => TFunc;
25 interface LodashEvery {
26 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>): LodashEvery1x1<T>;
27 <T>(predicate: lodash.__, collection: lodash.List<T> | null | undefined): LodashEvery1x2<T>;
28 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>, collection: lodash.List<T> | null | undefined): boolean;
29 <T extends object>(predicate: lodash.__, collection: T | null | undefined): LodashEvery2x2<T>;
30 <T extends object>(predicate: lodash.ValueIterateeCustom<T[keyof T], boolean>, collection: T | null | undefined): boolean;
31 }
32 type LodashEvery1x1<T> = (collection: lodash.List<T> | object | null | undefined) => boolean;
33 type LodashEvery1x2<T> = (predicate: lodash.ValueIterateeCustom<T, boolean>) => boolean;
34 type LodashEvery2x2<T> = (predicate: lodash.ValueIterateeCustom<T[keyof T], boolean>) => boolean;
35 type LodashOverEvery = <T>(predicates: lodash.Many<(...args: T[]) => boolean>) => (...args: T[]) => boolean;
36 type LodashConstant = <T>(value: T) => () => T;
37 interface LodashSome {
38 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>): LodashSome1x1<T>;
39 <T>(predicate: lodash.__, collection: lodash.List<T> | null | undefined): LodashSome1x2<T>;
40 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>, collection: lodash.List<T> | null | undefined): boolean;
41 <T extends object>(predicate: lodash.__, collection: T | null | undefined): LodashSome2x2<T>;
42 <T extends object>(predicate: lodash.ValueIterateeCustom<T[keyof T], boolean>, collection: T | null | undefined): boolean;
43 }
44 type LodashSome1x1<T> = (collection: lodash.List<T> | object | null | undefined) => boolean;
45 type LodashSome1x2<T> = (predicate: lodash.ValueIterateeCustom<T, boolean>) => boolean;
46 type LodashSome2x2<T> = (predicate: lodash.ValueIterateeCustom<T[keyof T], boolean>) => boolean;
47 type LodashOverSome = <T>(predicates: lodash.Many<(...args: T[]) => boolean>) => (...args: T[]) => boolean;
48 type LodashApply = <TResult>(func: (...args: any[]) => TResult) => (...args: any[]) => TResult;
49 interface LodashAry {
50 (n: number): LodashAry1x1;
51 (n: lodash.__, func: (...args: any[]) => any): LodashAry1x2;
52 (n: number, func: (...args: any[]) => any): (...args: any[]) => any;
53 }
54 type LodashAry1x1 = (func: (...args: any[]) => any) => (...args: any[]) => any;
55 type LodashAry1x2 = (n: number) => (...args: any[]) => any;
56 interface LodashAssign {
57 <TObject>(object: TObject): LodashAssign1x1<TObject>;
58 <TSource>(object: lodash.__, source: TSource): LodashAssign1x2<TSource>;
59 <TObject, TSource>(object: TObject, source: TSource): TObject & TSource;
60 }
61 type LodashAssign1x1<TObject> = <TSource>(source: TSource) => TObject & TSource;
62 type LodashAssign1x2<TSource> = <TObject>(object: TObject) => TObject & TSource;
63 interface LodashAssignAll {
64 <TObject, TSource>(object: [TObject, TSource]): TObject & TSource;
65 <TObject, TSource1, TSource2>(object: [TObject, TSource1, TSource2]): TObject & TSource1 & TSource2;
66 <TObject, TSource1, TSource2, TSource3>(object: [TObject, TSource1, TSource2, TSource3]): TObject & TSource1 & TSource2 & TSource3;
67 <TObject, TSource1, TSource2, TSource3, TSource4>(object: [TObject, TSource1, TSource2, TSource3, TSource4]): TObject & TSource1 & TSource2 & TSource3 & TSource4;
68 <TObject>(object: [TObject]): TObject;
69 (object: ReadonlyArray<any>): any;
70 }
71 interface LodashAssignAllWith {
72 (customizer: lodash.AssignCustomizer): LodashAssignAllWith1x1;
73 (customizer: lodash.__, args: ReadonlyArray<any>): LodashAssignAllWith1x2;
74 (customizer: lodash.AssignCustomizer, args: ReadonlyArray<any>): any;
75 }
76 type LodashAssignAllWith1x1 = (args: ReadonlyArray<any>) => any;
77 type LodashAssignAllWith1x2 = (customizer: lodash.AssignCustomizer) => any;
78 interface LodashAssignIn {
79 <TObject>(object: TObject): LodashAssignIn1x1<TObject>;
80 <TSource>(object: lodash.__, source: TSource): LodashAssignIn1x2<TSource>;
81 <TObject, TSource>(object: TObject, source: TSource): TObject & TSource;
82 }
83 type LodashAssignIn1x1<TObject> = <TSource>(source: TSource) => TObject & TSource;
84 type LodashAssignIn1x2<TSource> = <TObject>(object: TObject) => TObject & TSource;
85 interface LodashAssignInAll {
86 <TObject, TSource>(object: [TObject, TSource]): TObject & TSource;
87 <TObject, TSource1, TSource2>(object: [TObject, TSource1, TSource2]): TObject & TSource1 & TSource2;
88 <TObject, TSource1, TSource2, TSource3>(object: [TObject, TSource1, TSource2, TSource3]): TObject & TSource1 & TSource2 & TSource3;
89 <TObject, TSource1, TSource2, TSource3, TSource4>(object: [TObject, TSource1, TSource2, TSource3, TSource4]): TObject & TSource1 & TSource2 & TSource3 & TSource4;
90 <TObject>(object: [TObject]): TObject;
91 <TResult>(object: ReadonlyArray<any>): TResult;
92 }
93 interface LodashAssignInAllWith {
94 (customizer: lodash.AssignCustomizer): LodashAssignInAllWith1x1;
95 (customizer: lodash.__, args: ReadonlyArray<any>): LodashAssignInAllWith1x2;
96 (customizer: lodash.AssignCustomizer, args: ReadonlyArray<any>): any;
97 }
98 type LodashAssignInAllWith1x1 = (args: ReadonlyArray<any>) => any;
99 type LodashAssignInAllWith1x2 = (customizer: lodash.AssignCustomizer) => any;
100 interface LodashAssignInWith {
101 (customizer: lodash.AssignCustomizer): LodashAssignInWith1x1;
102 <TObject>(customizer: lodash.__, object: TObject): LodashAssignInWith1x2<TObject>;
103 <TObject>(customizer: lodash.AssignCustomizer, object: TObject): LodashAssignInWith1x3<TObject>;
104 <TSource>(customizer: lodash.__, object: lodash.__, source: TSource): LodashAssignInWith1x4<TSource>;
105 <TSource>(customizer: lodash.AssignCustomizer, object: lodash.__, source: TSource): LodashAssignInWith1x5<TSource>;
106 <TObject, TSource>(customizer: lodash.__, object: TObject, source: TSource): LodashAssignInWith1x6<TObject, TSource>;
107 <TObject, TSource>(customizer: lodash.AssignCustomizer, object: TObject, source: TSource): TObject & TSource;
108 }
109 interface LodashAssignInWith1x1 {
110 <TObject>(object: TObject): LodashAssignInWith1x3<TObject>;
111 <TSource>(object: lodash.__, source: TSource): LodashAssignInWith1x5<TSource>;
112 <TObject, TSource>(object: TObject, source: TSource): TObject & TSource;
113 }
114 interface LodashAssignInWith1x2<TObject> {
115 (customizer: lodash.AssignCustomizer): LodashAssignInWith1x3<TObject>;
116 <TSource>(customizer: lodash.__, source: TSource): LodashAssignInWith1x6<TObject, TSource>;
117 <TSource>(customizer: lodash.AssignCustomizer, source: TSource): TObject & TSource;
118 }
119 type LodashAssignInWith1x3<TObject> = <TSource>(source: TSource) => TObject & TSource;
120 interface LodashAssignInWith1x4<TSource> {
121 (customizer: lodash.AssignCustomizer): LodashAssignInWith1x5<TSource>;
122 <TObject>(customizer: lodash.__, object: TObject): LodashAssignInWith1x6<TObject, TSource>;
123 <TObject>(customizer: lodash.AssignCustomizer, object: TObject): TObject & TSource;
124 }
125 type LodashAssignInWith1x5<TSource> = <TObject>(object: TObject) => TObject & TSource;
126 type LodashAssignInWith1x6<TObject, TSource> = (customizer: lodash.AssignCustomizer) => TObject & TSource;
127 interface LodashAssignWith {
128 (customizer: lodash.AssignCustomizer): LodashAssignWith1x1;
129 <TObject>(customizer: lodash.__, object: TObject): LodashAssignWith1x2<TObject>;
130 <TObject>(customizer: lodash.AssignCustomizer, object: TObject): LodashAssignWith1x3<TObject>;
131 <TSource>(customizer: lodash.__, object: lodash.__, source: TSource): LodashAssignWith1x4<TSource>;
132 <TSource>(customizer: lodash.AssignCustomizer, object: lodash.__, source: TSource): LodashAssignWith1x5<TSource>;
133 <TObject, TSource>(customizer: lodash.__, object: TObject, source: TSource): LodashAssignWith1x6<TObject, TSource>;
134 <TObject, TSource>(customizer: lodash.AssignCustomizer, object: TObject, source: TSource): TObject & TSource;
135 }
136 interface LodashAssignWith1x1 {
137 <TObject>(object: TObject): LodashAssignWith1x3<TObject>;
138 <TSource>(object: lodash.__, source: TSource): LodashAssignWith1x5<TSource>;
139 <TObject, TSource>(object: TObject, source: TSource): TObject & TSource;
140 }
141 interface LodashAssignWith1x2<TObject> {
142 (customizer: lodash.AssignCustomizer): LodashAssignWith1x3<TObject>;
143 <TSource>(customizer: lodash.__, source: TSource): LodashAssignWith1x6<TObject, TSource>;
144 <TSource>(customizer: lodash.AssignCustomizer, source: TSource): TObject & TSource;
145 }
146 type LodashAssignWith1x3<TObject> = <TSource>(source: TSource) => TObject & TSource;
147 interface LodashAssignWith1x4<TSource> {
148 (customizer: lodash.AssignCustomizer): LodashAssignWith1x5<TSource>;
149 <TObject>(customizer: lodash.__, object: TObject): LodashAssignWith1x6<TObject, TSource>;
150 <TObject>(customizer: lodash.AssignCustomizer, object: TObject): TObject & TSource;
151 }
152 type LodashAssignWith1x5<TSource> = <TObject>(object: TObject) => TObject & TSource;
153 type LodashAssignWith1x6<TObject, TSource> = (customizer: lodash.AssignCustomizer) => TObject & TSource;
154 interface LodashSet {
155 (path: lodash.PropertyPath): LodashSet1x1;
156 (path: lodash.__, value: any): LodashSet1x2;
157 (path: lodash.PropertyPath, value: any): LodashSet1x3;
158 <T extends object>(path: lodash.__, value: lodash.__, object: T): LodashSet1x4<T>;
159 <T extends object>(path: lodash.PropertyPath, value: lodash.__, object: T): LodashSet1x5<T>;
160 <T extends object>(path: lodash.__, value: any, object: T): LodashSet1x6<T>;
161 <T extends object>(path: lodash.PropertyPath, value: any, object: T): T;
162 (path: lodash.__, value: lodash.__, object: object): LodashSet2x4;
163 (path: lodash.PropertyPath, value: lodash.__, object: object): LodashSet2x5;
164 (path: lodash.__, value: any, object: object): LodashSet2x6;
165 <TResult>(path: lodash.PropertyPath, value: any, object: object): TResult;
166 }
167 interface LodashSet1x1 {
168 (value: any): LodashSet1x3;
169 <T extends object>(value: lodash.__, object: T): LodashSet1x5<T>;
170 <T extends object>(value: any, object: T): T;
171 (value: lodash.__, object: object): LodashSet2x5;
172 <TResult>(value: any, object: object): TResult;
173 }
174 interface LodashSet1x2 {
175 (path: lodash.PropertyPath): LodashSet1x3;
176 <T extends object>(path: lodash.__, object: T): LodashSet1x6<T>;
177 <T extends object>(path: lodash.PropertyPath, object: T): T;
178 (path: lodash.__, object: object): LodashSet2x6;
179 <TResult>(path: lodash.PropertyPath, object: object): TResult;
180 }
181 interface LodashSet1x3 {
182 <T extends object>(object: T): T;
183 <TResult>(object: object): TResult;
184 }
185 interface LodashSet1x4<T> {
186 (path: lodash.PropertyPath): LodashSet1x5<T>;
187 (path: lodash.__, value: any): LodashSet1x6<T>;
188 (path: lodash.PropertyPath, value: any): T;
189 }
190 type LodashSet1x5<T> = (value: any) => T;
191 type LodashSet1x6<T> = (path: lodash.PropertyPath) => T;
192 interface LodashSet2x4 {
193 (path: lodash.PropertyPath): LodashSet2x5;
194 (path: lodash.__, value: any): LodashSet2x6;
195 <TResult>(path: lodash.PropertyPath, value: any): TResult;
196 }
197 type LodashSet2x5 = <TResult>(value: any) => TResult;
198 type LodashSet2x6 = <TResult>(path: lodash.PropertyPath) => TResult;
199 interface LodashAt {
200 (props: lodash.PropertyPath): LodashAt1x1;
201 <T>(props: lodash.__, object: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): LodashAt1x2<T>;
202 <T>(props: lodash.PropertyPath, object: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): T[];
203 <T extends object>(props: lodash.Many<keyof T>): LodashAt2x1<T>;
204 <T extends object>(props: lodash.__, object: T | null | undefined): LodashAt2x2<T>;
205 <T extends object>(props: lodash.Many<keyof T>, object: T | null | undefined): Array<T[keyof T]>;
206 }
207 type LodashAt1x1 = <T>(object: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined) => T[];
208 type LodashAt1x2<T> = (props: lodash.PropertyPath) => T[];
209 type LodashAt2x1<T> = (object: T | null | undefined) => Array<T[keyof T]>;
210 type LodashAt2x2<T> = (props: lodash.Many<keyof T>) => Array<T[keyof T]>;
211 type LodashAttempt = <TResult>(func: (...args: any[]) => TResult) => TResult | Error;
212 interface LodashBefore {
213 <TFunc extends (...args: any[]) => any>(func: TFunc): LodashBefore1x1<TFunc>;
214 (func: lodash.__, n: number): LodashBefore1x2;
215 <TFunc extends (...args: any[]) => any>(func: TFunc, n: number): TFunc;
216 }
217 type LodashBefore1x1<TFunc extends (...args: any[]) => any> = (n: number) => TFunc;
218 type LodashBefore1x2 = <TFunc extends (...args: any[]) => any>(func: TFunc) => TFunc;
219 interface LodashBind {
220 (func: (...args: any[]) => any): LodashBind1x1;
221 (func: lodash.__, thisArg: any): LodashBind1x2;
222 (func: (...args: any[]) => any, thisArg: any): (...args: any[]) => any;
223 placeholder: lodash.__;
224 }
225 type LodashBind1x1 = (thisArg: any) => (...args: any[]) => any;
226 type LodashBind1x2 = (func: (...args: any[]) => any) => (...args: any[]) => any;
227 interface LodashBindAll {
228 (methodNames: lodash.Many<string>): LodashBindAll1x1;
229 <T>(methodNames: lodash.__, object: T): LodashBindAll1x2<T>;
230 <T>(methodNames: lodash.Many<string>, object: T): T;
231 }
232 type LodashBindAll1x1 = <T>(object: T) => T;
233 type LodashBindAll1x2<T> = (methodNames: lodash.Many<string>) => T;
234 interface LodashBindKey {
235 (object: object): LodashBindKey1x1;
236 (object: lodash.__, key: string): LodashBindKey1x2;
237 (object: object, key: string): (...args: any[]) => any;
238 placeholder: lodash.__;
239 }
240 type LodashBindKey1x1 = (key: string) => (...args: any[]) => any;
241 type LodashBindKey1x2 = (object: object) => (...args: any[]) => any;
242 type LodashCamelCase = (string: string) => string;
243 type LodashCapitalize = (string: string) => string;
244 type LodashCastArray = <T>(value: lodash.Many<T>) => T[];
245 type LodashCeil = (n: number) => number;
246 interface LodashChunk {
247 (size: number): LodashChunk1x1;
248 <T>(size: lodash.__, array: lodash.List<T> | null | undefined): LodashChunk1x2<T>;
249 <T>(size: number, array: lodash.List<T> | null | undefined): T[][];
250 }
251 type LodashChunk1x1 = <T>(array: lodash.List<T> | null | undefined) => T[][];
252 type LodashChunk1x2<T> = (size: number) => T[][];
253 interface LodashClamp {
254 (lower: number): LodashClamp1x1;
255 (lower: lodash.__, upper: number): LodashClamp1x2;
256 (lower: number, upper: number): LodashClamp1x3;
257 (lower: lodash.__, upper: lodash.__, number: number): LodashClamp1x4;
258 (lower: number, upper: lodash.__, number: number): LodashClamp1x5;
259 (lower: lodash.__, upper: number, number: number): LodashClamp1x6;
260 (lower: number, upper: number, number: number): number;
261 }
262 interface LodashClamp1x1 {
263 (upper: number): LodashClamp1x3;
264 (upper: lodash.__, number: number): LodashClamp1x5;
265 (upper: number, number: number): number;
266 }
267 interface LodashClamp1x2 {
268 (lower: number): LodashClamp1x3;
269 (lower: lodash.__, number: number): LodashClamp1x6;
270 (lower: number, number: number): number;
271 }
272 type LodashClamp1x3 = (number: number) => number;
273 interface LodashClamp1x4 {
274 (lower: number): LodashClamp1x5;
275 (lower: lodash.__, upper: number): LodashClamp1x6;
276 (lower: number, upper: number): number;
277 }
278 type LodashClamp1x5 = (upper: number) => number;
279 type LodashClamp1x6 = (lower: number) => number;
280 type LodashClone = <T>(value: T) => T;
281 type LodashCloneDeep = <T>(value: T) => T;
282 interface LodashCloneDeepWith {
283 <T>(customizer: lodash.CloneDeepWithCustomizer<T>): LodashCloneDeepWith1x1<T>;
284 <T>(customizer: lodash.__, value: T): LodashCloneDeepWith1x2<T>;
285 <T>(customizer: lodash.CloneDeepWithCustomizer<T>, value: T): any;
286 }
287 type LodashCloneDeepWith1x1<T> = (value: T) => any;
288 type LodashCloneDeepWith1x2<T> = (customizer: lodash.CloneDeepWithCustomizer<T>) => any;
289 interface LodashCloneWith {
290 <T, TResult extends object | string | number | boolean | null>(customizer: lodash.CloneWithCustomizer<T, TResult>): LodashCloneWith1x1<T, TResult>;
291 <T>(customizer: lodash.__, value: T): LodashCloneWith1x2<T>;
292 <T, TResult extends object | string | number | boolean | null>(customizer: lodash.CloneWithCustomizer<T, TResult>, value: T): TResult;
293 <T, TResult>(customizer: lodash.CloneWithCustomizer<T, TResult | undefined>): LodashCloneWith2x1<T, TResult>;
294 <T, TResult>(customizer: lodash.CloneWithCustomizer<T, TResult | undefined>, value: T): TResult | T;
295 }
296 type LodashCloneWith1x1<T, TResult> = (value: T) => TResult;
297 interface LodashCloneWith1x2<T> {
298 <TResult extends object | string | number | boolean | null>(customizer: lodash.CloneWithCustomizer<T, TResult>): TResult;
299 <TResult>(customizer: lodash.CloneWithCustomizer<T, TResult | undefined>): TResult | T;
300 }
301 type LodashCloneWith2x1<T, TResult> = (value: T) => TResult | T;
302 type LodashCompact = <T>(array: lodash.List<T> | null | undefined) => Array<Exclude<T, null | undefined | false | "" | 0>>;
303 type LodashNegate = <T extends any[]>(predicate: (...args: T) => any) => (...args: T) => boolean;
304 interface LodashFlowRight {
305 <A extends any[], R1, R2, R3, R4, R5, R6, R7>(f7: (a: R6) => R7, f6: (a: R5) => R6, f5: (a: R4) => R5, f4: (a: R3) => R4, f3: (a: R2) => R3, f2: (a: R1) => R2, f1: (...args: A) => R1): (...args: A) => R7;
306 <A extends any[], R1, R2, R3, R4, R5, R6>(f6: (a: R5) => R6, f5: (a: R4) => R5, f4: (a: R3) => R4, f3: (a: R2) => R3, f2: (a: R1) => R2, f1: (...args: A) => R1): (...args: A) => R6;
307 <A extends any[], R1, R2, R3, R4, R5>(f5: (a: R4) => R5, f4: (a: R3) => R4, f3: (a: R2) => R3, f2: (a: R1) => R2, f1: (...args: A) => R1): (...args: A) => R5;
308 <A extends any[], R1, R2, R3, R4>(f4: (a: R3) => R4, f3: (a: R2) => R3, f2: (a: R1) => R2, f1: (...args: A) => R1): (...args: A) => R4;
309 <A extends any[], R1, R2, R3>(f3: (a: R2) => R3, f2: (a: R1) => R2, f1: (...args: A) => R1): (...args: A) => R3;
310 <A extends any[], R1, R2>(f2: (a: R1) => R2, f1: (...args: A) => R1): (...args: A) => R2;
311 (...func: Array<lodash.Many<(...args: any[]) => any>>): (...args: any[]) => any;
312 }
313 interface LodashConcat {
314 <T>(array: lodash.Many<T>): LodashConcat1x1<T>;
315 <T>(array: lodash.__, values: lodash.Many<T>): LodashConcat1x2<T>;
316 <T>(array: lodash.Many<T>, values: lodash.Many<T>): T[];
317 }
318 type LodashConcat1x1<T> = (values: lodash.Many<T>) => T[];
319 type LodashConcat1x2<T> = (array: lodash.Many<T>) => T[];
320 type LodashCond = <T, R>(pairs: Array<lodash.CondPair<T, R>>) => (Target: T) => R;
321 interface LodashConformsTo {
322 <T>(source: lodash.ConformsPredicateObject<T>): LodashConformsTo1x1<T>;
323 <T>(source: lodash.__, object: T): LodashConformsTo1x2<T>;
324 <T>(source: lodash.ConformsPredicateObject<T>, object: T): boolean;
325 }
326 type LodashConformsTo1x1<T> = (object: T) => boolean;
327 type LodashConformsTo1x2<T> = (source: lodash.ConformsPredicateObject<T>) => boolean;
328 interface LodashContains {
329 <T>(target: T): LodashContains1x1<T>;
330 <T>(target: lodash.__, collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): LodashContains1x2<T>;
331 <T>(target: T, collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): boolean;
332 }
333 type LodashContains1x1<T> = (collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined) => boolean;
334 type LodashContains1x2<T> = (target: T) => boolean;
335 interface LodashCountBy {
336 <T>(iteratee: lodash.ValueIteratee<T>): LodashCountBy1x1<T>;
337 <T>(iteratee: lodash.__, collection: lodash.List<T> | null | undefined): LodashCountBy1x2<T>;
338 <T>(iteratee: lodash.ValueIteratee<T>, collection: lodash.List<T> | null | undefined): lodash.Dictionary<number>;
339 <T extends object>(iteratee: lodash.__, collection: T | null | undefined): LodashCountBy2x2<T>;
340 <T extends object>(iteratee: lodash.ValueIteratee<T[keyof T]>, collection: T | null | undefined): lodash.Dictionary<number>;
341 }
342 type LodashCountBy1x1<T> = (collection: lodash.List<T> | object | null | undefined) => lodash.Dictionary<number>;
343 type LodashCountBy1x2<T> = (iteratee: lodash.ValueIteratee<T>) => lodash.Dictionary<number>;
344 type LodashCountBy2x2<T> = (iteratee: lodash.ValueIteratee<T[keyof T]>) => lodash.Dictionary<number>;
345 type LodashCreate = <T extends object, U extends object>(prototype: T) => T & U;
346 interface LodashCurry {
347 <T1, R>(func: (t1: T1) => R): lodash.CurriedFunction1<T1, R>;
348 <T1, T2, R>(func: (t1: T1, t2: T2) => R): lodash.CurriedFunction2<T1, T2, R>;
349 <T1, T2, T3, R>(func: (t1: T1, t2: T2, t3: T3) => R): lodash.CurriedFunction3<T1, T2, T3, R>;
350 <T1, T2, T3, T4, R>(func: (t1: T1, t2: T2, t3: T3, t4: T4) => R): lodash.CurriedFunction4<T1, T2, T3, T4, R>;
351 <T1, T2, T3, T4, T5, R>(func: (t1: T1, t2: T2, t3: T3, t4: T4, t5: T5) => R): lodash.CurriedFunction5<T1, T2, T3, T4, T5, R>;
352 (func: (...args: any[]) => any): (...args: any[]) => any;
353 placeholder: lodash.__;
354 }
355 interface LodashCurryN {
356 (arity: number): LodashCurryN1x1;
357 <T1, R>(arity: lodash.__, func: (t1: T1) => R): LodashCurryN1x2<T1, R>;
358 <T1, R>(arity: number, func: (t1: T1) => R): lodash.CurriedFunction1<T1, R>;
359 <T1, T2, R>(arity: lodash.__, func: (t1: T1, t2: T2) => R): LodashCurryN2x2<T1, T2, R>;
360 <T1, T2, R>(arity: number, func: (t1: T1, t2: T2) => R): lodash.CurriedFunction2<T1, T2, R>;
361 <T1, T2, T3, R>(arity: lodash.__, func: (t1: T1, t2: T2, t3: T3) => R): LodashCurryN3x2<T1, T2, T3, R>;
362 <T1, T2, T3, R>(arity: number, func: (t1: T1, t2: T2, t3: T3) => R): lodash.CurriedFunction3<T1, T2, T3, R>;
363 <T1, T2, T3, T4, R>(arity: lodash.__, func: (t1: T1, t2: T2, t3: T3, t4: T4) => R): LodashCurryN4x2<T1, T2, T3, T4, R>;
364 <T1, T2, T3, T4, R>(arity: number, func: (t1: T1, t2: T2, t3: T3, t4: T4) => R): lodash.CurriedFunction4<T1, T2, T3, T4, R>;
365 <T1, T2, T3, T4, T5, R>(arity: lodash.__, func: (t1: T1, t2: T2, t3: T3, t4: T4, t5: T5) => R): LodashCurryN5x2<T1, T2, T3, T4, T5, R>;
366 <T1, T2, T3, T4, T5, R>(arity: number, func: (t1: T1, t2: T2, t3: T3, t4: T4, t5: T5) => R): lodash.CurriedFunction5<T1, T2, T3, T4, T5, R>;
367 (arity: lodash.__, func: (...args: any[]) => any): LodashCurryN6x2;
368 (arity: number, func: (...args: any[]) => any): (...args: any[]) => any;
369 placeholder: lodash.__;
370 }
371 interface LodashCurryN1x1 {
372 <T1, R>(func: (t1: T1) => R): lodash.CurriedFunction1<T1, R>;
373 <T1, T2, R>(func: (t1: T1, t2: T2) => R): lodash.CurriedFunction2<T1, T2, R>;
374 <T1, T2, T3, R>(func: (t1: T1, t2: T2, t3: T3) => R): lodash.CurriedFunction3<T1, T2, T3, R>;
375 <T1, T2, T3, T4, R>(func: (t1: T1, t2: T2, t3: T3, t4: T4) => R): lodash.CurriedFunction4<T1, T2, T3, T4, R>;
376 <T1, T2, T3, T4, T5, R>(func: (t1: T1, t2: T2, t3: T3, t4: T4, t5: T5) => R): lodash.CurriedFunction5<T1, T2, T3, T4, T5, R>;
377 (func: (...args: any[]) => any): (...args: any[]) => any;
378 }
379 type LodashCurryN1x2<T1, R> = (arity: number) => lodash.CurriedFunction1<T1, R>;
380 type LodashCurryN2x2<T1, T2, R> = (arity: number) => lodash.CurriedFunction2<T1, T2, R>;
381 type LodashCurryN3x2<T1, T2, T3, R> = (arity: number) => lodash.CurriedFunction3<T1, T2, T3, R>;
382 type LodashCurryN4x2<T1, T2, T3, T4, R> = (arity: number) => lodash.CurriedFunction4<T1, T2, T3, T4, R>;
383 type LodashCurryN5x2<T1, T2, T3, T4, T5, R> = (arity: number) => lodash.CurriedFunction5<T1, T2, T3, T4, T5, R>;
384 type LodashCurryN6x2 = (arity: number) => (...args: any[]) => any;
385 interface LodashCurryRight {
386 <T1, R>(func: (t1: T1) => R): lodash.RightCurriedFunction1<T1, R>;
387 <T1, T2, R>(func: (t1: T1, t2: T2) => R): lodash.RightCurriedFunction2<T1, T2, R>;
388 <T1, T2, T3, R>(func: (t1: T1, t2: T2, t3: T3) => R): lodash.RightCurriedFunction3<T1, T2, T3, R>;
389 <T1, T2, T3, T4, R>(func: (t1: T1, t2: T2, t3: T3, t4: T4) => R): lodash.RightCurriedFunction4<T1, T2, T3, T4, R>;
390 <T1, T2, T3, T4, T5, R>(func: (t1: T1, t2: T2, t3: T3, t4: T4, t5: T5) => R): lodash.RightCurriedFunction5<T1, T2, T3, T4, T5, R>;
391 (func: (...args: any[]) => any): (...args: any[]) => any;
392 placeholder: lodash.__;
393 }
394 interface LodashCurryRightN {
395 (arity: number): LodashCurryRightN1x1;
396 <T1, R>(arity: lodash.__, func: (t1: T1) => R): LodashCurryRightN1x2<T1, R>;
397 <T1, R>(arity: number, func: (t1: T1) => R): lodash.RightCurriedFunction1<T1, R>;
398 <T1, T2, R>(arity: lodash.__, func: (t1: T1, t2: T2) => R): LodashCurryRightN2x2<T1, T2, R>;
399 <T1, T2, R>(arity: number, func: (t1: T1, t2: T2) => R): lodash.RightCurriedFunction2<T1, T2, R>;
400 <T1, T2, T3, R>(arity: lodash.__, func: (t1: T1, t2: T2, t3: T3) => R): LodashCurryRightN3x2<T1, T2, T3, R>;
401 <T1, T2, T3, R>(arity: number, func: (t1: T1, t2: T2, t3: T3) => R): lodash.RightCurriedFunction3<T1, T2, T3, R>;
402 <T1, T2, T3, T4, R>(arity: lodash.__, func: (t1: T1, t2: T2, t3: T3, t4: T4) => R): LodashCurryRightN4x2<T1, T2, T3, T4, R>;
403 <T1, T2, T3, T4, R>(arity: number, func: (t1: T1, t2: T2, t3: T3, t4: T4) => R): lodash.RightCurriedFunction4<T1, T2, T3, T4, R>;
404 <T1, T2, T3, T4, T5, R>(arity: lodash.__, func: (t1: T1, t2: T2, t3: T3, t4: T4, t5: T5) => R): LodashCurryRightN5x2<T1, T2, T3, T4, T5, R>;
405 <T1, T2, T3, T4, T5, R>(arity: number, func: (t1: T1, t2: T2, t3: T3, t4: T4, t5: T5) => R): lodash.RightCurriedFunction5<T1, T2, T3, T4, T5, R>;
406 (arity: lodash.__, func: (...args: any[]) => any): LodashCurryRightN6x2;
407 (arity: number, func: (...args: any[]) => any): (...args: any[]) => any;
408 placeholder: lodash.__;
409 }
410 interface LodashCurryRightN1x1 {
411 <T1, R>(func: (t1: T1) => R): lodash.RightCurriedFunction1<T1, R>;
412 <T1, T2, R>(func: (t1: T1, t2: T2) => R): lodash.RightCurriedFunction2<T1, T2, R>;
413 <T1, T2, T3, R>(func: (t1: T1, t2: T2, t3: T3) => R): lodash.RightCurriedFunction3<T1, T2, T3, R>;
414 <T1, T2, T3, T4, R>(func: (t1: T1, t2: T2, t3: T3, t4: T4) => R): lodash.RightCurriedFunction4<T1, T2, T3, T4, R>;
415 <T1, T2, T3, T4, T5, R>(func: (t1: T1, t2: T2, t3: T3, t4: T4, t5: T5) => R): lodash.RightCurriedFunction5<T1, T2, T3, T4, T5, R>;
416 (func: (...args: any[]) => any): (...args: any[]) => any;
417 }
418 type LodashCurryRightN1x2<T1, R> = (arity: number) => lodash.RightCurriedFunction1<T1, R>;
419 type LodashCurryRightN2x2<T1, T2, R> = (arity: number) => lodash.RightCurriedFunction2<T1, T2, R>;
420 type LodashCurryRightN3x2<T1, T2, T3, R> = (arity: number) => lodash.RightCurriedFunction3<T1, T2, T3, R>;
421 type LodashCurryRightN4x2<T1, T2, T3, T4, R> = (arity: number) => lodash.RightCurriedFunction4<T1, T2, T3, T4, R>;
422 type LodashCurryRightN5x2<T1, T2, T3, T4, T5, R> = (arity: number) => lodash.RightCurriedFunction5<T1, T2, T3, T4, T5, R>;
423 type LodashCurryRightN6x2 = (arity: number) => (...args: any[]) => any;
424 interface LodashDebounce {
425 (wait: number): LodashDebounce1x1;
426 <T extends (...args: any) => any>(wait: lodash.__, func: T): LodashDebounce1x2<T>;
427 <T extends (...args: any) => any>(wait: number, func: T): lodash.DebouncedFunc<T>;
428 }
429 type LodashDebounce1x1 = <T extends (...args: any) => any>(func: T) => lodash.DebouncedFunc<T>;
430 type LodashDebounce1x2<T extends (...args: any) => any> = (wait: number) => lodash.DebouncedFunc<T>;
431 type LodashDeburr = (string: string) => string;
432 interface LodashDefaults {
433 <TSource>(source: TSource): LodashDefaults1x1<TSource>;
434 <TObject>(source: lodash.__, object: TObject): LodashDefaults1x2<TObject>;
435 <TObject, TSource>(source: TSource, object: TObject): TSource & TObject;
436 }
437 type LodashDefaults1x1<TSource> = <TObject>(object: TObject) => TSource & TObject;
438 type LodashDefaults1x2<TObject> = <TSource>(source: TSource) => TSource & TObject;
439 interface LodashDefaultsAll {
440 <TObject, TSource>(object: [TObject, TSource]): TSource & TObject;
441 <TObject, TSource1, TSource2>(object: [TObject, TSource1, TSource2]): TSource2 & TSource1 & TObject;
442 <TObject, TSource1, TSource2, TSource3>(object: [TObject, TSource1, TSource2, TSource3]): TSource3 & TSource2 & TSource1 & TObject;
443 <TObject, TSource1, TSource2, TSource3, TSource4>(object: [TObject, TSource1, TSource2, TSource3, TSource4]): TSource4 & TSource3 & TSource2 & TSource1 & TObject;
444 <TObject>(object: [TObject]): TObject;
445 (object: ReadonlyArray<any>): any;
446 }
447 interface LodashDefaultsDeep {
448 (sources: any): LodashDefaultsDeep1x1;
449 (sources: lodash.__, object: any): LodashDefaultsDeep1x2;
450 (sources: any, object: any): any;
451 }
452 type LodashDefaultsDeep1x1 = (object: any) => any;
453 type LodashDefaultsDeep1x2 = (sources: any) => any;
454 type LodashDefaultsDeepAll = (object: ReadonlyArray<any>) => any;
455 interface LodashDefaultTo {
456 <T>(defaultValue: T): LodashDefaultTo1x1<T>;
457 <T>(defaultValue: lodash.__, value: T | null | undefined): LodashDefaultTo1x2<T>;
458 <T>(defaultValue: T, value: T | null | undefined): T;
459 <TDefault>(defaultValue: TDefault): LodashDefaultTo2x1<TDefault>;
460 <T, TDefault>(defaultValue: TDefault, value: T | null | undefined): T | TDefault;
461 }
462 type LodashDefaultTo1x1<T> = (value: T | null | undefined) => T;
463 interface LodashDefaultTo1x2<T> {
464 (defaultValue: T): T;
465 <TDefault>(defaultValue: TDefault): T | TDefault;
466 }
467 type LodashDefaultTo2x1<TDefault> = <T>(value: T | null | undefined) => T | TDefault;
468 type LodashDefer = (func: (...args: any[]) => any, ...args: any[]) => number;
469 interface LodashDelay {
470 (wait: number): LodashDelay1x1;
471 (wait: lodash.__, func: (...args: any[]) => any): LodashDelay1x2;
472 (wait: number, func: (...args: any[]) => any): number;
473 }
474 type LodashDelay1x1 = (func: (...args: any[]) => any) => number;
475 type LodashDelay1x2 = (wait: number) => number;
476 interface LodashDifference {
477 <T>(array: lodash.List<T> | null | undefined): LodashDifference1x1<T>;
478 <T>(array: lodash.__, values: lodash.List<T>): LodashDifference1x2<T>;
479 <T>(array: lodash.List<T> | null | undefined, values: lodash.List<T>): T[];
480 }
481 type LodashDifference1x1<T> = (values: lodash.List<T>) => T[];
482 type LodashDifference1x2<T> = (array: lodash.List<T> | null | undefined) => T[];
483 interface LodashDifferenceBy {
484 <T1, T2>(iteratee: lodash.ValueIteratee<T1 | T2>): LodashDifferenceBy1x1<T1, T2>;
485 <T1>(iteratee: lodash.__, array: lodash.List<T1> | null | undefined): LodashDifferenceBy1x2<T1>;
486 <T1, T2>(iteratee: lodash.ValueIteratee<T1 | T2>, array: lodash.List<T1> | null | undefined): LodashDifferenceBy1x3<T1, T2>;
487 <T2>(iteratee: lodash.__, array: lodash.__, values: lodash.List<T2>): LodashDifferenceBy1x4<T2>;
488 <T1, T2>(iteratee: lodash.ValueIteratee<T1 | T2>, array: lodash.__, values: lodash.List<T2>): LodashDifferenceBy1x5<T1>;
489 <T1, T2>(iteratee: lodash.__, array: lodash.List<T1> | null | undefined, values: lodash.List<T2>): LodashDifferenceBy1x6<T1, T2>;
490 <T1, T2>(iteratee: lodash.ValueIteratee<T1 | T2>, array: lodash.List<T1> | null | undefined, values: lodash.List<T2>): T1[];
491 }
492 interface LodashDifferenceBy1x1<T1, T2> {
493 (array: lodash.List<T1> | null | undefined): LodashDifferenceBy1x3<T1, T2>;
494 (array: lodash.__, values: lodash.List<T2>): LodashDifferenceBy1x5<T1>;
495 (array: lodash.List<T1> | null | undefined, values: lodash.List<T2>): T1[];
496 }
497 interface LodashDifferenceBy1x2<T1> {
498 <T2>(iteratee: lodash.ValueIteratee<T1 | T2>): LodashDifferenceBy1x3<T1, T2>;
499 <T2>(iteratee: lodash.__, values: lodash.List<T2>): LodashDifferenceBy1x6<T1, T2>;
500 <T2>(iteratee: lodash.ValueIteratee<T1 | T2>, values: lodash.List<T2>): T1[];
501 }
502 type LodashDifferenceBy1x3<T1, T2> = (values: lodash.List<T2>) => T1[];
503 interface LodashDifferenceBy1x4<T2> {
504 <T1>(iteratee: lodash.ValueIteratee<T1 | T2>): LodashDifferenceBy1x5<T1>;
505 <T1>(iteratee: lodash.__, array: lodash.List<T1> | null | undefined): LodashDifferenceBy1x6<T1, T2>;
506 <T1>(iteratee: lodash.ValueIteratee<T1 | T2>, array: lodash.List<T1> | null | undefined): T1[];
507 }
508 type LodashDifferenceBy1x5<T1> = (array: lodash.List<T1> | null | undefined) => T1[];
509 type LodashDifferenceBy1x6<T1, T2> = (iteratee: lodash.ValueIteratee<T1 | T2>) => T1[];
510 interface LodashDifferenceWith {
511 <T1, T2>(comparator: lodash.Comparator2<T1, T2>): LodashDifferenceWith1x1<T1, T2>;
512 <T1>(comparator: lodash.__, array: lodash.List<T1> | null | undefined): LodashDifferenceWith1x2<T1>;
513 <T1, T2>(comparator: lodash.Comparator2<T1, T2>, array: lodash.List<T1> | null | undefined): LodashDifferenceWith1x3<T1, T2>;
514 <T2>(comparator: lodash.__, array: lodash.__, values: lodash.List<T2>): LodashDifferenceWith1x4<T2>;
515 <T1, T2>(comparator: lodash.Comparator2<T1, T2>, array: lodash.__, values: lodash.List<T2>): LodashDifferenceWith1x5<T1>;
516 <T1, T2>(comparator: lodash.__, array: lodash.List<T1> | null | undefined, values: lodash.List<T2>): LodashDifferenceWith1x6<T1, T2>;
517 <T1, T2>(comparator: lodash.Comparator2<T1, T2>, array: lodash.List<T1> | null | undefined, values: lodash.List<T2>): T1[];
518 }
519 interface LodashDifferenceWith1x1<T1, T2> {
520 (array: lodash.List<T1> | null | undefined): LodashDifferenceWith1x3<T1, T2>;
521 (array: lodash.__, values: lodash.List<T2>): LodashDifferenceWith1x5<T1>;
522 (array: lodash.List<T1> | null | undefined, values: lodash.List<T2>): T1[];
523 }
524 interface LodashDifferenceWith1x2<T1> {
525 <T2>(comparator: lodash.Comparator2<T1, T2>): LodashDifferenceWith1x3<T1, T2>;
526 <T2>(comparator: lodash.__, values: lodash.List<T2>): LodashDifferenceWith1x6<T1, T2>;
527 <T2>(comparator: lodash.Comparator2<T1, T2>, values: lodash.List<T2>): T1[];
528 }
529 type LodashDifferenceWith1x3<T1, T2> = (values: lodash.List<T2>) => T1[];
530 interface LodashDifferenceWith1x4<T2> {
531 <T1>(comparator: lodash.Comparator2<T1, T2>): LodashDifferenceWith1x5<T1>;
532 <T1>(comparator: lodash.__, array: lodash.List<T1> | null | undefined): LodashDifferenceWith1x6<T1, T2>;
533 <T1>(comparator: lodash.Comparator2<T1, T2>, array: lodash.List<T1> | null | undefined): T1[];
534 }
535 type LodashDifferenceWith1x5<T1> = (array: lodash.List<T1> | null | undefined) => T1[];
536 type LodashDifferenceWith1x6<T1, T2> = (comparator: lodash.Comparator2<T1, T2>) => T1[];
537 interface LodashUnset {
538 (path: lodash.PropertyPath): LodashUnset1x1;
539 <T>(path: lodash.__, object: T): LodashUnset1x2<T>;
540 <T>(path: lodash.PropertyPath, object: T): T;
541 }
542 type LodashUnset1x1 = <T>(object: T) => T;
543 type LodashUnset1x2<T> = (path: lodash.PropertyPath) => T;
544 interface LodashDivide {
545 (dividend: number): LodashDivide1x1;
546 (dividend: lodash.__, divisor: number): LodashDivide1x2;
547 (dividend: number, divisor: number): number;
548 }
549 type LodashDivide1x1 = (divisor: number) => number;
550 type LodashDivide1x2 = (dividend: number) => number;
551 interface LodashDrop {
552 (n: number): LodashDrop1x1;
553 <T>(n: lodash.__, array: lodash.List<T> | null | undefined): LodashDrop1x2<T>;
554 <T>(n: number, array: lodash.List<T> | null | undefined): T[];
555 }
556 type LodashDrop1x1 = <T>(array: lodash.List<T> | null | undefined) => T[];
557 type LodashDrop1x2<T> = (n: number) => T[];
558 interface LodashDropRight {
559 (n: number): LodashDropRight1x1;
560 <T>(n: lodash.__, array: lodash.List<T> | null | undefined): LodashDropRight1x2<T>;
561 <T>(n: number, array: lodash.List<T> | null | undefined): T[];
562 }
563 type LodashDropRight1x1 = <T>(array: lodash.List<T> | null | undefined) => T[];
564 type LodashDropRight1x2<T> = (n: number) => T[];
565 interface LodashDropRightWhile {
566 <T>(predicate: lodash.ValueIteratee<T>): LodashDropRightWhile1x1<T>;
567 <T>(predicate: lodash.__, array: lodash.List<T> | null | undefined): LodashDropRightWhile1x2<T>;
568 <T>(predicate: lodash.ValueIteratee<T>, array: lodash.List<T> | null | undefined): T[];
569 }
570 type LodashDropRightWhile1x1<T> = (array: lodash.List<T> | null | undefined) => T[];
571 type LodashDropRightWhile1x2<T> = (predicate: lodash.ValueIteratee<T>) => T[];
572 interface LodashDropWhile {
573 <T>(predicate: lodash.ValueIteratee<T>): LodashDropWhile1x1<T>;
574 <T>(predicate: lodash.__, array: lodash.List<T> | null | undefined): LodashDropWhile1x2<T>;
575 <T>(predicate: lodash.ValueIteratee<T>, array: lodash.List<T> | null | undefined): T[];
576 }
577 type LodashDropWhile1x1<T> = (array: lodash.List<T> | null | undefined) => T[];
578 type LodashDropWhile1x2<T> = (predicate: lodash.ValueIteratee<T>) => T[];
579 interface LodashForEach {
580 <T>(iteratee: (value: T) => any): LodashForEach1x1<T>;
581 <T>(iteratee: lodash.__, collection: ReadonlyArray<T>): LodashForEach1x2<T>;
582 <T>(iteratee: (value: T) => any, collection: ReadonlyArray<T>): T[];
583 <T>(iteratee: lodash.__, collection: lodash.List<T>): LodashForEach2x2<T>;
584 <T>(iteratee: (value: T) => any, collection: lodash.List<T>): lodash.List<T>;
585 <T extends object>(iteratee: lodash.__, collection: T): LodashForEach3x2<T>;
586 <T extends object>(iteratee: (value: T[keyof T]) => any, collection: T): T;
587 <T, TArray extends T[] | null | undefined>(iteratee: lodash.__, collection: TArray & (T[] | null | undefined)): LodashForEach4x2<T, TArray>;
588 <T, TArray extends T[] | null | undefined>(iteratee: (value: T) => any, collection: TArray & (T[] | null | undefined)): TArray;
589 <T, TList extends lodash.List<T> | null | undefined>(iteratee: lodash.__, collection: TList & (lodash.List<T> | null | undefined)): LodashForEach5x2<T, TList>;
590 <T, TList extends lodash.List<T> | null | undefined>(iteratee: (value: T) => any, collection: TList & (lodash.List<T> | null | undefined)): TList;
591 <T extends object>(iteratee: lodash.__, collection: T | null | undefined): LodashForEach6x2<T>;
592 <T extends object>(iteratee: (value: T[keyof T]) => any, collection: T | null | undefined): T | null | undefined;
593 }
594 interface LodashForEach1x1<T> {
595 (collection: ReadonlyArray<T>): T[];
596 (collection: lodash.List<T>): lodash.List<T>;
597 <T1 extends object>(collection: T1): T1;
598 <TArray extends T[] | null | undefined>(collection: TArray & (T[] | null | undefined)): TArray;
599 <TList extends lodash.List<T> | null | undefined>(collection: TList & (lodash.List<T> | null | undefined)): TList;
600 <T1 extends object>(collection: T1 | null | undefined): T1 | null | undefined;
601 }
602 type LodashForEach1x2<T> = (iteratee: (value: T) => any) => T[];
603 type LodashForEach2x2<T> = (iteratee: (value: T) => any) => lodash.List<T>;
604 type LodashForEach3x2<T> = (iteratee: (value: T[keyof T]) => any) => T;
605 type LodashForEach4x2<T, TArray> = (iteratee: (value: T) => any) => TArray;
606 type LodashForEach5x2<T, TList> = (iteratee: (value: T) => any) => TList;
607 type LodashForEach6x2<T> = (iteratee: (value: T[keyof T]) => any) => T | null | undefined;
608 interface LodashForEachRight {
609 <T>(iteratee: (value: T) => any): LodashForEachRight1x1<T>;
610 <T>(iteratee: lodash.__, collection: ReadonlyArray<T>): LodashForEachRight1x2<T>;
611 <T>(iteratee: (value: T) => any, collection: ReadonlyArray<T>): T[];
612 <T>(iteratee: lodash.__, collection: lodash.List<T>): LodashForEachRight2x2<T>;
613 <T>(iteratee: (value: T) => any, collection: lodash.List<T>): lodash.List<T>;
614 <T extends object>(iteratee: lodash.__, collection: T): LodashForEachRight3x2<T>;
615 <T extends object>(iteratee: (value: T[keyof T]) => any, collection: T): T;
616 <T, TArray extends T[] | null | undefined>(iteratee: lodash.__, collection: TArray & (T[] | null | undefined)): LodashForEachRight4x2<T, TArray>;
617 <T, TArray extends T[] | null | undefined>(iteratee: (value: T) => any, collection: TArray & (T[] | null | undefined)): TArray;
618 <T, TList extends lodash.List<T> | null | undefined>(iteratee: lodash.__, collection: TList & (lodash.List<T> | null | undefined)): LodashForEachRight5x2<T, TList>;
619 <T, TList extends lodash.List<T> | null | undefined>(iteratee: (value: T) => any, collection: TList & (lodash.List<T> | null | undefined)): TList;
620 <T extends object>(iteratee: lodash.__, collection: T | null | undefined): LodashForEachRight6x2<T>;
621 <T extends object>(iteratee: (value: T[keyof T]) => any, collection: T | null | undefined): T | null | undefined;
622 }
623 interface LodashForEachRight1x1<T> {
624 (collection: ReadonlyArray<T>): T[];
625 (collection: lodash.List<T>): lodash.List<T>;
626 <T1 extends object>(collection: T1): T1;
627 <TArray extends T[] | null | undefined>(collection: TArray & (T[] | null | undefined)): TArray;
628 <TList extends lodash.List<T> | null | undefined>(collection: TList & (lodash.List<T> | null | undefined)): TList;
629 <T1 extends object>(collection: T1 | null | undefined): T1 | null | undefined;
630 }
631 type LodashForEachRight1x2<T> = (iteratee: (value: T) => any) => T[];
632 type LodashForEachRight2x2<T> = (iteratee: (value: T) => any) => lodash.List<T>;
633 type LodashForEachRight3x2<T> = (iteratee: (value: T[keyof T]) => any) => T;
634 type LodashForEachRight4x2<T, TArray> = (iteratee: (value: T) => any) => TArray;
635 type LodashForEachRight5x2<T, TList> = (iteratee: (value: T) => any) => TList;
636 type LodashForEachRight6x2<T> = (iteratee: (value: T[keyof T]) => any) => T | null | undefined;
637 interface LodashEndsWith {
638 (target: string): LodashEndsWith1x1;
639 (target: lodash.__, string: string): LodashEndsWith1x2;
640 (target: string, string: string): boolean;
641 }
642 type LodashEndsWith1x1 = (string: string) => boolean;
643 type LodashEndsWith1x2 = (target: string) => boolean;
644 interface LodashToPairs {
645 <T>(object: lodash.Dictionary<T> | lodash.NumericDictionary<T>): Array<[string, T]>;
646 (object: object): Array<[string, any]>;
647 }
648 interface LodashToPairsIn {
649 <T>(object: lodash.Dictionary<T> | lodash.NumericDictionary<T>): Array<[string, T]>;
650 (object: object): Array<[string, any]>;
651 }
652 interface LodashEq {
653 (value: any): LodashEq1x1;
654 (value: lodash.__, other: any): LodashEq1x2;
655 (value: any, other: any): boolean;
656 }
657 type LodashEq1x1 = (other: any) => boolean;
658 type LodashEq1x2 = (value: any) => boolean;
659 interface LodashIsEqual {
660 (value: any): LodashIsEqual1x1;
661 (value: lodash.__, other: any): LodashIsEqual1x2;
662 (value: any, other: any): boolean;
663 }
664 type LodashIsEqual1x1 = (other: any) => boolean;
665 type LodashIsEqual1x2 = (value: any) => boolean;
666 type LodashEscape = (string: string) => string;
667 type LodashEscapeRegExp = (string: string) => string;
668 interface LodashExtend {
669 <TObject>(object: TObject): LodashExtend1x1<TObject>;
670 <TSource>(object: lodash.__, source: TSource): LodashExtend1x2<TSource>;
671 <TObject, TSource>(object: TObject, source: TSource): TObject & TSource;
672 }
673 type LodashExtend1x1<TObject> = <TSource>(source: TSource) => TObject & TSource;
674 type LodashExtend1x2<TSource> = <TObject>(object: TObject) => TObject & TSource;
675 interface LodashExtendAll {
676 <TObject, TSource>(object: [TObject, TSource]): TObject & TSource;
677 <TObject, TSource1, TSource2>(object: [TObject, TSource1, TSource2]): TObject & TSource1 & TSource2;
678 <TObject, TSource1, TSource2, TSource3>(object: [TObject, TSource1, TSource2, TSource3]): TObject & TSource1 & TSource2 & TSource3;
679 <TObject, TSource1, TSource2, TSource3, TSource4>(object: [TObject, TSource1, TSource2, TSource3, TSource4]): TObject & TSource1 & TSource2 & TSource3 & TSource4;
680 <TObject>(object: [TObject]): TObject;
681 <TResult>(object: ReadonlyArray<any>): TResult;
682 }
683 interface LodashExtendAllWith {
684 (customizer: lodash.AssignCustomizer): LodashExtendAllWith1x1;
685 (customizer: lodash.__, args: ReadonlyArray<any>): LodashExtendAllWith1x2;
686 (customizer: lodash.AssignCustomizer, args: ReadonlyArray<any>): any;
687 }
688 type LodashExtendAllWith1x1 = (args: ReadonlyArray<any>) => any;
689 type LodashExtendAllWith1x2 = (customizer: lodash.AssignCustomizer) => any;
690 interface LodashExtendWith {
691 (customizer: lodash.AssignCustomizer): LodashExtendWith1x1;
692 <TObject>(customizer: lodash.__, object: TObject): LodashExtendWith1x2<TObject>;
693 <TObject>(customizer: lodash.AssignCustomizer, object: TObject): LodashExtendWith1x3<TObject>;
694 <TSource>(customizer: lodash.__, object: lodash.__, source: TSource): LodashExtendWith1x4<TSource>;
695 <TSource>(customizer: lodash.AssignCustomizer, object: lodash.__, source: TSource): LodashExtendWith1x5<TSource>;
696 <TObject, TSource>(customizer: lodash.__, object: TObject, source: TSource): LodashExtendWith1x6<TObject, TSource>;
697 <TObject, TSource>(customizer: lodash.AssignCustomizer, object: TObject, source: TSource): TObject & TSource;
698 }
699 interface LodashExtendWith1x1 {
700 <TObject>(object: TObject): LodashExtendWith1x3<TObject>;
701 <TSource>(object: lodash.__, source: TSource): LodashExtendWith1x5<TSource>;
702 <TObject, TSource>(object: TObject, source: TSource): TObject & TSource;
703 }
704 interface LodashExtendWith1x2<TObject> {
705 (customizer: lodash.AssignCustomizer): LodashExtendWith1x3<TObject>;
706 <TSource>(customizer: lodash.__, source: TSource): LodashExtendWith1x6<TObject, TSource>;
707 <TSource>(customizer: lodash.AssignCustomizer, source: TSource): TObject & TSource;
708 }
709 type LodashExtendWith1x3<TObject> = <TSource>(source: TSource) => TObject & TSource;
710 interface LodashExtendWith1x4<TSource> {
711 (customizer: lodash.AssignCustomizer): LodashExtendWith1x5<TSource>;
712 <TObject>(customizer: lodash.__, object: TObject): LodashExtendWith1x6<TObject, TSource>;
713 <TObject>(customizer: lodash.AssignCustomizer, object: TObject): TObject & TSource;
714 }
715 type LodashExtendWith1x5<TSource> = <TObject>(object: TObject) => TObject & TSource;
716 type LodashExtendWith1x6<TObject, TSource> = (customizer: lodash.AssignCustomizer) => TObject & TSource;
717 type LodashStubFalse = () => false;
718 interface LodashFill {
719 (start: number): LodashFill1x1;
720 (start: lodash.__, end: number): LodashFill1x2;
721 (start: number, end: number): LodashFill1x3;
722 <T>(start: lodash.__, end: lodash.__, value: T): LodashFill1x4<T>;
723 <T>(start: number, end: lodash.__, value: T): LodashFill1x5<T>;
724 <T>(start: lodash.__, end: number, value: T): LodashFill1x6<T>;
725 <T>(start: number, end: number, value: T): LodashFill1x7<T>;
726 <U>(start: lodash.__, end: lodash.__, value: lodash.__, array: U[] | null | undefined): LodashFill1x8<U>;
727 <U>(start: number, end: lodash.__, value: lodash.__, array: U[] | null | undefined): LodashFill1x9<U>;
728 <U>(start: lodash.__, end: number, value: lodash.__, array: U[] | null | undefined): LodashFill1x10<U>;
729 <U>(start: number, end: number, value: lodash.__, array: U[] | null | undefined): LodashFill1x11<U>;
730 <T, U>(start: lodash.__, end: lodash.__, value: T, array: U[] | null | undefined): LodashFill1x12<T, U>;
731 <T, U>(start: number, end: lodash.__, value: T, array: U[] | null | undefined): LodashFill1x13<T, U>;
732 <T, U>(start: lodash.__, end: number, value: T, array: U[] | null | undefined): LodashFill1x14<T, U>;
733 <T, U>(start: number, end: number, value: T, array: U[] | null | undefined): Array<T | U>;
734 <U>(start: lodash.__, end: lodash.__, value: lodash.__, array: lodash.List<U> | null | undefined): LodashFill2x8<U>;
735 <U>(start: number, end: lodash.__, value: lodash.__, array: lodash.List<U> | null | undefined): LodashFill2x9<U>;
736 <U>(start: lodash.__, end: number, value: lodash.__, array: lodash.List<U> | null | undefined): LodashFill2x10<U>;
737 <U>(start: number, end: number, value: lodash.__, array: lodash.List<U> | null | undefined): LodashFill2x11<U>;
738 <T, U>(start: lodash.__, end: lodash.__, value: T, array: lodash.List<U> | null | undefined): LodashFill2x12<T, U>;
739 <T, U>(start: number, end: lodash.__, value: T, array: lodash.List<U> | null | undefined): LodashFill2x13<T, U>;
740 <T, U>(start: lodash.__, end: number, value: T, array: lodash.List<U> | null | undefined): LodashFill2x14<T, U>;
741 <T, U>(start: number, end: number, value: T, array: lodash.List<U> | null | undefined): lodash.List<T | U>;
742 }
743 interface LodashFill1x1 {
744 (end: number): LodashFill1x3;
745 <T>(end: lodash.__, value: T): LodashFill1x5<T>;
746 <T>(end: number, value: T): LodashFill1x7<T>;
747 <U>(end: lodash.__, value: lodash.__, array: U[] | null | undefined): LodashFill1x9<U>;
748 <U>(end: number, value: lodash.__, array: U[] | null | undefined): LodashFill1x11<U>;
749 <T, U>(end: lodash.__, value: T, array: U[] | null | undefined): LodashFill1x13<T, U>;
750 <T, U>(end: number, value: T, array: U[] | null | undefined): Array<T | U>;
751 <U>(end: lodash.__, value: lodash.__, array: lodash.List<U> | null | undefined): LodashFill2x9<U>;
752 <U>(end: number, value: lodash.__, array: lodash.List<U> | null | undefined): LodashFill2x11<U>;
753 <T, U>(end: lodash.__, value: T, array: lodash.List<U> | null | undefined): LodashFill2x13<T, U>;
754 <T, U>(end: number, value: T, array: lodash.List<U> | null | undefined): lodash.List<T | U>;
755 }
756 interface LodashFill1x2 {
757 (start: number): LodashFill1x3;
758 <T>(start: lodash.__, value: T): LodashFill1x6<T>;
759 <T>(start: number, value: T): LodashFill1x7<T>;
760 <U>(start: lodash.__, value: lodash.__, array: U[] | null | undefined): LodashFill1x10<U>;
761 <U>(start: number, value: lodash.__, array: U[] | null | undefined): LodashFill1x11<U>;
762 <T, U>(start: lodash.__, value: T, array: U[] | null | undefined): LodashFill1x14<T, U>;
763 <T, U>(start: number, value: T, array: U[] | null | undefined): Array<T | U>;
764 <U>(start: lodash.__, value: lodash.__, array: lodash.List<U> | null | undefined): LodashFill2x10<U>;
765 <U>(start: number, value: lodash.__, array: lodash.List<U> | null | undefined): LodashFill2x11<U>;
766 <T, U>(start: lodash.__, value: T, array: lodash.List<U> | null | undefined): LodashFill2x14<T, U>;
767 <T, U>(start: number, value: T, array: lodash.List<U> | null | undefined): lodash.List<T | U>;
768 }
769 interface LodashFill1x3 {
770 <T>(value: T): LodashFill1x7<T>;
771 <U>(value: lodash.__, array: U[] | null | undefined): LodashFill1x11<U>;
772 <T, U>(value: T, array: U[] | null | undefined): Array<T | U>;
773 <U>(value: lodash.__, array: lodash.List<U> | null | undefined): LodashFill2x11<U>;
774 <T, U>(value: T, array: lodash.List<U> | null | undefined): lodash.List<T | U>;
775 }
776 interface LodashFill1x4<T> {
777 (start: number): LodashFill1x5<T>;
778 (start: lodash.__, end: number): LodashFill1x6<T>;
779 (start: number, end: number): LodashFill1x7<T>;
780 <U>(start: lodash.__, end: lodash.__, array: U[] | null | undefined): LodashFill1x12<T, U>;
781 <U>(start: number, end: lodash.__, array: U[] | null | undefined): LodashFill1x13<T, U>;
782 <U>(start: lodash.__, end: number, array: U[] | null | undefined): LodashFill1x14<T, U>;
783 <U>(start: number, end: number, array: U[] | null | undefined): Array<T | U>;
784 <U>(start: lodash.__, end: lodash.__, array: lodash.List<U> | null | undefined): LodashFill2x12<T, U>;
785 <U>(start: number, end: lodash.__, array: lodash.List<U> | null | undefined): LodashFill2x13<T, U>;
786 <U>(start: lodash.__, end: number, array: lodash.List<U> | null | undefined): LodashFill2x14<T, U>;
787 <U>(start: number, end: number, array: lodash.List<U> | null | undefined): lodash.List<T | U>;
788 }
789 interface LodashFill1x5<T> {
790 (end: number): LodashFill1x7<T>;
791 <U>(end: lodash.__, array: U[] | null | undefined): LodashFill1x13<T, U>;
792 <U>(end: number, array: U[] | null | undefined): Array<T | U>;
793 <U>(end: lodash.__, array: lodash.List<U> | null | undefined): LodashFill2x13<T, U>;
794 <U>(end: number, array: lodash.List<U> | null | undefined): lodash.List<T | U>;
795 }
796 interface LodashFill1x6<T> {
797 (start: number): LodashFill1x7<T>;
798 <U>(start: lodash.__, array: U[] | null | undefined): LodashFill1x14<T, U>;
799 <U>(start: number, array: U[] | null | undefined): Array<T | U>;
800 <U>(start: lodash.__, array: lodash.List<U> | null | undefined): LodashFill2x14<T, U>;
801 <U>(start: number, array: lodash.List<U> | null | undefined): lodash.List<T | U>;
802 }
803 interface LodashFill1x7<T> {
804 <U>(array: U[] | null | undefined): Array<T | U>;
805 <U>(array: lodash.List<U> | null | undefined): lodash.List<T | U>;
806 }
807 interface LodashFill1x8<U> {
808 (start: number): LodashFill1x9<U>;
809 (start: lodash.__, end: number): LodashFill1x10<U>;
810 (start: number, end: number): LodashFill1x11<U>;
811 <T>(start: lodash.__, end: lodash.__, value: T): LodashFill1x12<T, U>;
812 <T>(start: number, end: lodash.__, value: T): LodashFill1x13<T, U>;
813 <T>(start: lodash.__, end: number, value: T): LodashFill1x14<T, U>;
814 <T>(start: number, end: number, value: T): Array<T | U>;
815 }
816 interface LodashFill1x9<U> {
817 (end: number): LodashFill1x11<U>;
818 <T>(end: lodash.__, value: T): LodashFill1x13<T, U>;
819 <T>(end: number, value: T): Array<T | U>;
820 }
821 interface LodashFill1x10<U> {
822 (start: number): LodashFill1x11<U>;
823 <T>(start: lodash.__, value: T): LodashFill1x14<T, U>;
824 <T>(start: number, value: T): Array<T | U>;
825 }
826 type LodashFill1x11<U> = <T>(value: T) => Array<T | U>;
827 interface LodashFill1x12<T, U> {
828 (start: number): LodashFill1x13<T, U>;
829 (start: lodash.__, end: number): LodashFill1x14<T, U>;
830 (start: number, end: number): Array<T | U>;
831 }
832 type LodashFill1x13<T, U> = (end: number) => Array<T | U>;
833 type LodashFill1x14<T, U> = (start: number) => Array<T | U>;
834 interface LodashFill2x8<U> {
835 (start: number): LodashFill2x9<U>;
836 (start: lodash.__, end: number): LodashFill2x10<U>;
837 (start: number, end: number): LodashFill2x11<U>;
838 <T>(start: lodash.__, end: lodash.__, value: T): LodashFill2x12<T, U>;
839 <T>(start: number, end: lodash.__, value: T): LodashFill2x13<T, U>;
840 <T>(start: lodash.__, end: number, value: T): LodashFill2x14<T, U>;
841 <T>(start: number, end: number, value: T): lodash.List<T | U>;
842 }
843 interface LodashFill2x9<U> {
844 (end: number): LodashFill2x11<U>;
845 <T>(end: lodash.__, value: T): LodashFill2x13<T, U>;
846 <T>(end: number, value: T): lodash.List<T | U>;
847 }
848 interface LodashFill2x10<U> {
849 (start: number): LodashFill2x11<U>;
850 <T>(start: lodash.__, value: T): LodashFill2x14<T, U>;
851 <T>(start: number, value: T): lodash.List<T | U>;
852 }
853 type LodashFill2x11<U> = <T>(value: T) => lodash.List<T | U>;
854 interface LodashFill2x12<T, U> {
855 (start: number): LodashFill2x13<T, U>;
856 (start: lodash.__, end: number): LodashFill2x14<T, U>;
857 (start: number, end: number): lodash.List<T | U>;
858 }
859 type LodashFill2x13<T, U> = (end: number) => lodash.List<T | U>;
860 type LodashFill2x14<T, U> = (start: number) => lodash.List<T | U>;
861 interface LodashFilter {
862 <T, S extends T>(predicate: lodash.ValueIteratorTypeGuard<T, S>): LodashFilter1x1<T, S>;
863 <T>(predicate: lodash.__, collection: lodash.List<T> | null | undefined): LodashFilter1x2<T>;
864 <T, S extends T>(predicate: lodash.ValueIteratorTypeGuard<T, S>, collection: lodash.List<T> | null | undefined): S[];
865 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>): LodashFilter2x1<T>;
866 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>, collection: lodash.List<T> | null | undefined): T[];
867 <T extends object, S extends T[keyof T]>(predicate: lodash.ValueIteratorTypeGuard<T[keyof T], S>): LodashFilter3x1<T, S>;
868 <T extends object>(predicate: lodash.__, collection: T | null | undefined): LodashFilter3x2<T>;
869 <T extends object, S extends T[keyof T]>(predicate: lodash.ValueIteratorTypeGuard<T[keyof T], S>, collection: T | null | undefined): S[];
870 <T extends object>(predicate: lodash.ValueIterateeCustom<T[keyof T], boolean>, collection: T | null | undefined): Array<T[keyof T]>;
871 }
872 type LodashFilter1x1<T, S> = (collection: lodash.List<T> | null | undefined) => S[];
873 interface LodashFilter1x2<T> {
874 <S extends T>(predicate: lodash.ValueIteratorTypeGuard<T, S>): S[];
875 (predicate: lodash.ValueIterateeCustom<T, boolean>): T[];
876 }
877 type LodashFilter2x1<T> = (collection: lodash.List<T> | object | null | undefined) => T[];
878 type LodashFilter3x1<T, S> = (collection: T | null | undefined) => S[];
879 interface LodashFilter3x2<T> {
880 <S extends T[keyof T]>(predicate: lodash.ValueIteratorTypeGuard<T[keyof T], S>): S[];
881 (predicate: lodash.ValueIterateeCustom<T[keyof T], boolean>): Array<T[keyof T]>;
882 }
883 interface LodashFind {
884 <T, S extends T>(predicate: lodash.ValueIteratorTypeGuard<T, S>): LodashFind1x1<T, S>;
885 <T>(predicate: lodash.__, collection: lodash.List<T> | null | undefined): LodashFind1x2<T>;
886 <T, S extends T>(predicate: lodash.ValueIteratorTypeGuard<T, S>, collection: lodash.List<T> | null | undefined): S|undefined;
887 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>): LodashFind2x1<T>;
888 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>, collection: lodash.List<T> | null | undefined): T|undefined;
889 <T extends object, S extends T[keyof T]>(predicate: lodash.ValueIteratorTypeGuard<T[keyof T], S>): LodashFind3x1<T, S>;
890 <T extends object>(predicate: lodash.__, collection: T | null | undefined): LodashFind3x2<T>;
891 <T extends object, S extends T[keyof T]>(predicate: lodash.ValueIteratorTypeGuard<T[keyof T], S>, collection: T | null | undefined): S|undefined;
892 <T extends object>(predicate: lodash.ValueIterateeCustom<T[keyof T], boolean>, collection: T | null | undefined): T[keyof T]|undefined;
893 }
894 type LodashFind1x1<T, S> = (collection: lodash.List<T> | null | undefined) => S|undefined;
895 interface LodashFind1x2<T> {
896 <S extends T>(predicate: lodash.ValueIteratorTypeGuard<T, S>): S|undefined;
897 (predicate: lodash.ValueIterateeCustom<T, boolean>): T|undefined;
898 }
899 type LodashFind2x1<T> = (collection: lodash.List<T> | object | null | undefined) => T|undefined;
900 type LodashFind3x1<T, S> = (collection: T | null | undefined) => S|undefined;
901 interface LodashFind3x2<T> {
902 <S extends T[keyof T]>(predicate: lodash.ValueIteratorTypeGuard<T[keyof T], S>): S|undefined;
903 (predicate: lodash.ValueIterateeCustom<T[keyof T], boolean>): T[keyof T]|undefined;
904 }
905 interface LodashFindFrom {
906 <T, S extends T>(predicate: lodash.ValueIteratorTypeGuard<T, S>): LodashFindFrom1x1<T, S>;
907 (predicate: lodash.__, fromIndex: number): LodashFindFrom1x2;
908 <T, S extends T>(predicate: lodash.ValueIteratorTypeGuard<T, S>, fromIndex: number): LodashFindFrom1x3<T, S>;
909 <T>(predicate: lodash.__, fromIndex: lodash.__, collection: lodash.List<T> | null | undefined): LodashFindFrom1x4<T>;
910 <T, S extends T>(predicate: lodash.ValueIteratorTypeGuard<T, S>, fromIndex: lodash.__, collection: lodash.List<T> | null | undefined): LodashFindFrom1x5<S>;
911 <T>(predicate: lodash.__, fromIndex: number, collection: lodash.List<T> | null | undefined): LodashFindFrom1x6<T>;
912 <T, S extends T>(predicate: lodash.ValueIteratorTypeGuard<T, S>, fromIndex: number, collection: lodash.List<T> | null | undefined): S|undefined;
913 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>): LodashFindFrom2x1<T>;
914 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>, fromIndex: number): LodashFindFrom2x3<T>;
915 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>, fromIndex: lodash.__, collection: lodash.List<T> | null | undefined): LodashFindFrom2x5<T>;
916 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>, fromIndex: number, collection: lodash.List<T> | null | undefined): T|undefined;
917 <T extends object, S extends T[keyof T]>(predicate: lodash.ValueIteratorTypeGuard<T[keyof T], S>): LodashFindFrom3x1<T, S>;
918 <T extends object, S extends T[keyof T]>(predicate: lodash.ValueIteratorTypeGuard<T[keyof T], S>, fromIndex: number): LodashFindFrom3x3<T, S>;
919 <T extends object>(predicate: lodash.__, fromIndex: lodash.__, collection: T | null | undefined): LodashFindFrom3x4<T>;
920 <T extends object, S extends T[keyof T]>(predicate: lodash.ValueIteratorTypeGuard<T[keyof T], S>, fromIndex: lodash.__, collection: T | null | undefined): LodashFindFrom3x5<S>;
921 <T extends object>(predicate: lodash.__, fromIndex: number, collection: T | null | undefined): LodashFindFrom3x6<T>;
922 <T extends object, S extends T[keyof T]>(predicate: lodash.ValueIteratorTypeGuard<T[keyof T], S>, fromIndex: number, collection: T | null | undefined): S|undefined;
923 <T extends object>(predicate: lodash.ValueIterateeCustom<T[keyof T], boolean>, fromIndex: lodash.__, collection: T | null | undefined): LodashFindFrom4x5<T>;
924 <T extends object>(predicate: lodash.ValueIterateeCustom<T[keyof T], boolean>, fromIndex: number, collection: T | null | undefined): T[keyof T]|undefined;
925 }
926 interface LodashFindFrom1x1<T, S> {
927 (fromIndex: number): LodashFindFrom1x3<T, S>;
928 (fromIndex: lodash.__, collection: lodash.List<T> | null | undefined): LodashFindFrom1x5<S>;
929 (fromIndex: number, collection: lodash.List<T> | null | undefined): S|undefined;
930 }
931 interface LodashFindFrom1x2 {
932 <T, S extends T>(predicate: lodash.ValueIteratorTypeGuard<T, S>): LodashFindFrom1x3<T, S>;
933 <T>(predicate: lodash.__, collection: lodash.List<T> | null | undefined): LodashFindFrom1x6<T>;
934 <T, S extends T>(predicate: lodash.ValueIteratorTypeGuard<T, S>, collection: lodash.List<T> | null | undefined): S|undefined;
935 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>): LodashFindFrom2x3<T>;
936 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>, collection: lodash.List<T> | null | undefined): T|undefined;
937 <T extends object, S extends T[keyof T]>(predicate: lodash.ValueIteratorTypeGuard<T[keyof T], S>): LodashFindFrom3x3<T, S>;
938 <T extends object>(predicate: lodash.__, collection: T | null | undefined): LodashFindFrom3x6<T>;
939 <T extends object, S extends T[keyof T]>(predicate: lodash.ValueIteratorTypeGuard<T[keyof T], S>, collection: T | null | undefined): S|undefined;
940 <T extends object>(predicate: lodash.ValueIterateeCustom<T[keyof T], boolean>, collection: T | null | undefined): T[keyof T]|undefined;
941 }
942 type LodashFindFrom1x3<T, S> = (collection: lodash.List<T> | null | undefined) => S|undefined;
943 interface LodashFindFrom1x4<T> {
944 <S extends T>(predicate: lodash.ValueIteratorTypeGuard<T, S>): LodashFindFrom1x5<S>;
945 (predicate: lodash.__, fromIndex: number): LodashFindFrom1x6<T>;
946 <S extends T>(predicate: lodash.ValueIteratorTypeGuard<T, S>, fromIndex: number): S|undefined;
947 (predicate: lodash.ValueIterateeCustom<T, boolean>): LodashFindFrom2x5<T>;
948 (predicate: lodash.ValueIterateeCustom<T, boolean>, fromIndex: number): T|undefined;
949 }
950 type LodashFindFrom1x5<S> = (fromIndex: number) => S|undefined;
951 interface LodashFindFrom1x6<T> {
952 <S extends T>(predicate: lodash.ValueIteratorTypeGuard<T, S>): S|undefined;
953 (predicate: lodash.ValueIterateeCustom<T, boolean>): T|undefined;
954 }
955 interface LodashFindFrom2x1<T> {
956 (fromIndex: number): LodashFindFrom2x3<T>;
957 (fromIndex: lodash.__, collection: lodash.List<T> | null | undefined): LodashFindFrom2x5<T>;
958 (fromIndex: number, collection: lodash.List<T> | object | null | undefined): T|undefined;
959 <T1 extends object>(fromIndex: lodash.__, collection: T1 | null | undefined): LodashFindFrom4x5<T>;
960 }
961 interface LodashFindFrom2x3<T> {
962 (collection: lodash.List<T> | null | undefined): T|undefined;
963 (collection: object | null | undefined): object|undefined;
964 }
965 type LodashFindFrom2x5<T> = (fromIndex: number) => T|undefined;
966 interface LodashFindFrom3x1<T, S> {
967 (fromIndex: number): LodashFindFrom3x3<T, S>;
968 (fromIndex: lodash.__, collection: T | null | undefined): LodashFindFrom3x5<S>;
969 (fromIndex: number, collection: T | null | undefined): S|undefined;
970 }
971 type LodashFindFrom3x3<T, S> = (collection: T | null | undefined) => S|undefined;
972 interface LodashFindFrom3x4<T> {
973 <S extends T[keyof T]>(predicate: lodash.ValueIteratorTypeGuard<T[keyof T], S>): LodashFindFrom3x5<S>;
974 (predicate: lodash.__, fromIndex: number): LodashFindFrom3x6<T>;
975 <S extends T[keyof T]>(predicate: lodash.ValueIteratorTypeGuard<T[keyof T], S>, fromIndex: number): S|undefined;
976 (predicate: lodash.ValueIterateeCustom<T[keyof T], boolean>): LodashFindFrom4x5<T>;
977 (predicate: lodash.ValueIterateeCustom<T[keyof T], boolean>, fromIndex: number): T[keyof T]|undefined;
978 }
979 type LodashFindFrom3x5<S> = (fromIndex: number) => S|undefined;
980 interface LodashFindFrom3x6<T> {
981 <S extends T[keyof T]>(predicate: lodash.ValueIteratorTypeGuard<T[keyof T], S>): S|undefined;
982 (predicate: lodash.ValueIterateeCustom<T[keyof T], boolean>): T[keyof T]|undefined;
983 }
984 type LodashFindFrom4x5<T> = (fromIndex: number) => T[keyof T]|undefined;
985 interface LodashFindIndex {
986 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>): LodashFindIndex1x1<T>;
987 <T>(predicate: lodash.__, array: lodash.List<T> | null | undefined): LodashFindIndex1x2<T>;
988 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>, array: lodash.List<T> | null | undefined): number;
989 }
990 type LodashFindIndex1x1<T> = (array: lodash.List<T> | null | undefined) => number;
991 type LodashFindIndex1x2<T> = (predicate: lodash.ValueIterateeCustom<T, boolean>) => number;
992 interface LodashFindIndexFrom {
993 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>): LodashFindIndexFrom1x1<T>;
994 (predicate: lodash.__, fromIndex: number): LodashFindIndexFrom1x2;
995 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>, fromIndex: number): LodashFindIndexFrom1x3<T>;
996 <T>(predicate: lodash.__, fromIndex: lodash.__, array: lodash.List<T> | null | undefined): LodashFindIndexFrom1x4<T>;
997 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>, fromIndex: lodash.__, array: lodash.List<T> | null | undefined): LodashFindIndexFrom1x5;
998 <T>(predicate: lodash.__, fromIndex: number, array: lodash.List<T> | null | undefined): LodashFindIndexFrom1x6<T>;
999 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>, fromIndex: number, array: lodash.List<T> | null | undefined): number;
1000 }
1001 interface LodashFindIndexFrom1x1<T> {
1002 (fromIndex: number): LodashFindIndexFrom1x3<T>;
1003 (fromIndex: lodash.__, array: lodash.List<T> | null | undefined): LodashFindIndexFrom1x5;
1004 (fromIndex: number, array: lodash.List<T> | null | undefined): number;
1005 }
1006 interface LodashFindIndexFrom1x2 {
1007 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>): LodashFindIndexFrom1x3<T>;
1008 <T>(predicate: lodash.__, array: lodash.List<T> | null | undefined): LodashFindIndexFrom1x6<T>;
1009 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>, array: lodash.List<T> | null | undefined): number;
1010 }
1011 type LodashFindIndexFrom1x3<T> = (array: lodash.List<T> | null | undefined) => number;
1012 interface LodashFindIndexFrom1x4<T> {
1013 (predicate: lodash.ValueIterateeCustom<T, boolean>): LodashFindIndexFrom1x5;
1014 (predicate: lodash.__, fromIndex: number): LodashFindIndexFrom1x6<T>;
1015 (predicate: lodash.ValueIterateeCustom<T, boolean>, fromIndex: number): number;
1016 }
1017 type LodashFindIndexFrom1x5 = (fromIndex: number) => number;
1018 type LodashFindIndexFrom1x6<T> = (predicate: lodash.ValueIterateeCustom<T, boolean>) => number;
1019 interface LodashFindKey {
1020 <T>(predicate: lodash.ValueIteratee<T>): LodashFindKey1x1<T>;
1021 <T>(predicate: lodash.__, object: T | null | undefined): LodashFindKey1x2<T>;
1022 <T>(predicate: lodash.ValueIteratee<T[keyof T]>, object: T | null | undefined): string | undefined;
1023 }
1024 type LodashFindKey1x1<T> = (object: object | null | undefined) => string | undefined;
1025 type LodashFindKey1x2<T> = (predicate: lodash.ValueIteratee<T[keyof T]>) => string | undefined;
1026 interface LodashFindLast {
1027 <T, S extends T>(predicate: lodash.ValueIteratorTypeGuard<T, S>): LodashFindLast1x1<T, S>;
1028 <T>(predicate: lodash.__, collection: lodash.List<T> | null | undefined): LodashFindLast1x2<T>;
1029 <T, S extends T>(predicate: lodash.ValueIteratorTypeGuard<T, S>, collection: lodash.List<T> | null | undefined): S|undefined;
1030 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>): LodashFindLast2x1<T>;
1031 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>, collection: lodash.List<T> | null | undefined): T|undefined;
1032 <T extends object, S extends T[keyof T]>(predicate: lodash.ValueIteratorTypeGuard<T[keyof T], S>): LodashFindLast3x1<T, S>;
1033 <T extends object>(predicate: lodash.__, collection: T | null | undefined): LodashFindLast3x2<T>;
1034 <T extends object, S extends T[keyof T]>(predicate: lodash.ValueIteratorTypeGuard<T[keyof T], S>, collection: T | null | undefined): S|undefined;
1035 <T extends object>(predicate: lodash.ValueIterateeCustom<T[keyof T], boolean>, collection: T | null | undefined): T[keyof T]|undefined;
1036 }
1037 type LodashFindLast1x1<T, S> = (collection: lodash.List<T> | null | undefined) => S|undefined;
1038 interface LodashFindLast1x2<T> {
1039 <S extends T>(predicate: lodash.ValueIteratorTypeGuard<T, S>): S|undefined;
1040 (predicate: lodash.ValueIterateeCustom<T, boolean>): T|undefined;
1041 }
1042 type LodashFindLast2x1<T> = (collection: lodash.List<T> | object | null | undefined) => T|undefined;
1043 type LodashFindLast3x1<T, S> = (collection: T | null | undefined) => S|undefined;
1044 interface LodashFindLast3x2<T> {
1045 <S extends T[keyof T]>(predicate: lodash.ValueIteratorTypeGuard<T[keyof T], S>): S|undefined;
1046 (predicate: lodash.ValueIterateeCustom<T[keyof T], boolean>): T[keyof T]|undefined;
1047 }
1048 interface LodashFindLastFrom {
1049 <T, S extends T>(predicate: lodash.ValueIteratorTypeGuard<T, S>): LodashFindLastFrom1x1<T, S>;
1050 (predicate: lodash.__, fromIndex: number): LodashFindLastFrom1x2;
1051 <T, S extends T>(predicate: lodash.ValueIteratorTypeGuard<T, S>, fromIndex: number): LodashFindLastFrom1x3<T, S>;
1052 <T>(predicate: lodash.__, fromIndex: lodash.__, collection: lodash.List<T> | null | undefined): LodashFindLastFrom1x4<T>;
1053 <T, S extends T>(predicate: lodash.ValueIteratorTypeGuard<T, S>, fromIndex: lodash.__, collection: lodash.List<T> | null | undefined): LodashFindLastFrom1x5<S>;
1054 <T>(predicate: lodash.__, fromIndex: number, collection: lodash.List<T> | null | undefined): LodashFindLastFrom1x6<T>;
1055 <T, S extends T>(predicate: lodash.ValueIteratorTypeGuard<T, S>, fromIndex: number, collection: lodash.List<T> | null | undefined): S|undefined;
1056 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>): LodashFindLastFrom2x1<T>;
1057 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>, fromIndex: number): LodashFindLastFrom2x3<T>;
1058 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>, fromIndex: lodash.__, collection: lodash.List<T> | null | undefined): LodashFindLastFrom2x5<T>;
1059 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>, fromIndex: number, collection: lodash.List<T> | null | undefined): T|undefined;
1060 <T extends object, S extends T[keyof T]>(predicate: lodash.ValueIteratorTypeGuard<T[keyof T], S>): LodashFindLastFrom3x1<T, S>;
1061 <T extends object, S extends T[keyof T]>(predicate: lodash.ValueIteratorTypeGuard<T[keyof T], S>, fromIndex: number): LodashFindLastFrom3x3<T, S>;
1062 <T extends object>(predicate: lodash.__, fromIndex: lodash.__, collection: T | null | undefined): LodashFindLastFrom3x4<T>;
1063 <T extends object, S extends T[keyof T]>(predicate: lodash.ValueIteratorTypeGuard<T[keyof T], S>, fromIndex: lodash.__, collection: T | null | undefined): LodashFindLastFrom3x5<S>;
1064 <T extends object>(predicate: lodash.__, fromIndex: number, collection: T | null | undefined): LodashFindLastFrom3x6<T>;
1065 <T extends object, S extends T[keyof T]>(predicate: lodash.ValueIteratorTypeGuard<T[keyof T], S>, fromIndex: number, collection: T | null | undefined): S|undefined;
1066 <T extends object>(predicate: lodash.ValueIterateeCustom<T[keyof T], boolean>, fromIndex: lodash.__, collection: T | null | undefined): LodashFindLastFrom4x5<T>;
1067 <T extends object>(predicate: lodash.ValueIterateeCustom<T[keyof T], boolean>, fromIndex: number, collection: T | null | undefined): T[keyof T]|undefined;
1068 }
1069 interface LodashFindLastFrom1x1<T, S> {
1070 (fromIndex: number): LodashFindLastFrom1x3<T, S>;
1071 (fromIndex: lodash.__, collection: lodash.List<T> | null | undefined): LodashFindLastFrom1x5<S>;
1072 (fromIndex: number, collection: lodash.List<T> | null | undefined): S|undefined;
1073 }
1074 interface LodashFindLastFrom1x2 {
1075 <T, S extends T>(predicate: lodash.ValueIteratorTypeGuard<T, S>): LodashFindLastFrom1x3<T, S>;
1076 <T>(predicate: lodash.__, collection: lodash.List<T> | null | undefined): LodashFindLastFrom1x6<T>;
1077 <T, S extends T>(predicate: lodash.ValueIteratorTypeGuard<T, S>, collection: lodash.List<T> | null | undefined): S|undefined;
1078 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>): LodashFindLastFrom2x3<T>;
1079 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>, collection: lodash.List<T> | null | undefined): T|undefined;
1080 <T extends object, S extends T[keyof T]>(predicate: lodash.ValueIteratorTypeGuard<T[keyof T], S>): LodashFindLastFrom3x3<T, S>;
1081 <T extends object>(predicate: lodash.__, collection: T | null | undefined): LodashFindLastFrom3x6<T>;
1082 <T extends object, S extends T[keyof T]>(predicate: lodash.ValueIteratorTypeGuard<T[keyof T], S>, collection: T | null | undefined): S|undefined;
1083 <T extends object>(predicate: lodash.ValueIterateeCustom<T[keyof T], boolean>, collection: T | null | undefined): T[keyof T]|undefined;
1084 }
1085 type LodashFindLastFrom1x3<T, S> = (collection: lodash.List<T> | null | undefined) => S|undefined;
1086 interface LodashFindLastFrom1x4<T> {
1087 <S extends T>(predicate: lodash.ValueIteratorTypeGuard<T, S>): LodashFindLastFrom1x5<S>;
1088 (predicate: lodash.__, fromIndex: number): LodashFindLastFrom1x6<T>;
1089 <S extends T>(predicate: lodash.ValueIteratorTypeGuard<T, S>, fromIndex: number): S|undefined;
1090 (predicate: lodash.ValueIterateeCustom<T, boolean>): LodashFindLastFrom2x5<T>;
1091 (predicate: lodash.ValueIterateeCustom<T, boolean>, fromIndex: number): T|undefined;
1092 }
1093 type LodashFindLastFrom1x5<S> = (fromIndex: number) => S|undefined;
1094 interface LodashFindLastFrom1x6<T> {
1095 <S extends T>(predicate: lodash.ValueIteratorTypeGuard<T, S>): S|undefined;
1096 (predicate: lodash.ValueIterateeCustom<T, boolean>): T|undefined;
1097 }
1098 interface LodashFindLastFrom2x1<T> {
1099 (fromIndex: number): LodashFindLastFrom2x3<T>;
1100 (fromIndex: lodash.__, collection: lodash.List<T> | null | undefined): LodashFindLastFrom2x5<T>;
1101 (fromIndex: number, collection: lodash.List<T> | object | null | undefined): T|undefined;
1102 <T1 extends object>(fromIndex: lodash.__, collection: T1 | null | undefined): LodashFindLastFrom4x5<T>;
1103 }
1104 interface LodashFindLastFrom2x3<T> {
1105 (collection: lodash.List<T> | null | undefined): T|undefined;
1106 (collection: object | null | undefined): object|undefined;
1107 }
1108 type LodashFindLastFrom2x5<T> = (fromIndex: number) => T|undefined;
1109 interface LodashFindLastFrom3x1<T, S> {
1110 (fromIndex: number): LodashFindLastFrom3x3<T, S>;
1111 (fromIndex: lodash.__, collection: T | null | undefined): LodashFindLastFrom3x5<S>;
1112 (fromIndex: number, collection: T | null | undefined): S|undefined;
1113 }
1114 type LodashFindLastFrom3x3<T, S> = (collection: T | null | undefined) => S|undefined;
1115 interface LodashFindLastFrom3x4<T> {
1116 <S extends T[keyof T]>(predicate: lodash.ValueIteratorTypeGuard<T[keyof T], S>): LodashFindLastFrom3x5<S>;
1117 (predicate: lodash.__, fromIndex: number): LodashFindLastFrom3x6<T>;
1118 <S extends T[keyof T]>(predicate: lodash.ValueIteratorTypeGuard<T[keyof T], S>, fromIndex: number): S|undefined;
1119 (predicate: lodash.ValueIterateeCustom<T[keyof T], boolean>): LodashFindLastFrom4x5<T>;
1120 (predicate: lodash.ValueIterateeCustom<T[keyof T], boolean>, fromIndex: number): T[keyof T]|undefined;
1121 }
1122 type LodashFindLastFrom3x5<S> = (fromIndex: number) => S|undefined;
1123 interface LodashFindLastFrom3x6<T> {
1124 <S extends T[keyof T]>(predicate: lodash.ValueIteratorTypeGuard<T[keyof T], S>): S|undefined;
1125 (predicate: lodash.ValueIterateeCustom<T[keyof T], boolean>): T[keyof T]|undefined;
1126 }
1127 type LodashFindLastFrom4x5<T> = (fromIndex: number) => T[keyof T]|undefined;
1128 interface LodashFindLastIndex {
1129 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>): LodashFindLastIndex1x1<T>;
1130 <T>(predicate: lodash.__, array: lodash.List<T> | null | undefined): LodashFindLastIndex1x2<T>;
1131 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>, array: lodash.List<T> | null | undefined): number;
1132 }
1133 type LodashFindLastIndex1x1<T> = (array: lodash.List<T> | null | undefined) => number;
1134 type LodashFindLastIndex1x2<T> = (predicate: lodash.ValueIterateeCustom<T, boolean>) => number;
1135 interface LodashFindLastIndexFrom {
1136 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>): LodashFindLastIndexFrom1x1<T>;
1137 (predicate: lodash.__, fromIndex: number): LodashFindLastIndexFrom1x2;
1138 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>, fromIndex: number): LodashFindLastIndexFrom1x3<T>;
1139 <T>(predicate: lodash.__, fromIndex: lodash.__, array: lodash.List<T> | null | undefined): LodashFindLastIndexFrom1x4<T>;
1140 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>, fromIndex: lodash.__, array: lodash.List<T> | null | undefined): LodashFindLastIndexFrom1x5;
1141 <T>(predicate: lodash.__, fromIndex: number, array: lodash.List<T> | null | undefined): LodashFindLastIndexFrom1x6<T>;
1142 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>, fromIndex: number, array: lodash.List<T> | null | undefined): number;
1143 }
1144 interface LodashFindLastIndexFrom1x1<T> {
1145 (fromIndex: number): LodashFindLastIndexFrom1x3<T>;
1146 (fromIndex: lodash.__, array: lodash.List<T> | null | undefined): LodashFindLastIndexFrom1x5;
1147 (fromIndex: number, array: lodash.List<T> | null | undefined): number;
1148 }
1149 interface LodashFindLastIndexFrom1x2 {
1150 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>): LodashFindLastIndexFrom1x3<T>;
1151 <T>(predicate: lodash.__, array: lodash.List<T> | null | undefined): LodashFindLastIndexFrom1x6<T>;
1152 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>, array: lodash.List<T> | null | undefined): number;
1153 }
1154 type LodashFindLastIndexFrom1x3<T> = (array: lodash.List<T> | null | undefined) => number;
1155 interface LodashFindLastIndexFrom1x4<T> {
1156 (predicate: lodash.ValueIterateeCustom<T, boolean>): LodashFindLastIndexFrom1x5;
1157 (predicate: lodash.__, fromIndex: number): LodashFindLastIndexFrom1x6<T>;
1158 (predicate: lodash.ValueIterateeCustom<T, boolean>, fromIndex: number): number;
1159 }
1160 type LodashFindLastIndexFrom1x5 = (fromIndex: number) => number;
1161 type LodashFindLastIndexFrom1x6<T> = (predicate: lodash.ValueIterateeCustom<T, boolean>) => number;
1162 interface LodashFindLastKey {
1163 <T>(predicate: lodash.ValueIteratee<T>): LodashFindLastKey1x1<T>;
1164 <T>(predicate: lodash.__, object: T | null | undefined): LodashFindLastKey1x2<T>;
1165 <T>(predicate: lodash.ValueIteratee<T[keyof T]>, object: T | null | undefined): string | undefined;
1166 }
1167 type LodashFindLastKey1x1<T> = (object: object | null | undefined) => string | undefined;
1168 type LodashFindLastKey1x2<T> = (predicate: lodash.ValueIteratee<T[keyof T]>) => string | undefined;
1169 type LodashHead = <T>(array: lodash.List<T> | null | undefined) => T | undefined;
1170 interface LodashFlatMap {
1171 <T, TResult>(iteratee: (value: T) => lodash.Many<TResult>): LodashFlatMap1x1<T, TResult>;
1172 <T>(iteratee: lodash.__, collection: lodash.List<T> | null | undefined): LodashFlatMap1x2<T>;
1173 <T, TResult>(iteratee: (value: T) => lodash.Many<TResult>, collection: lodash.List<T> | null | undefined): TResult[];
1174 <T extends object, TResult>(iteratee: (value: T[keyof T]) => lodash.Many<TResult>): LodashFlatMap2x1<T, TResult>;
1175 <T extends object>(iteratee: lodash.__, collection: T | null | undefined): LodashFlatMap2x2<T>;
1176 <T extends object, TResult>(iteratee: (value: T[keyof T]) => lodash.Many<TResult>, collection: T | null | undefined): TResult[];
1177 (iteratee: string): LodashFlatMap3x1;
1178 (iteratee: lodash.__, collection: object | null | undefined): LodashFlatMap3x2;
1179 (iteratee: string, collection: object | null | undefined): any[];
1180 (iteratee: object): LodashFlatMap4x1;
1181 (iteratee: object, collection: object | null | undefined): boolean[];
1182 }
1183 type LodashFlatMap1x1<T, TResult> = (collection: lodash.List<T> | null | undefined) => TResult[];
1184 type LodashFlatMap1x2<T> = <TResult>(iteratee: (value: T) => lodash.Many<TResult>) => TResult[];
1185 type LodashFlatMap2x1<T, TResult> = (collection: T | null | undefined) => TResult[];
1186 type LodashFlatMap2x2<T> = <TResult>(iteratee: (value: T[keyof T]) => lodash.Many<TResult>) => TResult[];
1187 type LodashFlatMap3x1 = (collection: object | null | undefined) => any[];
1188 interface LodashFlatMap3x2 {
1189 (iteratee: string): any[];
1190 (iteratee: object): boolean[];
1191 }
1192 type LodashFlatMap4x1 = (collection: object | null | undefined) => boolean[];
1193 interface LodashFlatMapDeep {
1194 <T, TResult>(iteratee: (value: T) => lodash.ListOfRecursiveArraysOrValues<TResult> | TResult): LodashFlatMapDeep1x1<T, TResult>;
1195 <T>(iteratee: lodash.__, collection: lodash.List<T> | null | undefined): LodashFlatMapDeep1x2<T>;
1196 <T, TResult>(iteratee: (value: T) => lodash.ListOfRecursiveArraysOrValues<TResult> | TResult, collection: lodash.List<T> | null | undefined): TResult[];
1197 <T extends object, TResult>(iteratee: (value: T[keyof T]) => lodash.ListOfRecursiveArraysOrValues<TResult> | TResult): LodashFlatMapDeep2x1<T, TResult>;
1198 <T extends object>(iteratee: lodash.__, collection: T | null | undefined): LodashFlatMapDeep2x2<T>;
1199 <T extends object, TResult>(iteratee: (value: T[keyof T]) => lodash.ListOfRecursiveArraysOrValues<TResult> | TResult, collection: T | null | undefined): TResult[];
1200 (iteratee: string): LodashFlatMapDeep3x1;
1201 (iteratee: lodash.__, collection: object | null | undefined): LodashFlatMapDeep3x2;
1202 (iteratee: string, collection: object | null | undefined): any[];
1203 (iteratee: object): LodashFlatMapDeep4x1;
1204 (iteratee: object, collection: object | null | undefined): boolean[];
1205 }
1206 type LodashFlatMapDeep1x1<T, TResult> = (collection: lodash.List<T> | null | undefined) => TResult[];
1207 type LodashFlatMapDeep1x2<T> = <TResult>(iteratee: (value: T) => lodash.ListOfRecursiveArraysOrValues<TResult> | TResult) => TResult[];
1208 type LodashFlatMapDeep2x1<T, TResult> = (collection: T | null | undefined) => TResult[];
1209 type LodashFlatMapDeep2x2<T> = <TResult>(iteratee: (value: T[keyof T]) => lodash.ListOfRecursiveArraysOrValues<TResult> | TResult) => TResult[];
1210 type LodashFlatMapDeep3x1 = (collection: object | null | undefined) => any[];
1211 interface LodashFlatMapDeep3x2 {
1212 (iteratee: string): any[];
1213 (iteratee: object): boolean[];
1214 }
1215 type LodashFlatMapDeep4x1 = (collection: object | null | undefined) => boolean[];
1216 interface LodashFlatMapDepth {
1217 <T, TResult>(iteratee: (value: T) => lodash.ListOfRecursiveArraysOrValues<TResult> | TResult): LodashFlatMapDepth1x1<T, TResult>;
1218 (iteratee: lodash.__, depth: number): LodashFlatMapDepth1x2;
1219 <T, TResult>(iteratee: (value: T) => lodash.ListOfRecursiveArraysOrValues<TResult> | TResult, depth: number): LodashFlatMapDepth1x3<T, TResult>;
1220 <T>(iteratee: lodash.__, depth: lodash.__, collection: lodash.List<T> | null | undefined): LodashFlatMapDepth1x4<T>;
1221 <T, TResult>(iteratee: (value: T) => lodash.ListOfRecursiveArraysOrValues<TResult> | TResult, depth: lodash.__, collection: lodash.List<T> | null | undefined): LodashFlatMapDepth1x5<TResult>;
1222 <T>(iteratee: lodash.__, depth: number, collection: lodash.List<T> | null | undefined): LodashFlatMapDepth1x6<T>;
1223 <T, TResult>(iteratee: (value: T) => lodash.ListOfRecursiveArraysOrValues<TResult> | TResult, depth: number, collection: lodash.List<T> | null | undefined): TResult[];
1224 <T extends object, TResult>(iteratee: (value: T[keyof T]) => lodash.ListOfRecursiveArraysOrValues<TResult> | TResult): LodashFlatMapDepth2x1<T, TResult>;
1225 <T extends object, TResult>(iteratee: (value: T[keyof T]) => lodash.ListOfRecursiveArraysOrValues<TResult> | TResult, depth: number): LodashFlatMapDepth2x3<T, TResult>;
1226 <T extends object>(iteratee: lodash.__, depth: lodash.__, collection: T | null | undefined): LodashFlatMapDepth2x4<T>;
1227 <T extends object, TResult>(iteratee: (value: T[keyof T]) => lodash.ListOfRecursiveArraysOrValues<TResult> | TResult, depth: lodash.__, collection: T | null | undefined): LodashFlatMapDepth2x5<TResult>;
1228 <T extends object>(iteratee: lodash.__, depth: number, collection: T | null | undefined): LodashFlatMapDepth2x6<T>;
1229 <T extends object, TResult>(iteratee: (value: T[keyof T]) => lodash.ListOfRecursiveArraysOrValues<TResult> | TResult, depth: number, collection: T | null | undefined): TResult[];
1230 (iteratee: string): LodashFlatMapDepth3x1;
1231 (iteratee: string, depth: number): LodashFlatMapDepth3x3;
1232 (iteratee: lodash.__, depth: lodash.__, collection: object | null | undefined): LodashFlatMapDepth3x4;
1233 (iteratee: string, depth: lodash.__, collection: object | null | undefined): LodashFlatMapDepth3x5;
1234 (iteratee: lodash.__, depth: number, collection: object | null | undefined): LodashFlatMapDepth3x6;
1235 (iteratee: string, depth: number, collection: object | null | undefined): any[];
1236 (iteratee: object): LodashFlatMapDepth4x1;
1237 (iteratee: object, depth: number): LodashFlatMapDepth4x3;
1238 (iteratee: object, depth: lodash.__, collection: object | null | undefined): LodashFlatMapDepth4x5;
1239 (iteratee: object, depth: number, collection: object | null | undefined): boolean[];
1240 }
1241 interface LodashFlatMapDepth1x1<T, TResult> {
1242 (depth: number): LodashFlatMapDepth1x3<T, TResult>;
1243 (depth: lodash.__, collection: lodash.List<T> | null | undefined): LodashFlatMapDepth1x5<TResult>;
1244 (depth: number, collection: lodash.List<T> | null | undefined): TResult[];
1245 }
1246 interface LodashFlatMapDepth1x2 {
1247 <T, TResult>(iteratee: (value: T) => lodash.ListOfRecursiveArraysOrValues<TResult> | TResult): LodashFlatMapDepth1x3<T, TResult>;
1248 <T>(iteratee: lodash.__, collection: lodash.List<T> | null | undefined): LodashFlatMapDepth1x6<T>;
1249 <T, TResult>(iteratee: (value: T) => lodash.ListOfRecursiveArraysOrValues<TResult> | TResult, collection: lodash.List<T> | null | undefined): TResult[];
1250 <T extends object, TResult>(iteratee: (value: T[keyof T]) => lodash.ListOfRecursiveArraysOrValues<TResult> | TResult): LodashFlatMapDepth2x3<T, TResult>;
1251 <T extends object>(iteratee: lodash.__, collection: T | null | undefined): LodashFlatMapDepth2x6<T>;
1252 <T extends object, TResult>(iteratee: (value: T[keyof T]) => lodash.ListOfRecursiveArraysOrValues<TResult> | TResult, collection: T | null | undefined): TResult[];
1253 (iteratee: string): LodashFlatMapDepth3x3;
1254 (iteratee: lodash.__, collection: object | null | undefined): LodashFlatMapDepth3x6;
1255 (iteratee: string, collection: object | null | undefined): any[];
1256 (iteratee: object): LodashFlatMapDepth4x3;
1257 (iteratee: object, collection: object | null | undefined): boolean[];
1258 }
1259 type LodashFlatMapDepth1x3<T, TResult> = (collection: lodash.List<T> | null | undefined) => TResult[];
1260 interface LodashFlatMapDepth1x4<T> {
1261 <TResult>(iteratee: (value: T) => lodash.ListOfRecursiveArraysOrValues<TResult> | TResult): LodashFlatMapDepth1x5<TResult>;
1262 (iteratee: lodash.__, depth: number): LodashFlatMapDepth1x6<T>;
1263 <TResult>(iteratee: (value: T) => lodash.ListOfRecursiveArraysOrValues<TResult> | TResult, depth: number): TResult[];
1264 }
1265 type LodashFlatMapDepth1x5<TResult> = (depth: number) => TResult[];
1266 type LodashFlatMapDepth1x6<T> = <TResult>(iteratee: (value: T) => lodash.ListOfRecursiveArraysOrValues<TResult> | TResult) => TResult[];
1267 interface LodashFlatMapDepth2x1<T, TResult> {
1268 (depth: number): LodashFlatMapDepth2x3<T, TResult>;
1269 (depth: lodash.__, collection: T | null | undefined): LodashFlatMapDepth2x5<TResult>;
1270 (depth: number, collection: T | null | undefined): TResult[];
1271 }
1272 type LodashFlatMapDepth2x3<T, TResult> = (collection: T | null | undefined) => TResult[];
1273 interface LodashFlatMapDepth2x4<T> {
1274 <TResult>(iteratee: (value: T[keyof T]) => lodash.ListOfRecursiveArraysOrValues<TResult> | TResult): LodashFlatMapDepth2x5<TResult>;
1275 (iteratee: lodash.__, depth: number): LodashFlatMapDepth2x6<T>;
1276 <TResult>(iteratee: (value: T[keyof T]) => lodash.ListOfRecursiveArraysOrValues<TResult> | TResult, depth: number): TResult[];
1277 }
1278 type LodashFlatMapDepth2x5<TResult> = (depth: number) => TResult[];
1279 type LodashFlatMapDepth2x6<T> = <TResult>(iteratee: (value: T[keyof T]) => lodash.ListOfRecursiveArraysOrValues<TResult> | TResult) => TResult[];
1280 interface LodashFlatMapDepth3x1 {
1281 (depth: number): LodashFlatMapDepth3x3;
1282 (depth: lodash.__, collection: object | null | undefined): LodashFlatMapDepth3x5;
1283 (depth: number, collection: object | null | undefined): any[];
1284 }
1285 type LodashFlatMapDepth3x3 = (collection: object | null | undefined) => any[];
1286 interface LodashFlatMapDepth3x4 {
1287 (iteratee: string): LodashFlatMapDepth3x5;
1288 (iteratee: lodash.__, depth: number): LodashFlatMapDepth3x6;
1289 (iteratee: string, depth: number): any[];
1290 (iteratee: object): LodashFlatMapDepth4x5;
1291 (iteratee: object, depth: number): boolean[];
1292 }
1293 type LodashFlatMapDepth3x5 = (depth: number) => any[];
1294 interface LodashFlatMapDepth3x6 {
1295 (iteratee: string): any[];
1296 (iteratee: object): boolean[];
1297 }
1298 interface LodashFlatMapDepth4x1 {
1299 (depth: number): LodashFlatMapDepth4x3;
1300 (depth: lodash.__, collection: object | null | undefined): LodashFlatMapDepth4x5;
1301 (depth: number, collection: object | null | undefined): boolean[];
1302 }
1303 type LodashFlatMapDepth4x3 = (collection: object | null | undefined) => boolean[];
1304 type LodashFlatMapDepth4x5 = (depth: number) => boolean[];
1305 type LodashFlatten = <T>(array: lodash.List<lodash.Many<T>> | null | undefined) => T[];
1306 type LodashFlattenDeep = <T>(array: lodash.ListOfRecursiveArraysOrValues<T> | null | undefined) => T[];
1307 interface LodashFlattenDepth {
1308 (depth: number): LodashFlattenDepth1x1;
1309 <T>(depth: lodash.__, array: lodash.ListOfRecursiveArraysOrValues<T> | null | undefined): LodashFlattenDepth1x2<T>;
1310 <T>(depth: number, array: lodash.ListOfRecursiveArraysOrValues<T> | null | undefined): T[];
1311 }
1312 type LodashFlattenDepth1x1 = <T>(array: lodash.ListOfRecursiveArraysOrValues<T> | null | undefined) => T[];
1313 type LodashFlattenDepth1x2<T> = (depth: number) => T[];
1314 type LodashFlip = <T extends (...args: any) => any>(func: T) => T;
1315 type LodashFloor = (n: number) => number;
1316 interface LodashFlow {
1317 <A extends any[], R1, R2, R3, R4, R5, R6, R7>(f1: (...args: A) => R1, f2: (a: R1) => R2, f3: (a: R2) => R3, f4: (a: R3) => R4, f5: (a: R4) => R5, f6: (a: R5) => R6, f7: (a: R6) => R7): (...args: A) => R7;
1318 <A extends any[], R1, R2, R3, R4, R5, R6, R7>(f1: (...args: A) => R1, f2: (a: R1) => R2, f3: (a: R2) => R3, f4: (a: R3) => R4, f5: (a: R4) => R5, f6: (a: R5) => R6, f7: (a: R6) => R7, ...func: Array<lodash.Many<(a: any) => any>>): (...args: A) => any;
1319 <A extends any[], R1, R2, R3, R4, R5, R6>(f1: (...args: A) => R1, f2: (a: R1) => R2, f3: (a: R2) => R3, f4: (a: R3) => R4, f5: (a: R4) => R5, f6: (a: R5) => R6): (...args: A) => R6;
1320 <A extends any[], R1, R2, R3, R4, R5>(f1: (...args: A) => R1, f2: (a: R1) => R2, f3: (a: R2) => R3, f4: (a: R3) => R4, f5: (a: R4) => R5): (...args: A) => R5;
1321 <A extends any[], R1, R2, R3, R4>(f1: (...args: A) => R1, f2: (a: R1) => R2, f3: (a: R2) => R3, f4: (a: R3) => R4): (...args: A) => R4;
1322 <A extends any[], R1, R2, R3>(f1: (...args: A) => R1, f2: (a: R1) => R2, f3: (a: R2) => R3): (...args: A) => R3;
1323 <A extends any[], R1, R2>(f1: (...args: A) => R1, f2: (a: R1) => R2): (...args: A) => R2;
1324 (...func: Array<lodash.Many<(...args: any[]) => any>>): (...args: any[]) => any;
1325 }
1326 interface LodashForIn {
1327 <T>(iteratee: (value: T) => any): LodashForIn1x1<T>;
1328 <T>(iteratee: lodash.__, object: T): LodashForIn1x2<T>;
1329 <T>(iteratee: (value: T[keyof T]) => any, object: T): T;
1330 <T>(iteratee: lodash.__, object: T | null | undefined): LodashForIn2x2<T>;
1331 <T>(iteratee: (value: T[keyof T]) => any, object: T | null | undefined): T | null | undefined;
1332 }
1333 interface LodashForIn1x1<T> {
1334 <T1 extends object>(object: T1): T1;
1335 <T1 extends object>(object: T1 | null | undefined): T1 | null | undefined;
1336 }
1337 type LodashForIn1x2<T> = (iteratee: (value: T[keyof T]) => any) => T;
1338 type LodashForIn2x2<T> = (iteratee: (value: T[keyof T]) => any) => T | null | undefined;
1339 interface LodashForInRight {
1340 <T>(iteratee: (value: T) => any): LodashForInRight1x1<T>;
1341 <T>(iteratee: lodash.__, object: T): LodashForInRight1x2<T>;
1342 <T>(iteratee: (value: T[keyof T]) => any, object: T): T;
1343 <T>(iteratee: lodash.__, object: T | null | undefined): LodashForInRight2x2<T>;
1344 <T>(iteratee: (value: T[keyof T]) => any, object: T | null | undefined): T | null | undefined;
1345 }
1346 interface LodashForInRight1x1<T> {
1347 <T1 extends object>(object: T1): T1;
1348 <T1 extends object>(object: T1 | null | undefined): T1 | null | undefined;
1349 }
1350 type LodashForInRight1x2<T> = (iteratee: (value: T[keyof T]) => any) => T;
1351 type LodashForInRight2x2<T> = (iteratee: (value: T[keyof T]) => any) => T | null | undefined;
1352 interface LodashForOwn {
1353 <T>(iteratee: (value: T) => any): LodashForOwn1x1<T>;
1354 <T>(iteratee: lodash.__, object: T): LodashForOwn1x2<T>;
1355 <T>(iteratee: (value: T[keyof T]) => any, object: T): T;
1356 <T>(iteratee: lodash.__, object: T | null | undefined): LodashForOwn2x2<T>;
1357 <T>(iteratee: (value: T[keyof T]) => any, object: T | null | undefined): T | null | undefined;
1358 }
1359 interface LodashForOwn1x1<T> {
1360 <T1 extends object>(object: T1): T1;
1361 <T1 extends object>(object: T1 | null | undefined): T1 | null | undefined;
1362 }
1363 type LodashForOwn1x2<T> = (iteratee: (value: T[keyof T]) => any) => T;
1364 type LodashForOwn2x2<T> = (iteratee: (value: T[keyof T]) => any) => T | null | undefined;
1365 interface LodashForOwnRight {
1366 <T>(iteratee: (value: T) => any): LodashForOwnRight1x1<T>;
1367 <T>(iteratee: lodash.__, object: T): LodashForOwnRight1x2<T>;
1368 <T>(iteratee: (value: T[keyof T]) => any, object: T): T;
1369 <T>(iteratee: lodash.__, object: T | null | undefined): LodashForOwnRight2x2<T>;
1370 <T>(iteratee: (value: T[keyof T]) => any, object: T | null | undefined): T | null | undefined;
1371 }
1372 interface LodashForOwnRight1x1<T> {
1373 <T1 extends object>(object: T1): T1;
1374 <T1 extends object>(object: T1 | null | undefined): T1 | null | undefined;
1375 }
1376 type LodashForOwnRight1x2<T> = (iteratee: (value: T[keyof T]) => any) => T;
1377 type LodashForOwnRight2x2<T> = (iteratee: (value: T[keyof T]) => any) => T | null | undefined;
1378 interface LodashFromPairs {
1379 <T>(pairs: lodash.List<[lodash.PropertyName, T]> | null | undefined): lodash.Dictionary<T>;
1380 (pairs: lodash.List<any[]> | null | undefined): lodash.Dictionary<any>;
1381 }
1382 type LodashFunctions = (object: any) => string[];
1383 type LodashFunctionsIn = (object: any) => string[];
1384 interface LodashGet {
1385 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey]): LodashGet1x1<TObject, TKey>;
1386 <TObject extends object>(path: lodash.__, object: TObject): LodashGet1x2<TObject>;
1387 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey], object: TObject): TObject[TKey];
1388 <TObject extends object>(path: lodash.__, object: TObject | null | undefined): LodashGet2x2<TObject>;
1389 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey], object: TObject | null | undefined): TObject[TKey] | undefined;
1390 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): LodashGet3x1<TObject, TKey1, TKey2>;
1391 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2], object: TObject): TObject[TKey1][TKey2];
1392 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2], object: TObject | null | undefined): TObject[TKey1][TKey2] | undefined;
1393 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3]): LodashGet5x1<TObject, TKey1, TKey2, TKey3>;
1394 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3], object: TObject): TObject[TKey1][TKey2][TKey3];
1395 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3], object: TObject | null | undefined): TObject[TKey1][TKey2][TKey3] | undefined;
1396 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4]): LodashGet7x1<TObject, TKey1, TKey2, TKey3, TKey4>;
1397 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4], object: TObject): TObject[TKey1][TKey2][TKey3][TKey4];
1398 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4], object: TObject | null | undefined): TObject[TKey1][TKey2][TKey3][TKey4] | undefined;
1399 (path: number): LodashGet9x1;
1400 <T>(path: lodash.__, object: lodash.NumericDictionary<T>): LodashGet9x2<T>;
1401 <T>(path: number, object: lodash.NumericDictionary<T>): T;
1402 <T>(path: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashGet10x2<T>;
1403 <T>(path: number, object: lodash.NumericDictionary<T> | null | undefined): T | undefined;
1404 (path: lodash.PropertyPath): LodashGet11x1;
1405 (path: lodash.__, object: null | undefined): LodashGet11x2;
1406 (path: lodash.PropertyPath, object: null | undefined): undefined;
1407 (path: lodash.__, object: any): LodashGet12x2;
1408 (path: lodash.PropertyPath, object: any): any;
1409 }
1410 interface LodashGet1x1<TObject, TKey extends keyof TObject> {
1411 (object: TObject): TObject[TKey];
1412 (object: TObject | null | undefined): TObject[TKey] | undefined;
1413 }
1414 interface LodashGet1x2<TObject> {
1415 <TKey extends keyof TObject>(path: TKey | [TKey]): TObject[TKey];
1416 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): TObject[TKey1][TKey2];
1417 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3]): TObject[TKey1][TKey2][TKey3];
1418 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4]): TObject[TKey1][TKey2][TKey3][TKey4];
1419 }
1420 interface LodashGet2x2<TObject> {
1421 <TKey extends keyof TObject>(path: TKey | [TKey]): TObject[TKey] | undefined;
1422 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): TObject[TKey1][TKey2] | undefined;
1423 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3]): TObject[TKey1][TKey2][TKey3] | undefined;
1424 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4]): TObject[TKey1][TKey2][TKey3][TKey4] | undefined;
1425 }
1426 interface LodashGet3x1<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]> {
1427 (object: TObject): TObject[TKey1][TKey2];
1428 (object: TObject | null | undefined): TObject[TKey1][TKey2] | undefined;
1429 }
1430 interface LodashGet5x1<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]> {
1431 (object: TObject): TObject[TKey1][TKey2][TKey3];
1432 (object: TObject | null | undefined): TObject[TKey1][TKey2][TKey3] | undefined;
1433 }
1434 interface LodashGet7x1<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]> {
1435 (object: TObject): TObject[TKey1][TKey2][TKey3][TKey4];
1436 (object: TObject | null | undefined): TObject[TKey1][TKey2][TKey3][TKey4] | undefined;
1437 }
1438 interface LodashGet9x1 {
1439 <T>(object: lodash.NumericDictionary<T>): T;
1440 <T>(object: lodash.NumericDictionary<T> | null | undefined): T | undefined;
1441 }
1442 type LodashGet9x2<T> = (path: number) => T;
1443 type LodashGet10x2<T> = (path: number) => T | undefined;
1444 interface LodashGet11x1 {
1445 (object: null | undefined): undefined;
1446 (object: any): any;
1447 }
1448 type LodashGet11x2 = (path: lodash.PropertyPath) => undefined;
1449 type LodashGet12x2 = (path: lodash.PropertyPath) => any;
1450 interface LodashGetOr {
1451 <TDefault>(defaultValue: TDefault): LodashGetOr1x1<TDefault>;
1452 <TObject extends object, TKey extends keyof TObject>(defaultValue: lodash.__, path: TKey | [TKey]): LodashGetOr1x2<TObject, TKey>;
1453 <TObject extends object, TKey extends keyof TObject, TDefault>(defaultValue: TDefault, path: TKey | [TKey]): LodashGetOr1x3<TObject, TKey, TDefault>;
1454 <TObject extends object>(defaultValue: lodash.__, path: lodash.__, object: TObject | null | undefined): LodashGetOr1x4<TObject>;
1455 <TObject extends object, TDefault>(defaultValue: TDefault, path: lodash.__, object: TObject | null | undefined): LodashGetOr1x5<TObject, TDefault>;
1456 <TObject extends object, TKey extends keyof TObject>(defaultValue: lodash.__, path: TKey | [TKey], object: TObject | null | undefined): LodashGetOr1x6<TObject, TKey>;
1457 <TObject extends object, TKey extends keyof TObject, TDefault>(defaultValue: TDefault, path: TKey | [TKey], object: TObject | null | undefined): Exclude<TObject[TKey], undefined> | TDefault;
1458 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(defaultValue: lodash.__, path: [TKey1, TKey2]): LodashGetOr2x2<TObject, TKey1, TKey2>;
1459 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TDefault>(defaultValue: TDefault, path: [TKey1, TKey2]): LodashGetOr2x3<TObject, TKey1, TKey2, TDefault>;
1460 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(defaultValue: lodash.__, path: [TKey1, TKey2], object: TObject | null | undefined): LodashGetOr2x6<TObject, TKey1, TKey2>;
1461 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TDefault>(defaultValue: TDefault, path: [TKey1, TKey2], object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2], undefined> | TDefault;
1462 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(defaultValue: lodash.__, path: [TKey1, TKey2, TKey3]): LodashGetOr3x2<TObject, TKey1, TKey2, TKey3>;
1463 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TDefault>(defaultValue: TDefault, path: [TKey1, TKey2, TKey3]): LodashGetOr3x3<TObject, TKey1, TKey2, TKey3, TDefault>;
1464 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(defaultValue: lodash.__, path: [TKey1, TKey2, TKey3], object: TObject | null | undefined): LodashGetOr3x6<TObject, TKey1, TKey2, TKey3>;
1465 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TDefault>(defaultValue: TDefault, path: [TKey1, TKey2, TKey3], object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2][TKey3], undefined> | TDefault;
1466 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(defaultValue: lodash.__, path: [TKey1, TKey2, TKey3, TKey4]): LodashGetOr4x2<TObject, TKey1, TKey2, TKey3, TKey4>;
1467 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3], TDefault>(defaultValue: TDefault, path: [TKey1, TKey2, TKey3, TKey4]): LodashGetOr4x3<TObject, TKey1, TKey2, TKey3, TKey4, TDefault>;
1468 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(defaultValue: lodash.__, path: [TKey1, TKey2, TKey3, TKey4], object: TObject | null | undefined): LodashGetOr4x6<TObject, TKey1, TKey2, TKey3, TKey4>;
1469 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3], TDefault>(defaultValue: TDefault, path: [TKey1, TKey2, TKey3, TKey4], object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2][TKey3][TKey4], undefined> | TDefault;
1470 (defaultValue: lodash.__, path: number): LodashGetOr5x2;
1471 <TDefault>(defaultValue: TDefault, path: number): LodashGetOr5x3<TDefault>;
1472 <T>(defaultValue: lodash.__, path: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashGetOr5x4<T>;
1473 <T, TDefault>(defaultValue: TDefault, path: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashGetOr5x5<T, TDefault>;
1474 <T>(defaultValue: lodash.__, path: number, object: lodash.NumericDictionary<T> | null | undefined): LodashGetOr5x6<T>;
1475 <T, TDefault>(defaultValue: TDefault, path: number, object: lodash.NumericDictionary<T> | null | undefined): T | TDefault;
1476 (defaultValue: lodash.__, path: lodash.PropertyPath): LodashGetOr6x2;
1477 <TDefault>(defaultValue: TDefault, path: lodash.PropertyPath): LodashGetOr6x3<TDefault>;
1478 (defaultValue: lodash.__, path: lodash.__, object: null | undefined): LodashGetOr6x4;
1479 <TDefault>(defaultValue: TDefault, path: lodash.__, object: null | undefined): LodashGetOr6x5<TDefault>;
1480 (defaultValue: lodash.__, path: lodash.PropertyPath, object: null | undefined): LodashGetOr6x6;
1481 <TDefault>(defaultValue: TDefault, path: lodash.PropertyPath, object: null | undefined): TDefault;
1482 (defaultValue: any): LodashGetOr7x1;
1483 (defaultValue: any, path: lodash.PropertyPath): LodashGetOr7x3;
1484 (defaultValue: lodash.__, path: lodash.__, object: any): LodashGetOr7x4;
1485 (defaultValue: any, path: lodash.__, object: any): LodashGetOr7x5;
1486 (defaultValue: lodash.__, path: lodash.PropertyPath, object: any): LodashGetOr7x6;
1487 (defaultValue: any, path: lodash.PropertyPath, object: any): any;
1488 }
1489 interface LodashGetOr1x1<TDefault> {
1490 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey]): LodashGetOr1x3<TObject, TKey, TDefault>;
1491 <TObject extends object>(path: lodash.__, object: TObject | null | undefined): LodashGetOr1x5<TObject, TDefault>;
1492 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey], object: TObject | null | undefined): Exclude<TObject[TKey], undefined> | TDefault;
1493 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): LodashGetOr2x3<TObject, TKey1, TKey2, TDefault>;
1494 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2], object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2], undefined> | TDefault;
1495 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3]): LodashGetOr3x3<TObject, TKey1, TKey2, TKey3, TDefault>;
1496 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3], object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2][TKey3], undefined> | TDefault;
1497 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4]): LodashGetOr4x3<TObject, TKey1, TKey2, TKey3, TKey4, TDefault>;
1498 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4], object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2][TKey3][TKey4], undefined> | TDefault;
1499 (path: number): LodashGetOr5x3<TDefault>;
1500 <T>(path: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashGetOr5x5<T, TDefault>;
1501 <T>(path: number, object: lodash.NumericDictionary<T> | null | undefined): T | TDefault;
1502 (path: lodash.PropertyPath): LodashGetOr6x3<TDefault>;
1503 (path: lodash.__, object: null | undefined): LodashGetOr6x5<TDefault>;
1504 (path: lodash.PropertyPath, object: null | undefined): TDefault;
1505 }
1506 interface LodashGetOr1x2<TObject, TKey extends keyof TObject> {
1507 <TDefault>(defaultValue: TDefault): LodashGetOr1x3<TObject, TKey, TDefault>;
1508 (defaultValue: lodash.__, object: TObject | null | undefined): LodashGetOr1x6<TObject, TKey>;
1509 <TDefault>(defaultValue: TDefault, object: TObject | null | undefined): Exclude<TObject[TKey], undefined> | TDefault;
1510 }
1511 type LodashGetOr1x3<TObject, TKey extends keyof TObject, TDefault> = (object: TObject | null | undefined) => Exclude<TObject[TKey], undefined> | TDefault;
1512 interface LodashGetOr1x4<TObject> {
1513 <TDefault>(defaultValue: TDefault): LodashGetOr1x5<TObject, TDefault>;
1514 <TKey extends keyof TObject>(defaultValue: lodash.__, path: TKey | [TKey]): LodashGetOr1x6<TObject, TKey>;
1515 <TKey extends keyof TObject, TDefault>(defaultValue: TDefault, path: TKey | [TKey]): Exclude<TObject[TKey], undefined> | TDefault;
1516 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(defaultValue: lodash.__, path: [TKey1, TKey2]): LodashGetOr2x6<TObject, TKey1, TKey2>;
1517 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TDefault>(defaultValue: TDefault, path: [TKey1, TKey2]): Exclude<TObject[TKey1][TKey2], undefined> | TDefault;
1518 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(defaultValue: lodash.__, path: [TKey1, TKey2, TKey3]): LodashGetOr3x6<TObject, TKey1, TKey2, TKey3>;
1519 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TDefault>(defaultValue: TDefault, path: [TKey1, TKey2, TKey3]): Exclude<TObject[TKey1][TKey2][TKey3], undefined> | TDefault;
1520 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(defaultValue: lodash.__, path: [TKey1, TKey2, TKey3, TKey4]): LodashGetOr4x6<TObject, TKey1, TKey2, TKey3, TKey4>;
1521 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3], TDefault>(defaultValue: TDefault, path: [TKey1, TKey2, TKey3, TKey4]): Exclude<TObject[TKey1][TKey2][TKey3][TKey4], undefined> | TDefault;
1522 }
1523 interface LodashGetOr1x5<TObject, TDefault> {
1524 <TKey extends keyof TObject>(path: TKey | [TKey]): Exclude<TObject[TKey], undefined> | TDefault;
1525 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): Exclude<TObject[TKey1][TKey2], undefined> | TDefault;
1526 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3]): Exclude<TObject[TKey1][TKey2][TKey3], undefined> | TDefault;
1527 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4]): Exclude<TObject[TKey1][TKey2][TKey3][TKey4], undefined> | TDefault;
1528 }
1529 type LodashGetOr1x6<TObject, TKey extends keyof TObject> = <TDefault>(defaultValue: TDefault) => Exclude<TObject[TKey], undefined> | TDefault;
1530 interface LodashGetOr2x2<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]> {
1531 <TDefault>(defaultValue: TDefault): LodashGetOr2x3<TObject, TKey1, TKey2, TDefault>;
1532 (defaultValue: lodash.__, object: TObject | null | undefined): LodashGetOr2x6<TObject, TKey1, TKey2>;
1533 <TDefault>(defaultValue: TDefault, object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2], undefined> | TDefault;
1534 }
1535 type LodashGetOr2x3<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TDefault> = (object: TObject | null | undefined) => Exclude<TObject[TKey1][TKey2], undefined> | TDefault;
1536 type LodashGetOr2x6<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]> = <TDefault>(defaultValue: TDefault) => Exclude<TObject[TKey1][TKey2], undefined> | TDefault;
1537 interface LodashGetOr3x2<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]> {
1538 <TDefault>(defaultValue: TDefault): LodashGetOr3x3<TObject, TKey1, TKey2, TKey3, TDefault>;
1539 (defaultValue: lodash.__, object: TObject | null | undefined): LodashGetOr3x6<TObject, TKey1, TKey2, TKey3>;
1540 <TDefault>(defaultValue: TDefault, object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2][TKey3], undefined> | TDefault;
1541 }
1542 type LodashGetOr3x3<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TDefault> = (object: TObject | null | undefined) => Exclude<TObject[TKey1][TKey2][TKey3], undefined> | TDefault;
1543 type LodashGetOr3x6<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]> = <TDefault>(defaultValue: TDefault) => Exclude<TObject[TKey1][TKey2][TKey3], undefined> | TDefault;
1544 interface LodashGetOr4x2<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]> {
1545 <TDefault>(defaultValue: TDefault): LodashGetOr4x3<TObject, TKey1, TKey2, TKey3, TKey4, TDefault>;
1546 (defaultValue: lodash.__, object: TObject | null | undefined): LodashGetOr4x6<TObject, TKey1, TKey2, TKey3, TKey4>;
1547 <TDefault>(defaultValue: TDefault, object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2][TKey3][TKey4], undefined> | TDefault;
1548 }
1549 type LodashGetOr4x3<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3], TDefault> = (object: TObject | null | undefined) => Exclude<TObject[TKey1][TKey2][TKey3][TKey4], undefined> | TDefault;
1550 type LodashGetOr4x6<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]> = <TDefault>(defaultValue: TDefault) => Exclude<TObject[TKey1][TKey2][TKey3][TKey4], undefined> | TDefault;
1551 interface LodashGetOr5x2 {
1552 <TDefault>(defaultValue: TDefault): LodashGetOr5x3<TDefault>;
1553 <T>(defaultValue: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashGetOr5x6<T>;
1554 <T, TDefault>(defaultValue: TDefault, object: lodash.NumericDictionary<T> | null | undefined): T | TDefault;
1555 }
1556 type LodashGetOr5x3<TDefault> = <T>(object: lodash.NumericDictionary<T> | null | undefined) => T | TDefault;
1557 interface LodashGetOr5x4<T> {
1558 <TDefault>(defaultValue: TDefault): LodashGetOr5x5<T, TDefault>;
1559 (defaultValue: lodash.__, path: number): LodashGetOr5x6<T>;
1560 <TDefault>(defaultValue: TDefault, path: number): T | TDefault;
1561 }
1562 type LodashGetOr5x5<T, TDefault> = (path: number) => T | TDefault;
1563 type LodashGetOr5x6<T> = <TDefault>(defaultValue: TDefault) => T | TDefault;
1564 interface LodashGetOr6x2 {
1565 <TDefault>(defaultValue: TDefault): LodashGetOr6x3<TDefault>;
1566 (defaultValue: lodash.__, object: null | undefined): LodashGetOr6x6;
1567 <TDefault>(defaultValue: TDefault, object: null | undefined): TDefault;
1568 (defaultValue: any): LodashGetOr7x3;
1569 (defaultValue: lodash.__, object: any): LodashGetOr7x6;
1570 (defaultValue: any, object: any): any;
1571 }
1572 type LodashGetOr6x3<TDefault> = (object: null | undefined) => TDefault;
1573 interface LodashGetOr6x4 {
1574 <TDefault>(defaultValue: TDefault): LodashGetOr6x5<TDefault>;
1575 (defaultValue: lodash.__, path: lodash.PropertyPath): LodashGetOr6x6;
1576 <TDefault>(defaultValue: TDefault, path: lodash.PropertyPath): TDefault;
1577 }
1578 type LodashGetOr6x5<TDefault> = (path: lodash.PropertyPath) => TDefault;
1579 type LodashGetOr6x6 = <TDefault>(defaultValue: TDefault) => TDefault;
1580 interface LodashGetOr7x1 {
1581 (path: lodash.PropertyPath): LodashGetOr7x3;
1582 (path: lodash.__, object: any): LodashGetOr7x5;
1583 (path: lodash.PropertyPath, object: any): any;
1584 }
1585 type LodashGetOr7x3 = (object: any) => any;
1586 interface LodashGetOr7x4 {
1587 (defaultValue: any): LodashGetOr7x5;
1588 (defaultValue: lodash.__, path: lodash.PropertyPath): LodashGetOr7x6;
1589 (defaultValue: any, path: lodash.PropertyPath): any;
1590 }
1591 type LodashGetOr7x5 = (path: lodash.PropertyPath) => any;
1592 type LodashGetOr7x6 = (defaultValue: any) => any;
1593 interface LodashGroupBy {
1594 <T>(iteratee: lodash.ValueIteratee<T>): LodashGroupBy1x1<T>;
1595 <T>(iteratee: lodash.__, collection: lodash.List<T> | null | undefined): LodashGroupBy1x2<T>;
1596 <T>(iteratee: lodash.ValueIteratee<T>, collection: lodash.List<T> | null | undefined): lodash.Dictionary<T[]>;
1597 <T extends object>(iteratee: lodash.__, collection: T | null | undefined): LodashGroupBy2x2<T>;
1598 <T extends object>(iteratee: lodash.ValueIteratee<T[keyof T]>, collection: T | null | undefined): lodash.Dictionary<Array<T[keyof T]>>;
1599 }
1600 type LodashGroupBy1x1<T> = (collection: lodash.List<T> | object | null | undefined) => lodash.Dictionary<T[]>;
1601 type LodashGroupBy1x2<T> = (iteratee: lodash.ValueIteratee<T>) => lodash.Dictionary<T[]>;
1602 type LodashGroupBy2x2<T> = (iteratee: lodash.ValueIteratee<T[keyof T]>) => lodash.Dictionary<Array<T[keyof T]>>;
1603 interface LodashGt {
1604 (value: any): LodashGt1x1;
1605 (value: lodash.__, other: any): LodashGt1x2;
1606 (value: any, other: any): boolean;
1607 }
1608 type LodashGt1x1 = (other: any) => boolean;
1609 type LodashGt1x2 = (value: any) => boolean;
1610 interface LodashGte {
1611 (value: any): LodashGte1x1;
1612 (value: lodash.__, other: any): LodashGte1x2;
1613 (value: any, other: any): boolean;
1614 }
1615 type LodashGte1x1 = (other: any) => boolean;
1616 type LodashGte1x2 = (value: any) => boolean;
1617 interface LodashHas {
1618 (path: lodash.PropertyPath): LodashHas1x1;
1619 <T>(path: lodash.__, object: T): LodashHas1x2;
1620 <T>(path: lodash.PropertyPath, object: T): boolean;
1621 }
1622 type LodashHas1x1 = <T>(object: T) => boolean;
1623 type LodashHas1x2 = (path: lodash.PropertyPath) => boolean;
1624 interface LodashHasIn {
1625 (path: lodash.PropertyPath): LodashHasIn1x1;
1626 <T>(path: lodash.__, object: T): LodashHasIn1x2;
1627 <T>(path: lodash.PropertyPath, object: T): boolean;
1628 }
1629 type LodashHasIn1x1 = <T>(object: T) => boolean;
1630 type LodashHasIn1x2 = (path: lodash.PropertyPath) => boolean;
1631 interface LodashIdentity {
1632 <T>(value: T): T;
1633 (): undefined;
1634 }
1635 interface LodashIncludes {
1636 <T>(target: T): LodashIncludes1x1<T>;
1637 <T>(target: lodash.__, collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): LodashIncludes1x2<T>;
1638 <T>(target: T, collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): boolean;
1639 }
1640 type LodashIncludes1x1<T> = (collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined) => boolean;
1641 type LodashIncludes1x2<T> = (target: T) => boolean;
1642 interface LodashIncludesFrom {
1643 <T>(target: T): LodashIncludesFrom1x1<T>;
1644 (target: lodash.__, fromIndex: number): LodashIncludesFrom1x2;
1645 <T>(target: T, fromIndex: number): LodashIncludesFrom1x3<T>;
1646 <T>(target: lodash.__, fromIndex: lodash.__, collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): LodashIncludesFrom1x4<T>;
1647 <T>(target: T, fromIndex: lodash.__, collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): LodashIncludesFrom1x5;
1648 <T>(target: lodash.__, fromIndex: number, collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): LodashIncludesFrom1x6<T>;
1649 <T>(target: T, fromIndex: number, collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): boolean;
1650 }
1651 interface LodashIncludesFrom1x1<T> {
1652 (fromIndex: number): LodashIncludesFrom1x3<T>;
1653 (fromIndex: lodash.__, collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): LodashIncludesFrom1x5;
1654 (fromIndex: number, collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): boolean;
1655 }
1656 interface LodashIncludesFrom1x2 {
1657 <T>(target: T): LodashIncludesFrom1x3<T>;
1658 <T>(target: lodash.__, collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): LodashIncludesFrom1x6<T>;
1659 <T>(target: T, collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): boolean;
1660 }
1661 type LodashIncludesFrom1x3<T> = (collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined) => boolean;
1662 interface LodashIncludesFrom1x4<T> {
1663 (target: T): LodashIncludesFrom1x5;
1664 (target: lodash.__, fromIndex: number): LodashIncludesFrom1x6<T>;
1665 (target: T, fromIndex: number): boolean;
1666 }
1667 type LodashIncludesFrom1x5 = (fromIndex: number) => boolean;
1668 type LodashIncludesFrom1x6<T> = (target: T) => boolean;
1669 interface LodashKeyBy {
1670 <T>(iteratee: lodash.ValueIterateeCustom<T, lodash.PropertyName>): LodashKeyBy1x1<T>;
1671 <T>(iteratee: lodash.__, collection: lodash.List<T> | null | undefined): LodashKeyBy1x2<T>;
1672 <T>(iteratee: lodash.ValueIterateeCustom<T, lodash.PropertyName>, collection: lodash.List<T> | null | undefined): lodash.Dictionary<T>;
1673 <T extends object>(iteratee: lodash.__, collection: T | null | undefined): LodashKeyBy2x2<T>;
1674 <T extends object>(iteratee: lodash.ValueIterateeCustom<T[keyof T], lodash.PropertyName>, collection: T | null | undefined): lodash.Dictionary<T[keyof T]>;
1675 }
1676 type LodashKeyBy1x1<T> = (collection: lodash.List<T> | object | null | undefined) => lodash.Dictionary<T>;
1677 type LodashKeyBy1x2<T> = (iteratee: lodash.ValueIterateeCustom<T, lodash.PropertyName>) => lodash.Dictionary<T>;
1678 type LodashKeyBy2x2<T> = (iteratee: lodash.ValueIterateeCustom<T[keyof T], lodash.PropertyName>) => lodash.Dictionary<T[keyof T]>;
1679 interface LodashIndexOf {
1680 <T>(value: T): LodashIndexOf1x1<T>;
1681 <T>(value: lodash.__, array: lodash.List<T> | null | undefined): LodashIndexOf1x2<T>;
1682 <T>(value: T, array: lodash.List<T> | null | undefined): number;
1683 }
1684 type LodashIndexOf1x1<T> = (array: lodash.List<T> | null | undefined) => number;
1685 type LodashIndexOf1x2<T> = (value: T) => number;
1686 interface LodashIndexOfFrom {
1687 <T>(value: T): LodashIndexOfFrom1x1<T>;
1688 (value: lodash.__, fromIndex: number): LodashIndexOfFrom1x2;
1689 <T>(value: T, fromIndex: number): LodashIndexOfFrom1x3<T>;
1690 <T>(value: lodash.__, fromIndex: lodash.__, array: lodash.List<T> | null | undefined): LodashIndexOfFrom1x4<T>;
1691 <T>(value: T, fromIndex: lodash.__, array: lodash.List<T> | null | undefined): LodashIndexOfFrom1x5;
1692 <T>(value: lodash.__, fromIndex: number, array: lodash.List<T> | null | undefined): LodashIndexOfFrom1x6<T>;
1693 <T>(value: T, fromIndex: number, array: lodash.List<T> | null | undefined): number;
1694 }
1695 interface LodashIndexOfFrom1x1<T> {
1696 (fromIndex: number): LodashIndexOfFrom1x3<T>;
1697 (fromIndex: lodash.__, array: lodash.List<T> | null | undefined): LodashIndexOfFrom1x5;
1698 (fromIndex: number, array: lodash.List<T> | null | undefined): number;
1699 }
1700 interface LodashIndexOfFrom1x2 {
1701 <T>(value: T): LodashIndexOfFrom1x3<T>;
1702 <T>(value: lodash.__, array: lodash.List<T> | null | undefined): LodashIndexOfFrom1x6<T>;
1703 <T>(value: T, array: lodash.List<T> | null | undefined): number;
1704 }
1705 type LodashIndexOfFrom1x3<T> = (array: lodash.List<T> | null | undefined) => number;
1706 interface LodashIndexOfFrom1x4<T> {
1707 (value: T): LodashIndexOfFrom1x5;
1708 (value: lodash.__, fromIndex: number): LodashIndexOfFrom1x6<T>;
1709 (value: T, fromIndex: number): number;
1710 }
1711 type LodashIndexOfFrom1x5 = (fromIndex: number) => number;
1712 type LodashIndexOfFrom1x6<T> = (value: T) => number;
1713 type LodashInitial = <T>(array: lodash.List<T> | null | undefined) => T[];
1714 interface LodashInRange {
1715 (start: number): LodashInRange1x1;
1716 (start: lodash.__, end: number): LodashInRange1x2;
1717 (start: number, end: number): LodashInRange1x3;
1718 (start: lodash.__, end: lodash.__, n: number): LodashInRange1x4;
1719 (start: number, end: lodash.__, n: number): LodashInRange1x5;
1720 (start: lodash.__, end: number, n: number): LodashInRange1x6;
1721 (start: number, end: number, n: number): boolean;
1722 }
1723 interface LodashInRange1x1 {
1724 (end: number): LodashInRange1x3;
1725 (end: lodash.__, n: number): LodashInRange1x5;
1726 (end: number, n: number): boolean;
1727 }
1728 interface LodashInRange1x2 {
1729 (start: number): LodashInRange1x3;
1730 (start: lodash.__, n: number): LodashInRange1x6;
1731 (start: number, n: number): boolean;
1732 }
1733 type LodashInRange1x3 = (n: number) => boolean;
1734 interface LodashInRange1x4 {
1735 (start: number): LodashInRange1x5;
1736 (start: lodash.__, end: number): LodashInRange1x6;
1737 (start: number, end: number): boolean;
1738 }
1739 type LodashInRange1x5 = (end: number) => boolean;
1740 type LodashInRange1x6 = (start: number) => boolean;
1741 interface LodashIntersection {
1742 <T>(arrays2: lodash.List<T> | null | undefined): LodashIntersection1x1<T>;
1743 <T>(arrays2: lodash.__, arrays: lodash.List<T> | null | undefined): LodashIntersection1x2<T>;
1744 <T>(arrays2: lodash.List<T> | null | undefined, arrays: lodash.List<T> | null | undefined): T[];
1745 }
1746 type LodashIntersection1x1<T> = (arrays: lodash.List<T> | null | undefined) => T[];
1747 type LodashIntersection1x2<T> = (arrays2: lodash.List<T> | null | undefined) => T[];
1748 interface LodashIntersectionBy {
1749 <T1, T2>(iteratee: lodash.ValueIteratee<T1 | T2>): LodashIntersectionBy1x1<T1, T2>;
1750 <T1>(iteratee: lodash.__, array: lodash.List<T1> | null): LodashIntersectionBy1x2<T1>;
1751 <T1, T2>(iteratee: lodash.ValueIteratee<T1 | T2>, array: lodash.List<T1> | null): LodashIntersectionBy1x3<T1, T2>;
1752 <T2>(iteratee: lodash.__, array: lodash.__, values: lodash.List<T2>): LodashIntersectionBy1x4<T2>;
1753 <T1, T2>(iteratee: lodash.ValueIteratee<T1 | T2>, array: lodash.__, values: lodash.List<T2>): LodashIntersectionBy1x5<T1>;
1754 <T1, T2>(iteratee: lodash.__, array: lodash.List<T1> | null, values: lodash.List<T2>): LodashIntersectionBy1x6<T1, T2>;
1755 <T1, T2>(iteratee: lodash.ValueIteratee<T1 | T2>, array: lodash.List<T1> | null, values: lodash.List<T2>): T1[];
1756 }
1757 interface LodashIntersectionBy1x1<T1, T2> {
1758 (array: lodash.List<T1> | null): LodashIntersectionBy1x3<T1, T2>;
1759 (array: lodash.__, values: lodash.List<T2>): LodashIntersectionBy1x5<T1>;
1760 (array: lodash.List<T1> | null, values: lodash.List<T2>): T1[];
1761 }
1762 interface LodashIntersectionBy1x2<T1> {
1763 <T2>(iteratee: lodash.ValueIteratee<T1 | T2>): LodashIntersectionBy1x3<T1, T2>;
1764 <T2>(iteratee: lodash.__, values: lodash.List<T2>): LodashIntersectionBy1x6<T1, T2>;
1765 <T2>(iteratee: lodash.ValueIteratee<T1 | T2>, values: lodash.List<T2>): T1[];
1766 }
1767 type LodashIntersectionBy1x3<T1, T2> = (values: lodash.List<T2>) => T1[];
1768 interface LodashIntersectionBy1x4<T2> {
1769 <T1>(iteratee: lodash.ValueIteratee<T1 | T2>): LodashIntersectionBy1x5<T1>;
1770 <T1>(iteratee: lodash.__, array: lodash.List<T1> | null): LodashIntersectionBy1x6<T1, T2>;
1771 <T1>(iteratee: lodash.ValueIteratee<T1 | T2>, array: lodash.List<T1> | null): T1[];
1772 }
1773 type LodashIntersectionBy1x5<T1> = (array: lodash.List<T1> | null) => T1[];
1774 type LodashIntersectionBy1x6<T1, T2> = (iteratee: lodash.ValueIteratee<T1 | T2>) => T1[];
1775 interface LodashIntersectionWith {
1776 <T1, T2>(comparator: lodash.Comparator2<T1, T2>): LodashIntersectionWith1x1<T1, T2>;
1777 <T1>(comparator: lodash.__, array: lodash.List<T1> | null | undefined): LodashIntersectionWith1x2<T1>;
1778 <T1, T2>(comparator: lodash.Comparator2<T1, T2>, array: lodash.List<T1> | null | undefined): LodashIntersectionWith1x3<T1, T2>;
1779 <T2>(comparator: lodash.__, array: lodash.__, values: lodash.List<T2>): LodashIntersectionWith1x4<T2>;
1780 <T1, T2>(comparator: lodash.Comparator2<T1, T2>, array: lodash.__, values: lodash.List<T2>): LodashIntersectionWith1x5<T1>;
1781 <T1, T2>(comparator: lodash.__, array: lodash.List<T1> | null | undefined, values: lodash.List<T2>): LodashIntersectionWith1x6<T1, T2>;
1782 <T1, T2>(comparator: lodash.Comparator2<T1, T2>, array: lodash.List<T1> | null | undefined, values: lodash.List<T2>): T1[];
1783 }
1784 interface LodashIntersectionWith1x1<T1, T2> {
1785 (array: lodash.List<T1> | null | undefined): LodashIntersectionWith1x3<T1, T2>;
1786 (array: lodash.__, values: lodash.List<T2>): LodashIntersectionWith1x5<T1>;
1787 (array: lodash.List<T1> | null | undefined, values: lodash.List<T2>): T1[];
1788 }
1789 interface LodashIntersectionWith1x2<T1> {
1790 <T2>(comparator: lodash.Comparator2<T1, T2>): LodashIntersectionWith1x3<T1, T2>;
1791 <T2>(comparator: lodash.__, values: lodash.List<T2>): LodashIntersectionWith1x6<T1, T2>;
1792 <T2>(comparator: lodash.Comparator2<T1, T2>, values: lodash.List<T2>): T1[];
1793 }
1794 type LodashIntersectionWith1x3<T1, T2> = (values: lodash.List<T2>) => T1[];
1795 interface LodashIntersectionWith1x4<T2> {
1796 <T1>(comparator: lodash.Comparator2<T1, T2>): LodashIntersectionWith1x5<T1>;
1797 <T1>(comparator: lodash.__, array: lodash.List<T1> | null | undefined): LodashIntersectionWith1x6<T1, T2>;
1798 <T1>(comparator: lodash.Comparator2<T1, T2>, array: lodash.List<T1> | null | undefined): T1[];
1799 }
1800 type LodashIntersectionWith1x5<T1> = (array: lodash.List<T1> | null | undefined) => T1[];
1801 type LodashIntersectionWith1x6<T1, T2> = (comparator: lodash.Comparator2<T1, T2>) => T1[];
1802 type LodashInvert = (object: object) => lodash.Dictionary<string>;
1803 interface LodashInvertBy {
1804 <T>(interatee: lodash.ValueIteratee<T>): LodashInvertBy1x1<T>;
1805 <T>(interatee: lodash.__, object: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): LodashInvertBy1x2<T>;
1806 <T>(interatee: lodash.ValueIteratee<T>, object: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): lodash.Dictionary<string[]>;
1807 <T extends object>(interatee: lodash.__, object: T | null | undefined): LodashInvertBy2x2<T>;
1808 <T extends object>(interatee: lodash.ValueIteratee<T[keyof T]>, object: T | null | undefined): lodash.Dictionary<string[]>;
1809 }
1810 type LodashInvertBy1x1<T> = (object: lodash.Dictionary<T> | lodash.NumericDictionary<T> | object | null | undefined) => lodash.Dictionary<string[]>;
1811 type LodashInvertBy1x2<T> = (interatee: lodash.ValueIteratee<T>) => lodash.Dictionary<string[]>;
1812 type LodashInvertBy2x2<T> = (interatee: lodash.ValueIteratee<T[keyof T]>) => lodash.Dictionary<string[]>;
1813 interface LodashInvoke {
1814 (path: lodash.PropertyPath): LodashInvoke1x1;
1815 (path: lodash.__, object: any): LodashInvoke1x2;
1816 (path: lodash.PropertyPath, object: any): any;
1817 }
1818 type LodashInvoke1x1 = (object: any) => any;
1819 type LodashInvoke1x2 = (path: lodash.PropertyPath) => any;
1820 interface LodashInvokeArgs {
1821 (path: lodash.PropertyPath): LodashInvokeArgs1x1;
1822 (path: lodash.__, args: ReadonlyArray<any>): LodashInvokeArgs1x2;
1823 (path: lodash.PropertyPath, args: ReadonlyArray<any>): LodashInvokeArgs1x3;
1824 (path: lodash.__, args: lodash.__, object: any): LodashInvokeArgs1x4;
1825 (path: lodash.PropertyPath, args: lodash.__, object: any): LodashInvokeArgs1x5;
1826 (path: lodash.__, args: ReadonlyArray<any>, object: any): LodashInvokeArgs1x6;
1827 (path: lodash.PropertyPath, args: ReadonlyArray<any>, object: any): any;
1828 }
1829 interface LodashInvokeArgs1x1 {
1830 (args: ReadonlyArray<any>): LodashInvokeArgs1x3;
1831 (args: lodash.__, object: any): LodashInvokeArgs1x5;
1832 (args: ReadonlyArray<any>, object: any): any;
1833 }
1834 interface LodashInvokeArgs1x2 {
1835 (path: lodash.PropertyPath): LodashInvokeArgs1x3;
1836 (path: lodash.__, object: any): LodashInvokeArgs1x6;
1837 (path: lodash.PropertyPath, object: any): any;
1838 }
1839 type LodashInvokeArgs1x3 = (object: any) => any;
1840 interface LodashInvokeArgs1x4 {
1841 (path: lodash.PropertyPath): LodashInvokeArgs1x5;
1842 (path: lodash.__, args: ReadonlyArray<any>): LodashInvokeArgs1x6;
1843 (path: lodash.PropertyPath, args: ReadonlyArray<any>): any;
1844 }
1845 type LodashInvokeArgs1x5 = (args: ReadonlyArray<any>) => any;
1846 type LodashInvokeArgs1x6 = (path: lodash.PropertyPath) => any;
1847 interface LodashInvokeArgsMap {
1848 (methodName: string): LodashInvokeArgsMap1x1;
1849 (methodNameOrMethod: lodash.__, args: ReadonlyArray<any>): LodashInvokeArgsMap1x2;
1850 (methodName: string, args: ReadonlyArray<any>): LodashInvokeArgsMap1x3;
1851 (methodNameOrMethod: lodash.__, args: lodash.__, collection: object | null | undefined): LodashInvokeArgsMap1x4;
1852 (methodName: string, args: lodash.__, collection: object | null | undefined): LodashInvokeArgsMap1x5;
1853 (methodNameOrMethod: lodash.__, args: ReadonlyArray<any>, collection: object | null | undefined): LodashInvokeArgsMap1x6;
1854 (methodName: string, args: ReadonlyArray<any>, collection: object | null | undefined): any[];
1855 <TResult>(method: (...args: any[]) => TResult): LodashInvokeArgsMap2x1<TResult>;
1856 <TResult>(method: (...args: any[]) => TResult, args: ReadonlyArray<any>): LodashInvokeArgsMap2x3<TResult>;
1857 <TResult>(method: (...args: any[]) => TResult, args: lodash.__, collection: object | null | undefined): LodashInvokeArgsMap2x5<TResult>;
1858 <TResult>(method: (...args: any[]) => TResult, args: ReadonlyArray<any>, collection: object | null | undefined): TResult[];
1859 }
1860 interface LodashInvokeArgsMap1x1 {
1861 (args: ReadonlyArray<any>): LodashInvokeArgsMap1x3;
1862 (args: lodash.__, collection: object | null | undefined): LodashInvokeArgsMap1x5;
1863 (args: ReadonlyArray<any>, collection: object | null | undefined): any[];
1864 }
1865 interface LodashInvokeArgsMap1x2 {
1866 (methodName: string): LodashInvokeArgsMap1x3;
1867 (methodNameOrMethod: lodash.__, collection: object | null | undefined): LodashInvokeArgsMap1x6;
1868 (methodName: string, collection: object | null | undefined): any[];
1869 <TResult>(method: (...args: any[]) => TResult): LodashInvokeArgsMap2x3<TResult>;
1870 <TResult>(method: (...args: any[]) => TResult, collection: object | null | undefined): TResult[];
1871 }
1872 type LodashInvokeArgsMap1x3 = (collection: object | null | undefined) => any[];
1873 interface LodashInvokeArgsMap1x4 {
1874 (methodName: string): LodashInvokeArgsMap1x5;
1875 (methodNameOrMethod: lodash.__, args: ReadonlyArray<any>): LodashInvokeArgsMap1x6;
1876 (methodName: string, args: ReadonlyArray<any>): any[];
1877 <TResult>(method: (...args: any[]) => TResult): LodashInvokeArgsMap2x5<TResult>;
1878 <TResult>(method: (...args: any[]) => TResult, args: ReadonlyArray<any>): TResult[];
1879 }
1880 type LodashInvokeArgsMap1x5 = (args: ReadonlyArray<any>) => any[];
1881 interface LodashInvokeArgsMap1x6 {
1882 (methodName: string): any[];
1883 <TResult>(method: (...args: any[]) => TResult): TResult[];
1884 }
1885 interface LodashInvokeArgsMap2x1<TResult> {
1886 (args: ReadonlyArray<any>): LodashInvokeArgsMap2x3<TResult>;
1887 (args: lodash.__, collection: object | null | undefined): LodashInvokeArgsMap2x5<TResult>;
1888 (args: ReadonlyArray<any>, collection: object | null | undefined): TResult[];
1889 }
1890 type LodashInvokeArgsMap2x3<TResult> = (collection: object | null | undefined) => TResult[];
1891 type LodashInvokeArgsMap2x5<TResult> = (args: ReadonlyArray<any>) => TResult[];
1892 interface LodashInvokeMap {
1893 (methodName: string): LodashInvokeMap1x1;
1894 (methodNameOrMethod: lodash.__, collection: object | null | undefined): LodashInvokeMap1x2;
1895 (methodName: string, collection: object | null | undefined): any[];
1896 <TResult>(method: (...args: any[]) => TResult): LodashInvokeMap2x1<TResult>;
1897 <TResult>(method: (...args: any[]) => TResult, collection: object | null | undefined): TResult[];
1898 }
1899 type LodashInvokeMap1x1 = (collection: object | null | undefined) => any[];
1900 interface LodashInvokeMap1x2 {
1901 (methodName: string): any[];
1902 <TResult>(method: (...args: any[]) => TResult): TResult[];
1903 }
1904 type LodashInvokeMap2x1<TResult> = (collection: object | null | undefined) => TResult[];
1905 type LodashIsArguments = (value: any) => value is IArguments;
1906 type LodashIsArray = (value: any) => value is any[];
1907 type LodashIsArrayBuffer = (value: any) => value is ArrayBuffer;
1908 interface LodashIsArrayLike {
1909 <T extends { __lodashAnyHack: any }>(t: T): boolean;
1910 (value: ((...args: any[]) => any) | null | undefined): value is never;
1911 (value: any): value is { length: number };
1912 }
1913 interface LodashIsArrayLikeObject {
1914 <T extends { __lodashAnyHack: any }>(value: T): boolean;
1915 (value: ((...args: any[]) => any) | lodash.FunctionBase | string | boolean | number | null | undefined): value is never;
1916 (value: any): value is object & { length: number };
1917 }
1918 type LodashIsBoolean = (value: any) => value is boolean;
1919 type LodashIsBuffer = (value: any) => boolean;
1920 type LodashIsDate = (value: any) => value is Date;
1921 type LodashIsElement = (value: any) => boolean;
1922 type LodashIsEmpty = (value: any) => boolean;
1923 interface LodashIsEqualWith {
1924 (customizer: lodash.IsEqualCustomizer): LodashIsEqualWith1x1;
1925 (customizer: lodash.__, value: any): LodashIsEqualWith1x2;
1926 (customizer: lodash.IsEqualCustomizer, value: any): LodashIsEqualWith1x3;
1927 (customizer: lodash.__, value: lodash.__, other: any): LodashIsEqualWith1x4;
1928 (customizer: lodash.IsEqualCustomizer, value: lodash.__, other: any): LodashIsEqualWith1x5;
1929 (customizer: lodash.__, value: any, other: any): LodashIsEqualWith1x6;
1930 (customizer: lodash.IsEqualCustomizer, value: any, other: any): boolean;
1931 }
1932 interface LodashIsEqualWith1x1 {
1933 (value: any): LodashIsEqualWith1x3;
1934 (value: lodash.__, other: any): LodashIsEqualWith1x5;
1935 (value: any, other: any): boolean;
1936 }
1937 interface LodashIsEqualWith1x2 {
1938 (customizer: lodash.IsEqualCustomizer): LodashIsEqualWith1x3;
1939 (customizer: lodash.__, other: any): LodashIsEqualWith1x6;
1940 (customizer: lodash.IsEqualCustomizer, other: any): boolean;
1941 }
1942 type LodashIsEqualWith1x3 = (other: any) => boolean;
1943 interface LodashIsEqualWith1x4 {
1944 (customizer: lodash.IsEqualCustomizer): LodashIsEqualWith1x5;
1945 (customizer: lodash.__, value: any): LodashIsEqualWith1x6;
1946 (customizer: lodash.IsEqualCustomizer, value: any): boolean;
1947 }
1948 type LodashIsEqualWith1x5 = (value: any) => boolean;
1949 type LodashIsEqualWith1x6 = (customizer: lodash.IsEqualCustomizer) => boolean;
1950 type LodashIsError = (value: any) => value is Error;
1951 type LodashIsFinite = (value: any) => boolean;
1952 type LodashIsFunction = (value: any) => value is (...args: any[]) => any;
1953 type LodashIsInteger = (value: any) => boolean;
1954 type LodashIsLength = (value: any) => boolean;
1955 type LodashIsMap = (value: any) => value is Map<any, any>;
1956 interface LodashIsMatch {
1957 (source: object): LodashIsMatch1x1;
1958 (source: lodash.__, object: object): LodashIsMatch1x2;
1959 (source: object, object: object): boolean;
1960 }
1961 type LodashIsMatch1x1 = (object: object) => boolean;
1962 type LodashIsMatch1x2 = (source: object) => boolean;
1963 interface LodashIsMatchWith {
1964 (customizer: lodash.isMatchWithCustomizer): LodashIsMatchWith1x1;
1965 (customizer: lodash.__, source: object): LodashIsMatchWith1x2;
1966 (customizer: lodash.isMatchWithCustomizer, source: object): LodashIsMatchWith1x3;
1967 (customizer: lodash.__, source: lodash.__, object: object): LodashIsMatchWith1x4;
1968 (customizer: lodash.isMatchWithCustomizer, source: lodash.__, object: object): LodashIsMatchWith1x5;
1969 (customizer: lodash.__, source: object, object: object): LodashIsMatchWith1x6;
1970 (customizer: lodash.isMatchWithCustomizer, source: object, object: object): boolean;
1971 }
1972 interface LodashIsMatchWith1x1 {
1973 (source: object): LodashIsMatchWith1x3;
1974 (source: lodash.__, object: object): LodashIsMatchWith1x5;
1975 (source: object, object: object): boolean;
1976 }
1977 interface LodashIsMatchWith1x2 {
1978 (customizer: lodash.isMatchWithCustomizer): LodashIsMatchWith1x3;
1979 (customizer: lodash.__, object: object): LodashIsMatchWith1x6;
1980 (customizer: lodash.isMatchWithCustomizer, object: object): boolean;
1981 }
1982 type LodashIsMatchWith1x3 = (object: object) => boolean;
1983 interface LodashIsMatchWith1x4 {
1984 (customizer: lodash.isMatchWithCustomizer): LodashIsMatchWith1x5;
1985 (customizer: lodash.__, source: object): LodashIsMatchWith1x6;
1986 (customizer: lodash.isMatchWithCustomizer, source: object): boolean;
1987 }
1988 type LodashIsMatchWith1x5 = (source: object) => boolean;
1989 type LodashIsMatchWith1x6 = (customizer: lodash.isMatchWithCustomizer) => boolean;
1990 type LodashIsNaN = (value: any) => boolean;
1991 type LodashIsNative = (value: any) => value is (...args: any[]) => any;
1992 type LodashIsNil = (value: any) => value is null | undefined;
1993 type LodashIsNull = (value: any) => value is null;
1994 type LodashIsNumber = (value: any) => value is number;
1995 type LodashIsObject = (value: any) => value is object;
1996 type LodashIsObjectLike = (value: any) => boolean;
1997 type LodashIsPlainObject = (value: any) => boolean;
1998 type LodashIsRegExp = (value: any) => value is RegExp;
1999 type LodashIsSafeInteger = (value: any) => boolean;
2000 type LodashIsSet = (value: any) => value is Set<any>;
2001 type LodashIsString = (value: any) => value is string;
2002 type LodashIsSymbol = (value: any) => value is symbol;
2003 type LodashIsTypedArray = (value: any) => boolean;
2004 type LodashIsUndefined = (value: any) => value is undefined;
2005 type LodashIsWeakMap = (value: any) => value is WeakMap<object, any>;
2006 type LodashIsWeakSet = (value: any) => value is WeakSet<object>;
2007 interface LodashIteratee {
2008 <TFunction extends (...args: any[]) => any>(func: TFunction): TFunction;
2009 (func: string | object): (...args: any[]) => any;
2010 }
2011 interface LodashJoin {
2012 (separator: string): LodashJoin1x1;
2013 (separator: lodash.__, array: lodash.List<any> | null | undefined): LodashJoin1x2;
2014 (separator: string, array: lodash.List<any> | null | undefined): string;
2015 }
2016 type LodashJoin1x1 = (array: lodash.List<any> | null | undefined) => string;
2017 type LodashJoin1x2 = (separator: string) => string;
2018 type LodashOver = <TResult>(iteratees: lodash.Many<(...args: any[]) => TResult>) => (...args: any[]) => TResult[];
2019 type LodashKebabCase = (string: string) => string;
2020 type LodashKeys = (object: any) => string[];
2021 type LodashKeysIn = (object: any) => string[];
2022 type LodashLast = <T>(array: lodash.List<T> | null | undefined) => T | undefined;
2023 interface LodashLastIndexOf {
2024 <T>(value: T): LodashLastIndexOf1x1<T>;
2025 <T>(value: lodash.__, array: lodash.List<T> | null | undefined): LodashLastIndexOf1x2<T>;
2026 <T>(value: T, array: lodash.List<T> | null | undefined): number;
2027 }
2028 type LodashLastIndexOf1x1<T> = (array: lodash.List<T> | null | undefined) => number;
2029 type LodashLastIndexOf1x2<T> = (value: T) => number;
2030 interface LodashLastIndexOfFrom {
2031 <T>(value: T): LodashLastIndexOfFrom1x1<T>;
2032 (value: lodash.__, fromIndex: true|number): LodashLastIndexOfFrom1x2;
2033 <T>(value: T, fromIndex: true|number): LodashLastIndexOfFrom1x3<T>;
2034 <T>(value: lodash.__, fromIndex: lodash.__, array: lodash.List<T> | null | undefined): LodashLastIndexOfFrom1x4<T>;
2035 <T>(value: T, fromIndex: lodash.__, array: lodash.List<T> | null | undefined): LodashLastIndexOfFrom1x5;
2036 <T>(value: lodash.__, fromIndex: true|number, array: lodash.List<T> | null | undefined): LodashLastIndexOfFrom1x6<T>;
2037 <T>(value: T, fromIndex: true|number, array: lodash.List<T> | null | undefined): number;
2038 }
2039 interface LodashLastIndexOfFrom1x1<T> {
2040 (fromIndex: true|number): LodashLastIndexOfFrom1x3<T>;
2041 (fromIndex: lodash.__, array: lodash.List<T> | null | undefined): LodashLastIndexOfFrom1x5;
2042 (fromIndex: true|number, array: lodash.List<T> | null | undefined): number;
2043 }
2044 interface LodashLastIndexOfFrom1x2 {
2045 <T>(value: T): LodashLastIndexOfFrom1x3<T>;
2046 <T>(value: lodash.__, array: lodash.List<T> | null | undefined): LodashLastIndexOfFrom1x6<T>;
2047 <T>(value: T, array: lodash.List<T> | null | undefined): number;
2048 }
2049 type LodashLastIndexOfFrom1x3<T> = (array: lodash.List<T> | null | undefined) => number;
2050 interface LodashLastIndexOfFrom1x4<T> {
2051 (value: T): LodashLastIndexOfFrom1x5;
2052 (value: lodash.__, fromIndex: true|number): LodashLastIndexOfFrom1x6<T>;
2053 (value: T, fromIndex: true|number): number;
2054 }
2055 type LodashLastIndexOfFrom1x5 = (fromIndex: true|number) => number;
2056 type LodashLastIndexOfFrom1x6<T> = (value: T) => number;
2057 type LodashLowerCase = (string: string) => string;
2058 type LodashLowerFirst = (string: string) => string;
2059 interface LodashLt {
2060 (value: any): LodashLt1x1;
2061 (value: lodash.__, other: any): LodashLt1x2;
2062 (value: any, other: any): boolean;
2063 }
2064 type LodashLt1x1 = (other: any) => boolean;
2065 type LodashLt1x2 = (value: any) => boolean;
2066 interface LodashLte {
2067 (value: any): LodashLte1x1;
2068 (value: lodash.__, other: any): LodashLte1x2;
2069 (value: any, other: any): boolean;
2070 }
2071 type LodashLte1x1 = (other: any) => boolean;
2072 type LodashLte1x2 = (value: any) => boolean;
2073 interface LodashMap {
2074 <T, TResult>(iteratee: (value: T) => TResult): LodashMap1x1<T, TResult>;
2075 <T>(iteratee: lodash.__, collection: T[] | null | undefined): LodashMap1x2<T>;
2076 <T, TResult>(iteratee: (value: T) => TResult, collection: T[] | lodash.List<T> | null | undefined): TResult[];
2077 <T>(iteratee: lodash.__, collection: lodash.List<T> | null | undefined): LodashMap2x2<T>;
2078 <T extends object, TResult>(iteratee: (value: T[keyof T]) => TResult): LodashMap3x1<T, TResult>;
2079 <T extends object>(iteratee: lodash.__, collection: T | null | undefined): LodashMap3x2<T>;
2080 <T extends object, TResult>(iteratee: (value: T[keyof T]) => TResult, collection: T | null | undefined): TResult[];
2081 <T, K extends keyof T>(iteratee: K): LodashMap4x1<T, K>;
2082 <T>(iteratee: lodash.__, collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): LodashMap4x2<T>;
2083 <T, K extends keyof T>(iteratee: K, collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): Array<T[K]>;
2084 (iteratee: string): LodashMap5x1;
2085 <T>(iteratee: string, collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): any[];
2086 (iteratee: object): LodashMap6x1;
2087 <T>(iteratee: object, collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): boolean[];
2088 }
2089 type LodashMap1x1<T, TResult> = (collection: T[] | lodash.List<T> | null | undefined) => TResult[];
2090 type LodashMap1x2<T> = <TResult>(iteratee: (value: T) => TResult) => TResult[];
2091 type LodashMap2x2<T> = <TResult>(iteratee: (value: T) => TResult) => TResult[];
2092 type LodashMap3x1<T, TResult> = (collection: T | null | undefined) => TResult[];
2093 type LodashMap3x2<T> = <TResult>(iteratee: (value: T[keyof T]) => TResult) => TResult[];
2094 type LodashMap4x1<T, K extends keyof T> = (collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined) => Array<T[K]>;
2095 interface LodashMap4x2<T> {
2096 <K extends keyof T>(iteratee: K): Array<T[K]>;
2097 (iteratee: string): any[];
2098 (iteratee: object): boolean[];
2099 }
2100 type LodashMap5x1 = <T>(collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined) => any[];
2101 type LodashMap6x1 = <T>(collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined) => boolean[];
2102 interface LodashMapKeys {
2103 (iteratee: lodash.ValueIteratee<number>): LodashMapKeys1x1;
2104 <T>(iteratee: lodash.__, object: lodash.List<T> | null | undefined): LodashMapKeys1x2<T>;
2105 <T>(iteratee: lodash.ValueIteratee<number>, object: lodash.List<T> | null | undefined): lodash.Dictionary<T>;
2106 (iteratee: lodash.ValueIteratee<string>): LodashMapKeys2x1;
2107 <T extends object>(iteratee: lodash.__, object: T | null | undefined): LodashMapKeys2x2<T>;
2108 <T extends object>(iteratee: lodash.ValueIteratee<string>, object: T | null | undefined): lodash.Dictionary<T[keyof T]>;
2109 }
2110 type LodashMapKeys1x1 = <T>(object: lodash.List<T> | null | undefined) => lodash.Dictionary<T>;
2111 type LodashMapKeys1x2<T> = (iteratee: lodash.ValueIteratee<number>) => lodash.Dictionary<T>;
2112 type LodashMapKeys2x1 = <T extends object>(object: T | null | undefined) => lodash.Dictionary<T[keyof T]>;
2113 type LodashMapKeys2x2<T> = (iteratee: lodash.ValueIteratee<string>) => lodash.Dictionary<T[keyof T]>;
2114 interface LodashMapValues {
2115 <T, TResult>(callback: (value: T) => TResult): LodashMapValues1x1<T, TResult>;
2116 <T>(callbackOrIterateeOrIterateeOrIteratee: lodash.__, obj: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): LodashMapValues1x2<T>;
2117 <T, TResult>(callback: (value: T) => TResult, obj: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): lodash.Dictionary<TResult>;
2118 <T extends object, TResult>(callback: (value: T[keyof T]) => TResult): LodashMapValues2x1<T, TResult>;
2119 <T extends object>(callbackOrIterateeOrIteratee: lodash.__, obj: T | null | undefined): LodashMapValues2x2<T>;
2120 <T extends object, TResult>(callback: (value: T[keyof T]) => TResult, obj: T | null | undefined): { [P in keyof T]: TResult };
2121 (iteratee: object): LodashMapValues3x1;
2122 <T>(iteratee: object, obj: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): lodash.Dictionary<boolean>;
2123 <T extends object>(iteratee: object, obj: T | null | undefined): { [P in keyof T]: boolean };
2124 <T, TKey extends keyof T>(iteratee: TKey): LodashMapValues5x1<T, TKey>;
2125 <T, TKey extends keyof T>(iteratee: TKey, obj: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): lodash.Dictionary<T[TKey]>;
2126 (iteratee: string): LodashMapValues6x1;
2127 <T>(iteratee: string, obj: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): lodash.Dictionary<any>;
2128 <T extends object>(iteratee: string, obj: T | null | undefined): { [P in keyof T]: any };
2129 }
2130 type LodashMapValues1x1<T, TResult> = (obj: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined) => lodash.Dictionary<TResult>;
2131 interface LodashMapValues1x2<T> {
2132 <TResult>(callback: (value: T) => TResult): lodash.Dictionary<TResult>;
2133 (iteratee: object): lodash.Dictionary<boolean>;
2134 <TKey extends keyof T>(iteratee: TKey): lodash.Dictionary<T[TKey]>;
2135 (iteratee: string): lodash.Dictionary<any>;
2136 }
2137 type LodashMapValues2x1<T, TResult> = (obj: T | null | undefined) => { [P in keyof T]: TResult };
2138 interface LodashMapValues2x2<T> {
2139 <TResult>(callback: (value: T[keyof T]) => TResult): { [P in keyof T]: TResult };
2140 (iteratee: object): { [P in keyof T]: boolean };
2141 (iteratee: string): { [P in keyof T]: any };
2142 }
2143 interface LodashMapValues3x1 {
2144 <T>(obj: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): lodash.Dictionary<boolean>;
2145 <T extends object>(obj: T | null | undefined): { [P in keyof T]: boolean };
2146 }
2147 type LodashMapValues5x1<T, TKey extends keyof T> = (obj: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined) => lodash.Dictionary<T[TKey]>;
2148 interface LodashMapValues6x1 {
2149 <T>(obj: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): lodash.Dictionary<any>;
2150 <T extends object>(obj: T | null | undefined): { [P in keyof T]: any };
2151 }
2152 interface LodashMatchesProperty {
2153 (path: lodash.PropertyPath): LodashMatchesProperty1x1;
2154 <T>(path: lodash.__, srcValue: T): LodashMatchesProperty1x2;
2155 <T>(path: lodash.PropertyPath, srcValue: T): (value: any) => boolean;
2156 }
2157 type LodashMatchesProperty1x1 = <T>(srcValue: T) => (value: any) => boolean;
2158 type LodashMatchesProperty1x2 = (path: lodash.PropertyPath) => (value: any) => boolean;
2159 type LodashMax = <T>(collection: lodash.List<T> | null | undefined) => T | undefined;
2160 interface LodashMaxBy {
2161 <T>(iteratee: lodash.ValueIteratee<T>): LodashMaxBy1x1<T>;
2162 <T>(iteratee: lodash.__, collection: lodash.List<T> | null | undefined): LodashMaxBy1x2<T>;
2163 <T>(iteratee: lodash.ValueIteratee<T>, collection: lodash.List<T> | null | undefined): T | undefined;
2164 }
2165 type LodashMaxBy1x1<T> = (collection: lodash.List<T> | null | undefined) => T | undefined;
2166 type LodashMaxBy1x2<T> = (iteratee: lodash.ValueIteratee<T>) => T | undefined;
2167 type LodashMean = (collection: lodash.List<any> | null | undefined) => number;
2168 interface LodashMeanBy {
2169 <T>(iteratee: lodash.ValueIteratee<T>): LodashMeanBy1x1<T>;
2170 <T>(iteratee: lodash.__, collection: lodash.List<T> | null | undefined): LodashMeanBy1x2<T>;
2171 <T>(iteratee: lodash.ValueIteratee<T>, collection: lodash.List<T> | null | undefined): number;
2172 }
2173 type LodashMeanBy1x1<T> = (collection: lodash.List<T> | null | undefined) => number;
2174 type LodashMeanBy1x2<T> = (iteratee: lodash.ValueIteratee<T>) => number;
2175 type LodashMemoize = <T extends (...args: any) => any>(func: T) => T & lodash.MemoizedFunction;
2176 interface LodashMerge {
2177 <TObject>(object: TObject): LodashMerge1x1<TObject>;
2178 <TSource>(object: lodash.__, source: TSource): LodashMerge1x2<TSource>;
2179 <TObject, TSource>(object: TObject, source: TSource): TObject & TSource;
2180 }
2181 type LodashMerge1x1<TObject> = <TSource>(source: TSource) => TObject & TSource;
2182 type LodashMerge1x2<TSource> = <TObject>(object: TObject) => TObject & TSource;
2183 interface LodashMergeAll {
2184 <TObject, TSource>(object: [TObject, TSource]): TObject & TSource;
2185 <TObject, TSource1, TSource2>(object: [TObject, TSource1, TSource2]): TObject & TSource1 & TSource2;
2186 <TObject, TSource1, TSource2, TSource3>(object: [TObject, TSource1, TSource2, TSource3]): TObject & TSource1 & TSource2 & TSource3;
2187 <TObject, TSource1, TSource2, TSource3, TSource4>(object: [TObject, TSource1, TSource2, TSource3, TSource4]): TObject & TSource1 & TSource2 & TSource3 & TSource4;
2188 (object: ReadonlyArray<any>): any;
2189 }
2190 interface LodashMergeAllWith {
2191 (customizer: lodash.MergeWithCustomizer): LodashMergeAllWith1x1;
2192 (customizer: lodash.__, args: ReadonlyArray<any>): LodashMergeAllWith1x2;
2193 (customizer: lodash.MergeWithCustomizer, args: ReadonlyArray<any>): any;
2194 }
2195 type LodashMergeAllWith1x1 = (args: ReadonlyArray<any>) => any;
2196 type LodashMergeAllWith1x2 = (customizer: lodash.MergeWithCustomizer) => any;
2197 interface LodashMergeWith {
2198 (customizer: lodash.MergeWithCustomizer): LodashMergeWith1x1;
2199 <TObject>(customizer: lodash.__, object: TObject): LodashMergeWith1x2<TObject>;
2200 <TObject>(customizer: lodash.MergeWithCustomizer, object: TObject): LodashMergeWith1x3<TObject>;
2201 <TSource>(customizer: lodash.__, object: lodash.__, source: TSource): LodashMergeWith1x4<TSource>;
2202 <TSource>(customizer: lodash.MergeWithCustomizer, object: lodash.__, source: TSource): LodashMergeWith1x5<TSource>;
2203 <TObject, TSource>(customizer: lodash.__, object: TObject, source: TSource): LodashMergeWith1x6<TObject, TSource>;
2204 <TObject, TSource>(customizer: lodash.MergeWithCustomizer, object: TObject, source: TSource): TObject & TSource;
2205 }
2206 interface LodashMergeWith1x1 {
2207 <TObject>(object: TObject): LodashMergeWith1x3<TObject>;
2208 <TSource>(object: lodash.__, source: TSource): LodashMergeWith1x5<TSource>;
2209 <TObject, TSource>(object: TObject, source: TSource): TObject & TSource;
2210 }
2211 interface LodashMergeWith1x2<TObject> {
2212 (customizer: lodash.MergeWithCustomizer): LodashMergeWith1x3<TObject>;
2213 <TSource>(customizer: lodash.__, source: TSource): LodashMergeWith1x6<TObject, TSource>;
2214 <TSource>(customizer: lodash.MergeWithCustomizer, source: TSource): TObject & TSource;
2215 }
2216 type LodashMergeWith1x3<TObject> = <TSource>(source: TSource) => TObject & TSource;
2217 interface LodashMergeWith1x4<TSource> {
2218 (customizer: lodash.MergeWithCustomizer): LodashMergeWith1x5<TSource>;
2219 <TObject>(customizer: lodash.__, object: TObject): LodashMergeWith1x6<TObject, TSource>;
2220 <TObject>(customizer: lodash.MergeWithCustomizer, object: TObject): TObject & TSource;
2221 }
2222 type LodashMergeWith1x5<TSource> = <TObject>(object: TObject) => TObject & TSource;
2223 type LodashMergeWith1x6<TObject, TSource> = (customizer: lodash.MergeWithCustomizer) => TObject & TSource;
2224 type LodashMethod = (path: lodash.PropertyPath) => (object: any) => any;
2225 type LodashMethodOf = (object: object) => (path: lodash.PropertyPath) => any;
2226 type LodashMin = <T>(collection: lodash.List<T> | null | undefined) => T | undefined;
2227 interface LodashMinBy {
2228 <T>(iteratee: lodash.ValueIteratee<T>): LodashMinBy1x1<T>;
2229 <T>(iteratee: lodash.__, collection: lodash.List<T> | null | undefined): LodashMinBy1x2<T>;
2230 <T>(iteratee: lodash.ValueIteratee<T>, collection: lodash.List<T> | null | undefined): T | undefined;
2231 }
2232 type LodashMinBy1x1<T> = (collection: lodash.List<T> | null | undefined) => T | undefined;
2233 type LodashMinBy1x2<T> = (iteratee: lodash.ValueIteratee<T>) => T | undefined;
2234 interface LodashMultiply {
2235 (multiplier: number): LodashMultiply1x1;
2236 (multiplier: lodash.__, multiplicand: number): LodashMultiply1x2;
2237 (multiplier: number, multiplicand: number): number;
2238 }
2239 type LodashMultiply1x1 = (multiplicand: number) => number;
2240 type LodashMultiply1x2 = (multiplier: number) => number;
2241 type LodashNoConflict = () => typeof _;
2242 type LodashNoop = (...args: any[]) => void;
2243 type LodashNow = () => number;
2244 interface LodashNth {
2245 (n: number): LodashNth1x1;
2246 <T>(n: lodash.__, array: lodash.List<T> | null | undefined): LodashNth1x2<T>;
2247 <T>(n: number, array: lodash.List<T> | null | undefined): T | undefined;
2248 }
2249 type LodashNth1x1 = <T>(array: lodash.List<T> | null | undefined) => T | undefined;
2250 type LodashNth1x2<T> = (n: number) => T | undefined;
2251 type LodashNthArg = (n: number) => (...args: any[]) => any;
2252 interface LodashOmit {
2253 <T extends object, K extends keyof T>(paths: lodash.Many<K>): LodashOmit1x1<T, K>;
2254 <T extends object>(paths: lodash.__, object: T | null | undefined): LodashOmit1x2<T>;
2255 <T extends object, K extends keyof T>(paths: lodash.Many<K>, object: T | null | undefined): lodash.Omit<T, K>;
2256 (paths: lodash.Many<lodash.PropertyName>): LodashOmit2x1;
2257 <T extends object>(paths: lodash.Many<lodash.PropertyName>, object: T | null | undefined): lodash.PartialObject<T>;
2258 }
2259 type LodashOmit1x1<T, K extends keyof T> = (object: T | null | undefined) => lodash.Omit<T, K>;
2260 interface LodashOmit1x2<T> {
2261 <K extends keyof T>(paths: lodash.Many<K>): lodash.Omit<T, K>;
2262 (paths: lodash.Many<lodash.PropertyName>): lodash.PartialObject<T>;
2263 }
2264 type LodashOmit2x1 = <T extends object>(object: T | null | undefined) => lodash.PartialObject<T>;
2265 interface LodashOmitBy {
2266 <T>(predicate: lodash.ValueKeyIteratee<T>): LodashOmitBy1x1<T>;
2267 <T>(predicate: lodash.__, object: lodash.Dictionary<T> | null | undefined): LodashOmitBy1x2<T>;
2268 <T>(predicate: lodash.ValueKeyIteratee<T>, object: lodash.Dictionary<T> | null | undefined): lodash.Dictionary<T>;
2269 <T>(predicate: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashOmitBy2x2<T>;
2270 <T>(predicate: lodash.ValueKeyIteratee<T>, object: lodash.NumericDictionary<T> | null | undefined): lodash.NumericDictionary<T>;
2271 <T extends object>(predicate: lodash.__, object: T | null | undefined): LodashOmitBy3x2<T>;
2272 <T extends object>(predicate: lodash.ValueKeyIteratee<T[keyof T]>, object: T | null | undefined): lodash.PartialObject<T>;
2273 }
2274 interface LodashOmitBy1x1<T> {
2275 (object: lodash.Dictionary<T> | null | undefined): lodash.Dictionary<T>;
2276 (object: lodash.NumericDictionary<T> | null | undefined): lodash.NumericDictionary<T>;
2277 <T1 extends object>(object: T1 | null | undefined): lodash.PartialObject<T1>;
2278 }
2279 type LodashOmitBy1x2<T> = (predicate: lodash.ValueKeyIteratee<T>) => lodash.Dictionary<T>;
2280 type LodashOmitBy2x2<T> = (predicate: lodash.ValueKeyIteratee<T>) => lodash.NumericDictionary<T>;
2281 type LodashOmitBy3x2<T> = (predicate: lodash.ValueKeyIteratee<T[keyof T]>) => lodash.PartialObject<T>;
2282 type LodashOnce = <T extends (...args: any) => any>(func: T) => T;
2283 interface LodashOrderBy {
2284 <T>(iteratees: lodash.Many<(value: T) => lodash.NotVoid>): LodashOrderBy1x1<T>;
2285 (iteratees: lodash.__, orders: lodash.Many<boolean|"asc"|"desc">): LodashOrderBy1x2;
2286 <T>(iteratees: lodash.Many<(value: T) => lodash.NotVoid>, orders: lodash.Many<boolean|"asc"|"desc">): LodashOrderBy1x3<T>;
2287 <T>(iteratees: lodash.__, orders: lodash.__, collection: lodash.List<T> | null | undefined): LodashOrderBy1x4<T>;
2288 <T>(iteratees: lodash.Many<(value: T) => lodash.NotVoid>, orders: lodash.__, collection: lodash.List<T> | null | undefined): LodashOrderBy1x5<T>;
2289 <T>(iteratees: lodash.__, orders: lodash.Many<boolean|"asc"|"desc">, collection: lodash.List<T> | null | undefined): LodashOrderBy1x6<T>;
2290 <T>(iteratees: lodash.Many<(value: T) => lodash.NotVoid> | lodash.Many<lodash.ValueIteratee<T>>, orders: lodash.Many<boolean | "asc" | "desc">, collection: lodash.List<T> | null | undefined): T[];
2291 <T>(iteratees: lodash.Many<lodash.ValueIteratee<T>>): LodashOrderBy2x1<T>;
2292 <T>(iteratees: lodash.Many<lodash.ValueIteratee<T>>, orders: lodash.Many<boolean|"asc"|"desc">): LodashOrderBy2x3<T>;
2293 <T>(iteratees: lodash.Many<lodash.ValueIteratee<T>>, orders: lodash.__, collection: lodash.List<T> | null | undefined): LodashOrderBy2x5<T>;
2294 <T extends object>(iteratees: lodash.__, orders: lodash.__, collection: T | null | undefined): LodashOrderBy3x4<T>;
2295 <T extends object>(iteratees: lodash.Many<(value: T[keyof T]) => lodash.NotVoid>, orders: lodash.__, collection: T | null | undefined): LodashOrderBy3x5<T>;
2296 <T extends object>(iteratees: lodash.__, orders: lodash.Many<boolean|"asc"|"desc">, collection: T | null | undefined): LodashOrderBy3x6<T>;
2297 <T extends object>(iteratees: lodash.Many<(value: T[keyof T]) => lodash.NotVoid> | lodash.Many<lodash.ValueIteratee<T[keyof T]>>, orders: lodash.Many<boolean | "asc" | "desc">, collection: T | null | undefined): Array<T[keyof T]>;
2298 <T extends object>(iteratees: lodash.Many<lodash.ValueIteratee<T[keyof T]>>, orders: lodash.__, collection: T | null | undefined): LodashOrderBy4x5<T>;
2299 }
2300 interface LodashOrderBy1x1<T> {
2301 (orders: lodash.Many<boolean | "asc" | "desc">): LodashOrderBy1x3<T>;
2302 (orders: lodash.__, collection: lodash.List<T> | null | undefined): LodashOrderBy1x5<T>;
2303 (orders: lodash.Many<boolean | "asc" | "desc">, collection: lodash.List<T> | object | null | undefined): T[];
2304 <T1 extends object>(orders: lodash.__, collection: T1 | null | undefined): LodashOrderBy3x5<T>;
2305 }
2306 interface LodashOrderBy1x2 {
2307 <T>(iteratees: lodash.Many<(value: T) => lodash.NotVoid>): LodashOrderBy1x3<T>;
2308 <T>(iteratees: lodash.__, collection: lodash.List<T> | null | undefined): LodashOrderBy1x6<T>;
2309 <T>(iteratees: lodash.Many<(value: T) => lodash.NotVoid> | lodash.Many<lodash.ValueIteratee<T>>, collection: lodash.List<T> | null | undefined): T[];
2310 <T>(iteratees: lodash.Many<lodash.ValueIteratee<T>>): LodashOrderBy2x3<T>;
2311 <T extends object>(iteratees: lodash.__, collection: T | null | undefined): LodashOrderBy3x6<T>;
2312 <T extends object>(iteratees: lodash.Many<(value: T[keyof T]) => lodash.NotVoid> | lodash.Many<lodash.ValueIteratee<T[keyof T]>>, collection: T | null | undefined): Array<T[keyof T]>;
2313 }
2314 interface LodashOrderBy1x3<T> {
2315 (collection: lodash.List<T> | null | undefined): T[];
2316 (collection: object | null | undefined): object[];
2317 }
2318 interface LodashOrderBy1x4<T> {
2319 (iteratees: lodash.Many<(value: T) => lodash.NotVoid>): LodashOrderBy1x5<T>;
2320 (iteratees: lodash.__, orders: lodash.Many<boolean | "asc" | "desc">): LodashOrderBy1x6<T>;
2321 (iteratees: lodash.Many<(value: T) => lodash.NotVoid> | lodash.Many<lodash.ValueIteratee<T>>, orders: lodash.Many<boolean | "asc" | "desc">): T[];
2322 (iteratees: lodash.Many<lodash.ValueIteratee<T>>): LodashOrderBy2x5<T>;
2323 }
2324 type LodashOrderBy1x5<T> = (orders: lodash.Many<boolean|"asc"|"desc">) => T[];
2325 type LodashOrderBy1x6<T> = (iteratees: lodash.Many<(value: T) => lodash.NotVoid> | lodash.Many<lodash.ValueIteratee<T>>) => T[];
2326 interface LodashOrderBy2x1<T> {
2327 (orders: lodash.Many<boolean | "asc" | "desc">): LodashOrderBy2x3<T>;
2328 (orders: lodash.__, collection: lodash.List<T> | null | undefined): LodashOrderBy2x5<T>;
2329 (orders: lodash.Many<boolean | "asc" | "desc">, collection: lodash.List<T> | object | null | undefined): T[];
2330 <T1 extends object>(orders: lodash.__, collection: T1 | null | undefined): LodashOrderBy4x5<T>;
2331 }
2332 interface LodashOrderBy2x3<T> {
2333 (collection: lodash.List<T> | null | undefined): T[];
2334 (collection: object | null | undefined): object[];
2335 }
2336 type LodashOrderBy2x5<T> = (orders: lodash.Many<boolean|"asc"|"desc">) => T[];
2337 interface LodashOrderBy3x4<T> {
2338 (iteratees: lodash.Many<(value: T[keyof T]) => lodash.NotVoid>): LodashOrderBy3x5<T>;
2339 (iteratees: lodash.__, orders: lodash.Many<boolean | "asc" | "desc">): LodashOrderBy3x6<T>;
2340 (iteratees: lodash.Many<(value: T[keyof T]) => lodash.NotVoid> | lodash.Many<lodash.ValueIteratee<T[keyof T]>>, orders: lodash.Many<boolean | "asc" | "desc">): Array<T[keyof T]>;
2341 (iteratees: lodash.Many<lodash.ValueIteratee<T[keyof T]>>): LodashOrderBy4x5<T>;
2342 }
2343 type LodashOrderBy3x5<T> = (orders: lodash.Many<boolean|"asc"|"desc">) => Array<T[keyof T]>;
2344 type LodashOrderBy3x6<T> = (iteratees: lodash.Many<(value: T[keyof T]) => lodash.NotVoid> | lodash.Many<lodash.ValueIteratee<T[keyof T]>>) => Array<T[keyof T]>;
2345 type LodashOrderBy4x5<T> = (orders: lodash.Many<boolean|"asc"|"desc">) => Array<T[keyof T]>;
2346 interface LodashOverArgs {
2347 (func: (...args: any[]) => any): LodashOverArgs1x1;
2348 (func: lodash.__, transforms: lodash.Many<(...args: any[]) => any>): LodashOverArgs1x2;
2349 (func: (...args: any[]) => any, transforms: lodash.Many<(...args: any[]) => any>): (...args: any[]) => any;
2350 }
2351 type LodashOverArgs1x1 = (transforms: lodash.Many<(...args: any[]) => any>) => (...args: any[]) => any;
2352 type LodashOverArgs1x2 = (func: (...args: any[]) => any) => (...args: any[]) => any;
2353 interface LodashPad {
2354 (length: number): LodashPad1x1;
2355 (length: lodash.__, string: string): LodashPad1x2;
2356 (length: number, string: string): string;
2357 }
2358 type LodashPad1x1 = (string: string) => string;
2359 type LodashPad1x2 = (length: number) => string;
2360 interface LodashPadChars {
2361 (chars: string): LodashPadChars1x1;
2362 (chars: lodash.__, length: number): LodashPadChars1x2;
2363 (chars: string, length: number): LodashPadChars1x3;
2364 (chars: lodash.__, length: lodash.__, string: string): LodashPadChars1x4;
2365 (chars: string, length: lodash.__, string: string): LodashPadChars1x5;
2366 (chars: lodash.__, length: number, string: string): LodashPadChars1x6;
2367 (chars: string, length: number, string: string): string;
2368 }
2369 interface LodashPadChars1x1 {
2370 (length: number): LodashPadChars1x3;
2371 (length: lodash.__, string: string): LodashPadChars1x5;
2372 (length: number, string: string): string;
2373 }
2374 interface LodashPadChars1x2 {
2375 (chars: string): LodashPadChars1x3;
2376 (chars: lodash.__, string: string): LodashPadChars1x6;
2377 (chars: string, string: string): string;
2378 }
2379 type LodashPadChars1x3 = (string: string) => string;
2380 interface LodashPadChars1x4 {
2381 (chars: string): LodashPadChars1x5;
2382 (chars: lodash.__, length: number): LodashPadChars1x6;
2383 (chars: string, length: number): string;
2384 }
2385 type LodashPadChars1x5 = (length: number) => string;
2386 type LodashPadChars1x6 = (chars: string) => string;
2387 interface LodashPadCharsEnd {
2388 (chars: string): LodashPadCharsEnd1x1;
2389 (chars: lodash.__, length: number): LodashPadCharsEnd1x2;
2390 (chars: string, length: number): LodashPadCharsEnd1x3;
2391 (chars: lodash.__, length: lodash.__, string: string): LodashPadCharsEnd1x4;
2392 (chars: string, length: lodash.__, string: string): LodashPadCharsEnd1x5;
2393 (chars: lodash.__, length: number, string: string): LodashPadCharsEnd1x6;
2394 (chars: string, length: number, string: string): string;
2395 }
2396 interface LodashPadCharsEnd1x1 {
2397 (length: number): LodashPadCharsEnd1x3;
2398 (length: lodash.__, string: string): LodashPadCharsEnd1x5;
2399 (length: number, string: string): string;
2400 }
2401 interface LodashPadCharsEnd1x2 {
2402 (chars: string): LodashPadCharsEnd1x3;
2403 (chars: lodash.__, string: string): LodashPadCharsEnd1x6;
2404 (chars: string, string: string): string;
2405 }
2406 type LodashPadCharsEnd1x3 = (string: string) => string;
2407 interface LodashPadCharsEnd1x4 {
2408 (chars: string): LodashPadCharsEnd1x5;
2409 (chars: lodash.__, length: number): LodashPadCharsEnd1x6;
2410 (chars: string, length: number): string;
2411 }
2412 type LodashPadCharsEnd1x5 = (length: number) => string;
2413 type LodashPadCharsEnd1x6 = (chars: string) => string;
2414 interface LodashPadCharsStart {
2415 (chars: string): LodashPadCharsStart1x1;
2416 (chars: lodash.__, length: number): LodashPadCharsStart1x2;
2417 (chars: string, length: number): LodashPadCharsStart1x3;
2418 (chars: lodash.__, length: lodash.__, string: string): LodashPadCharsStart1x4;
2419 (chars: string, length: lodash.__, string: string): LodashPadCharsStart1x5;
2420 (chars: lodash.__, length: number, string: string): LodashPadCharsStart1x6;
2421 (chars: string, length: number, string: string): string;
2422 }
2423 interface LodashPadCharsStart1x1 {
2424 (length: number): LodashPadCharsStart1x3;
2425 (length: lodash.__, string: string): LodashPadCharsStart1x5;
2426 (length: number, string: string): string;
2427 }
2428 interface LodashPadCharsStart1x2 {
2429 (chars: string): LodashPadCharsStart1x3;
2430 (chars: lodash.__, string: string): LodashPadCharsStart1x6;
2431 (chars: string, string: string): string;
2432 }
2433 type LodashPadCharsStart1x3 = (string: string) => string;
2434 interface LodashPadCharsStart1x4 {
2435 (chars: string): LodashPadCharsStart1x5;
2436 (chars: lodash.__, length: number): LodashPadCharsStart1x6;
2437 (chars: string, length: number): string;
2438 }
2439 type LodashPadCharsStart1x5 = (length: number) => string;
2440 type LodashPadCharsStart1x6 = (chars: string) => string;
2441 interface LodashPadEnd {
2442 (length: number): LodashPadEnd1x1;
2443 (length: lodash.__, string: string): LodashPadEnd1x2;
2444 (length: number, string: string): string;
2445 }
2446 type LodashPadEnd1x1 = (string: string) => string;
2447 type LodashPadEnd1x2 = (length: number) => string;
2448 interface LodashPadStart {
2449 (length: number): LodashPadStart1x1;
2450 (length: lodash.__, string: string): LodashPadStart1x2;
2451 (length: number, string: string): string;
2452 }
2453 type LodashPadStart1x1 = (string: string) => string;
2454 type LodashPadStart1x2 = (length: number) => string;
2455 interface LodashParseInt {
2456 (radix: number): LodashParseInt1x1;
2457 (radix: lodash.__, string: string): LodashParseInt1x2;
2458 (radix: number, string: string): number;
2459 }
2460 type LodashParseInt1x1 = (string: string) => number;
2461 type LodashParseInt1x2 = (radix: number) => number;
2462 interface LodashPartial {
2463 <T1, T2, R>(func: lodash.Function2<T1, T2, R>): LodashPartial1x1<T1, T2, R>;
2464 <T2>(func: lodash.__, plc1: [lodash.__, T2]): LodashPartial1x2<T2>;
2465 <T1, T2, R>(func: lodash.Function2<T1, T2, R>, plc1: [lodash.__, T2]): lodash.Function1<T1, R>;
2466 <T1, T2, T3, R>(func: lodash.Function3<T1, T2, T3, R>): LodashPartial2x1<T1, T2, T3, R>;
2467 <T1, T2, T3, R>(func: lodash.Function3<T1, T2, T3, R>, plc1: [lodash.__, T2]): lodash.Function2<T1, T3, R>;
2468 <T3>(func: lodash.__, plc1: [lodash.__, lodash.__, T3]): LodashPartial3x2<T3>;
2469 <T1, T2, T3, R>(func: lodash.Function3<T1, T2, T3, R>, plc1: [lodash.__, lodash.__, T3]): lodash.Function2<T1, T2, R>;
2470 <T1, T3>(func: lodash.__, arg1: [T1, lodash.__, T3]): LodashPartial4x2<T1, T3>;
2471 <T1, T2, T3, R>(func: lodash.Function3<T1, T2, T3, R>, arg1: [T1, lodash.__, T3]): lodash.Function1<T2, R>;
2472 <T2, T3>(func: lodash.__, plc1: [lodash.__, T2, T3]): LodashPartial5x2<T2, T3>;
2473 <T1, T2, T3, R>(func: lodash.Function3<T1, T2, T3, R>, plc1: [lodash.__, T2, T3]): lodash.Function1<T1, R>;
2474 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>): LodashPartial6x1<T1, T2, T3, T4, R>;
2475 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, plc1: [lodash.__, T2]): lodash.Function3<T1, T3, T4, R>;
2476 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, plc1: [lodash.__, lodash.__, T3]): lodash.Function3<T1, T2, T4, R>;
2477 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg1: [T1, lodash.__, T3]): lodash.Function2<T2, T4, R>;
2478 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, plc1: [lodash.__, T2, T3]): lodash.Function2<T1, T4, R>;
2479 <T1, T2, T3>(func: lodash.__, arg1OrT1: [T1, T2, T3]): LodashPartial10x2<T1, T2, T3>;
2480 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg1: [T1, T2, T3]): lodash.Function1<T4, R>;
2481 <T4>(func: lodash.__, plc1: [lodash.__, lodash.__, lodash.__, T4]): LodashPartial11x2<T4>;
2482 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, plc1: [lodash.__, lodash.__, lodash.__, T4]): lodash.Function3<T1, T2, T3, R>;
2483 <T1, T4>(func: lodash.__, arg1: [T1, lodash.__, lodash.__, T4]): LodashPartial12x2<T1, T4>;
2484 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg1: [T1, lodash.__, lodash.__, T4]): lodash.Function2<T2, T3, R>;
2485 <T2, T4>(func: lodash.__, plc1: [lodash.__, T2, lodash.__, T4]): LodashPartial13x2<T2, T4>;
2486 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, plc1: [lodash.__, T2, lodash.__, T4]): lodash.Function2<T1, T3, R>;
2487 <T1, T2, T4>(func: lodash.__, arg1: [T1, T2, lodash.__, T4]): LodashPartial14x2<T1, T2, T4>;
2488 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg1: [T1, T2, lodash.__, T4]): lodash.Function1<T3, R>;
2489 <T3, T4>(func: lodash.__, plc1: [lodash.__, lodash.__, T3, T4]): LodashPartial15x2<T3, T4>;
2490 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, plc1: [lodash.__, lodash.__, T3, T4]): lodash.Function2<T1, T2, R>;
2491 <T1, T3, T4>(func: lodash.__, arg1: [T1, lodash.__, T3, T4]): LodashPartial16x2<T1, T3, T4>;
2492 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg1: [T1, lodash.__, T3, T4]): lodash.Function1<T2, R>;
2493 <T2, T3, T4>(func: lodash.__, plc1: [lodash.__, T2, T3, T4]): LodashPartial17x2<T2, T3, T4>;
2494 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, plc1: [lodash.__, T2, T3, T4]): lodash.Function1<T1, R>;
2495 <TS extends any[], T1, R>(func: (t1: T1, ...ts: TS) => R): LodashPartial18x1<TS, T1, R>;
2496 <T1>(func: lodash.__, arg1: [T1]): LodashPartial18x2<T1>;
2497 <TS extends any[], T1, R>(func: (t1: T1, ...ts: TS) => R, arg1: [T1]): (...ts: TS) => R;
2498 <TS extends any[], T1, T2, R>(func: (t1: T1, t2: T2, ...ts: TS) => R): LodashPartial19x1<TS, T1, T2, R>;
2499 <T1, T2>(func: lodash.__, t1: [T1, T2]): LodashPartial19x2<T1, T2>;
2500 <TS extends any[], T1, T2, R>(func: (t1: T1, t2: T2, ...ts: TS) => R, t1: [T1, T2]): (...ts: TS) => R;
2501 <TS extends any[], T1, T2, T3, R>(func: (t1: T1, t2: T2, t3: T3, ...ts: TS) => R): LodashPartial20x1<TS, T1, T2, T3, R>;
2502 <TS extends any[], T1, T2, T3, R>(func: (t1: T1, t2: T2, t3: T3, ...ts: TS) => R, t1: [T1, T2, T3]): (...ts: TS) => R;
2503 <TS extends any[], T1, T2, T3, T4, R>(func: (t1: T1, t2: T2, t3: T3, t4: T4, ...ts: TS) => R): LodashPartial21x1<TS, T1, T2, T3, T4, R>;
2504 <T1, T2, T3, T4>(func: lodash.__, t1: [T1, T2, T3, T4]): LodashPartial21x2<T1, T2, T3, T4>;
2505 <TS extends any[], T1, T2, T3, T4, R>(func: (t1: T1, t2: T2, t3: T3, t4: T4, ...ts: TS) => R, t1: [T1, T2, T3, T4]): (...ts: TS) => R;
2506 placeholder: lodash.__;
2507 }
2508 type LodashPartial1x1<T1, T2, R> = (plc1: [lodash.__, T2]) => lodash.Function1<T1, R>;
2509 interface LodashPartial1x2<T2> {
2510 <T1, R>(func: lodash.Function2<T1, T2, R>): lodash.Function1<T1, R>;
2511 <T1, T3, R>(func: lodash.Function3<T1, T2, T3, R>): lodash.Function2<T1, T3, R>;
2512 <T1, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>): lodash.Function3<T1, T3, T4, R>;
2513 }
2514 interface LodashPartial2x1<T1, T2, T3, R> {
2515 (plc1: [lodash.__, T2]): lodash.Function2<T1, T3, R>;
2516 (plc1: [lodash.__, lodash.__, T3]): lodash.Function2<T1, T2, R>;
2517 (arg1: [T1, lodash.__, T3]): lodash.Function1<T2, R>;
2518 (plc1: [lodash.__, T2, T3]): lodash.Function1<T1, R>;
2519 }
2520 interface LodashPartial3x2<T3> {
2521 <T1, T2, R>(func: lodash.Function3<T1, T2, T3, R>): lodash.Function2<T1, T2, R>;
2522 <T1, T2, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>): lodash.Function3<T1, T2, T4, R>;
2523 }
2524 interface LodashPartial4x2<T1, T3> {
2525 <T2, R>(func: lodash.Function3<T1, T2, T3, R>): lodash.Function1<T2, R>;
2526 <T2, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>): lodash.Function2<T2, T4, R>;
2527 }
2528 interface LodashPartial5x2<T2, T3> {
2529 <T1, R>(func: lodash.Function3<T1, T2, T3, R>): lodash.Function1<T1, R>;
2530 <T1, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>): lodash.Function2<T1, T4, R>;
2531 }
2532 interface LodashPartial6x1<T1, T2, T3, T4, R> {
2533 (plc1: [lodash.__, T2]): lodash.Function3<T1, T3, T4, R>;
2534 (plc1: [lodash.__, lodash.__, T3]): lodash.Function3<T1, T2, T4, R>;
2535 (arg1: [T1, lodash.__, T3]): lodash.Function2<T2, T4, R>;
2536 (plc1: [lodash.__, T2, T3]): lodash.Function2<T1, T4, R>;
2537 (arg1: [T1, T2, T3]): lodash.Function1<T4, R>;
2538 (plc1: [lodash.__, lodash.__, lodash.__, T4]): lodash.Function3<T1, T2, T3, R>;
2539 (arg1: [T1, lodash.__, lodash.__, T4]): lodash.Function2<T2, T3, R>;
2540 (plc1: [lodash.__, T2, lodash.__, T4]): lodash.Function2<T1, T3, R>;
2541 (arg1: [T1, T2, lodash.__, T4]): lodash.Function1<T3, R>;
2542 (plc1: [lodash.__, lodash.__, T3, T4]): lodash.Function2<T1, T2, R>;
2543 (arg1: [T1, lodash.__, T3, T4]): lodash.Function1<T2, R>;
2544 (plc1: [lodash.__, T2, T3, T4]): lodash.Function1<T1, R>;
2545 }
2546 interface LodashPartial10x2<T1, T2, T3> {
2547 <T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>): lodash.Function1<T4, R>;
2548 <TS extends any[], R>(func: (t1: T1, t2: T2, t3: T3, ...ts: TS) => R): (...ts: TS) => R;
2549 }
2550 type LodashPartial11x2<T4> = <T1, T2, T3, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function3<T1, T2, T3, R>;
2551 type LodashPartial12x2<T1, T4> = <T2, T3, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function2<T2, T3, R>;
2552 type LodashPartial13x2<T2, T4> = <T1, T3, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function2<T1, T3, R>;
2553 type LodashPartial14x2<T1, T2, T4> = <T3, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function1<T3, R>;
2554 type LodashPartial15x2<T3, T4> = <T1, T2, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function2<T1, T2, R>;
2555 type LodashPartial16x2<T1, T3, T4> = <T2, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function1<T2, R>;
2556 type LodashPartial17x2<T2, T3, T4> = <T1, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function1<T1, R>;
2557 type LodashPartial18x1<TS extends any[], T1, R> = (arg1: [T1]) => (...ts: TS) => R;
2558 type LodashPartial18x2<T1> = <TS extends any[], R>(func: (t1: T1, ...ts: TS) => R) => (...ts: TS) => R;
2559 type LodashPartial19x1<TS extends any[], T1, T2, R> = (t1: [T1, T2]) => (...ts: TS) => R;
2560 type LodashPartial19x2<T1, T2> = <TS extends any[], R>(func: (t1: T1, t2: T2, ...ts: TS) => R) => (...ts: TS) => R;
2561 type LodashPartial20x1<TS extends any[], T1, T2, T3, R> = (t1: [T1, T2, T3]) => (...ts: TS) => R;
2562 type LodashPartial21x1<TS extends any[], T1, T2, T3, T4, R> = (t1: [T1, T2, T3, T4]) => (...ts: TS) => R;
2563 type LodashPartial21x2<T1, T2, T3, T4> = <TS extends any[], R>(func: (t1: T1, t2: T2, t3: T3, t4: T4, ...ts: TS) => R) => (...ts: TS) => R;
2564 interface LodashPartialRight {
2565 <T1, R>(func: lodash.Function1<T1, R>): LodashPartialRight1x1<T1, R>;
2566 <T1>(func: lodash.__, arg1: [T1]): LodashPartialRight1x2<T1>;
2567 <T1, R>(func: lodash.Function1<T1, R>, arg1: [T1]): lodash.Function0<R>;
2568 <T1, T2, R>(func: lodash.Function2<T1, T2, R>): LodashPartialRight2x1<T1, T2, R>;
2569 <T1>(func: lodash.__, arg1: [T1, lodash.__]): LodashPartialRight2x2<T1>;
2570 <T1, T2, R>(func: lodash.Function2<T1, T2, R>, arg1: [T1, lodash.__]): lodash.Function1<T2, R>;
2571 <T2>(func: lodash.__, arg2: [T2]): LodashPartialRight3x2<T2>;
2572 <T1, T2, R>(func: lodash.Function2<T1, T2, R>, arg2: [T2]): lodash.Function1<T1, R>;
2573 <T1, T2>(func: lodash.__, arg1: [T1, T2]): LodashPartialRight4x2<T1, T2>;
2574 <T1, T2, R>(func: lodash.Function2<T1, T2, R>, arg1: [T1, T2]): lodash.Function0<R>;
2575 <T1, T2, T3, R>(func: lodash.Function3<T1, T2, T3, R>): LodashPartialRight5x1<T1, T2, T3, R>;
2576 <T1>(func: lodash.__, arg1: [T1, lodash.__, lodash.__]): LodashPartialRight5x2<T1>;
2577 <T1, T2, T3, R>(func: lodash.Function3<T1, T2, T3, R>, arg1: [T1, lodash.__, lodash.__]): lodash.Function2<T2, T3, R>;
2578 <T2>(func: lodash.__, arg2: [T2, lodash.__]): LodashPartialRight6x2<T2>;
2579 <T1, T2, T3, R>(func: lodash.Function3<T1, T2, T3, R>, arg2: [T2, lodash.__]): lodash.Function2<T1, T3, R>;
2580 <T1, T2>(func: lodash.__, arg1: [T1, T2, lodash.__]): LodashPartialRight7x2<T1, T2>;
2581 <T1, T2, T3, R>(func: lodash.Function3<T1, T2, T3, R>, arg1: [T1, T2, lodash.__]): lodash.Function1<T3, R>;
2582 <T3>(func: lodash.__, arg3: [T3]): LodashPartialRight8x2<T3>;
2583 <T1, T2, T3, R>(func: lodash.Function3<T1, T2, T3, R>, arg3: [T3]): lodash.Function2<T1, T2, R>;
2584 <T1, T3>(func: lodash.__, arg1: [T1, lodash.__, T3]): LodashPartialRight9x2<T1, T3>;
2585 <T1, T2, T3, R>(func: lodash.Function3<T1, T2, T3, R>, arg1: [T1, lodash.__, T3]): lodash.Function1<T2, R>;
2586 <T2, T3>(func: lodash.__, arg2: [T2, T3]): LodashPartialRight10x2<T2, T3>;
2587 <T1, T2, T3, R>(func: lodash.Function3<T1, T2, T3, R>, arg2: [T2, T3]): lodash.Function1<T1, R>;
2588 <T1, T2, T3>(func: lodash.__, arg1: [T1, T2, T3]): LodashPartialRight11x2<T1, T2, T3>;
2589 <T1, T2, T3, R>(func: lodash.Function3<T1, T2, T3, R>, arg1: [T1, T2, T3]): lodash.Function0<R>;
2590 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>): LodashPartialRight12x1<T1, T2, T3, T4, R>;
2591 <T1>(func: lodash.__, arg1: [T1, lodash.__, lodash.__, lodash.__]): LodashPartialRight12x2<T1>;
2592 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg1: [T1, lodash.__, lodash.__, lodash.__]): lodash.Function3<T2, T3, T4, R>;
2593 <T2>(func: lodash.__, arg2: [T2, lodash.__, lodash.__]): LodashPartialRight13x2<T2>;
2594 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg2: [T2, lodash.__, lodash.__]): lodash.Function3<T1, T3, T4, R>;
2595 <T1, T2>(func: lodash.__, arg1: [T1, T2, lodash.__, lodash.__]): LodashPartialRight14x2<T1, T2>;
2596 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg1: [T1, T2, lodash.__, lodash.__]): lodash.Function2<T3, T4, R>;
2597 <T3>(func: lodash.__, arg3: [T3, lodash.__]): LodashPartialRight15x2<T3>;
2598 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg3: [T3, lodash.__]): lodash.Function3<T1, T2, T4, R>;
2599 <T1, T3>(func: lodash.__, arg1: [T1, lodash.__, T3, lodash.__]): LodashPartialRight16x2<T1, T3>;
2600 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg1: [T1, lodash.__, T3, lodash.__]): lodash.Function2<T2, T4, R>;
2601 <T2, T3>(func: lodash.__, arg2: [T2, T3, lodash.__]): LodashPartialRight17x2<T2, T3>;
2602 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg2: [T2, T3, lodash.__]): lodash.Function2<T1, T4, R>;
2603 <T1, T2, T3>(func: lodash.__, arg1: [T1, T2, T3, lodash.__]): LodashPartialRight18x2<T1, T2, T3>;
2604 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg1: [T1, T2, T3, lodash.__]): lodash.Function1<T4, R>;
2605 <T4>(func: lodash.__, arg4: [T4]): LodashPartialRight19x2<T4>;
2606 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg4: [T4]): lodash.Function3<T1, T2, T3, R>;
2607 <T1, T4>(func: lodash.__, arg1: [T1, lodash.__, lodash.__, T4]): LodashPartialRight20x2<T1, T4>;
2608 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg1: [T1, lodash.__, lodash.__, T4]): lodash.Function2<T2, T3, R>;
2609 <T2, T4>(func: lodash.__, arg2: [T2, lodash.__, T4]): LodashPartialRight21x2<T2, T4>;
2610 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg2: [T2, lodash.__, T4]): lodash.Function2<T1, T3, R>;
2611 <T1, T2, T4>(func: lodash.__, arg1: [T1, T2, lodash.__, T4]): LodashPartialRight22x2<T1, T2, T4>;
2612 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg1: [T1, T2, lodash.__, T4]): lodash.Function1<T3, R>;
2613 <T3, T4>(func: lodash.__, arg3: [T3, T4]): LodashPartialRight23x2<T3, T4>;
2614 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg3: [T3, T4]): lodash.Function2<T1, T2, R>;
2615 <T1, T3, T4>(func: lodash.__, arg1: [T1, lodash.__, T3, T4]): LodashPartialRight24x2<T1, T3, T4>;
2616 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg1: [T1, lodash.__, T3, T4]): lodash.Function1<T2, R>;
2617 <T2, T3, T4>(func: lodash.__, arg2: [T2, T3, T4]): LodashPartialRight25x2<T2, T3, T4>;
2618 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg2: [T2, T3, T4]): lodash.Function1<T1, R>;
2619 <T1, T2, T3, T4>(func: lodash.__, arg1: [T1, T2, T3, T4]): LodashPartialRight26x2<T1, T2, T3, T4>;
2620 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg1: [T1, T2, T3, T4]): lodash.Function0<R>;
2621 (func: (...args: any[]) => any): LodashPartialRight27x1;
2622 (func: lodash.__, args: ReadonlyArray<any>): LodashPartialRight27x2;
2623 (func: (...args: any[]) => any, args: ReadonlyArray<any>): (...args: any[]) => any;
2624 placeholder: lodash.__;
2625 }
2626 type LodashPartialRight1x1<T1, R> = (arg1: [T1]) => lodash.Function0<R>;
2627 type LodashPartialRight1x2<T1> = <R>(func: lodash.Function1<T1, R>) => lodash.Function0<R>;
2628 interface LodashPartialRight2x1<T1, T2, R> {
2629 (arg1: [T1, lodash.__]): lodash.Function1<T2, R>;
2630 (arg2: [T2]): lodash.Function1<T1, R>;
2631 (arg1: [T1, T2]): lodash.Function0<R>;
2632 }
2633 type LodashPartialRight2x2<T1> = <T2, R>(func: lodash.Function2<T1, T2, R>) => lodash.Function1<T2, R>;
2634 type LodashPartialRight3x2<T2> = <T1, R>(func: lodash.Function2<T1, T2, R>) => lodash.Function1<T1, R>;
2635 type LodashPartialRight4x2<T1, T2> = <R>(func: lodash.Function2<T1, T2, R>) => lodash.Function0<R>;
2636 interface LodashPartialRight5x1<T1, T2, T3, R> {
2637 (arg1: [T1, lodash.__, lodash.__]): lodash.Function2<T2, T3, R>;
2638 (arg2: [T2, lodash.__]): lodash.Function2<T1, T3, R>;
2639 (arg1: [T1, T2, lodash.__]): lodash.Function1<T3, R>;
2640 (arg3: [T3]): lodash.Function2<T1, T2, R>;
2641 (arg1: [T1, lodash.__, T3]): lodash.Function1<T2, R>;
2642 (arg2: [T2, T3]): lodash.Function1<T1, R>;
2643 (arg1: [T1, T2, T3]): lodash.Function0<R>;
2644 }
2645 type LodashPartialRight5x2<T1> = <T2, T3, R>(func: lodash.Function3<T1, T2, T3, R>) => lodash.Function2<T2, T3, R>;
2646 type LodashPartialRight6x2<T2> = <T1, T3, R>(func: lodash.Function3<T1, T2, T3, R>) => lodash.Function2<T1, T3, R>;
2647 type LodashPartialRight7x2<T1, T2> = <T3, R>(func: lodash.Function3<T1, T2, T3, R>) => lodash.Function1<T3, R>;
2648 type LodashPartialRight8x2<T3> = <T1, T2, R>(func: lodash.Function3<T1, T2, T3, R>) => lodash.Function2<T1, T2, R>;
2649 type LodashPartialRight9x2<T1, T3> = <T2, R>(func: lodash.Function3<T1, T2, T3, R>) => lodash.Function1<T2, R>;
2650 type LodashPartialRight10x2<T2, T3> = <T1, R>(func: lodash.Function3<T1, T2, T3, R>) => lodash.Function1<T1, R>;
2651 type LodashPartialRight11x2<T1, T2, T3> = <R>(func: lodash.Function3<T1, T2, T3, R>) => lodash.Function0<R>;
2652 interface LodashPartialRight12x1<T1, T2, T3, T4, R> {
2653 (arg1: [T1, lodash.__, lodash.__, lodash.__]): lodash.Function3<T2, T3, T4, R>;
2654 (arg2: [T2, lodash.__, lodash.__]): lodash.Function3<T1, T3, T4, R>;
2655 (arg1: [T1, T2, lodash.__, lodash.__]): lodash.Function2<T3, T4, R>;
2656 (arg3: [T3, lodash.__]): lodash.Function3<T1, T2, T4, R>;
2657 (arg1: [T1, lodash.__, T3, lodash.__]): lodash.Function2<T2, T4, R>;
2658 (arg2: [T2, T3, lodash.__]): lodash.Function2<T1, T4, R>;
2659 (arg1: [T1, T2, T3, lodash.__]): lodash.Function1<T4, R>;
2660 (arg4: [T4]): lodash.Function3<T1, T2, T3, R>;
2661 (arg1: [T1, lodash.__, lodash.__, T4]): lodash.Function2<T2, T3, R>;
2662 (arg2: [T2, lodash.__, T4]): lodash.Function2<T1, T3, R>;
2663 (arg1: [T1, T2, lodash.__, T4]): lodash.Function1<T3, R>;
2664 (arg3: [T3, T4]): lodash.Function2<T1, T2, R>;
2665 (arg1: [T1, lodash.__, T3, T4]): lodash.Function1<T2, R>;
2666 (arg2: [T2, T3, T4]): lodash.Function1<T1, R>;
2667 (arg1: [T1, T2, T3, T4]): lodash.Function0<R>;
2668 }
2669 type LodashPartialRight12x2<T1> = <T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function3<T2, T3, T4, R>;
2670 type LodashPartialRight13x2<T2> = <T1, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function3<T1, T3, T4, R>;
2671 type LodashPartialRight14x2<T1, T2> = <T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function2<T3, T4, R>;
2672 type LodashPartialRight15x2<T3> = <T1, T2, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function3<T1, T2, T4, R>;
2673 type LodashPartialRight16x2<T1, T3> = <T2, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function2<T2, T4, R>;
2674 type LodashPartialRight17x2<T2, T3> = <T1, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function2<T1, T4, R>;
2675 type LodashPartialRight18x2<T1, T2, T3> = <T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function1<T4, R>;
2676 type LodashPartialRight19x2<T4> = <T1, T2, T3, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function3<T1, T2, T3, R>;
2677 type LodashPartialRight20x2<T1, T4> = <T2, T3, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function2<T2, T3, R>;
2678 type LodashPartialRight21x2<T2, T4> = <T1, T3, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function2<T1, T3, R>;
2679 type LodashPartialRight22x2<T1, T2, T4> = <T3, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function1<T3, R>;
2680 type LodashPartialRight23x2<T3, T4> = <T1, T2, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function2<T1, T2, R>;
2681 type LodashPartialRight24x2<T1, T3, T4> = <T2, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function1<T2, R>;
2682 type LodashPartialRight25x2<T2, T3, T4> = <T1, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function1<T1, R>;
2683 type LodashPartialRight26x2<T1, T2, T3, T4> = <R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function0<R>;
2684 type LodashPartialRight27x1 = (args: ReadonlyArray<any>) => (...args: any[]) => any;
2685 type LodashPartialRight27x2 = (func: (...args: any[]) => any) => (...args: any[]) => any;
2686 interface LodashPartition {
2687 <T, U extends T>(callback: lodash.ValueIteratorTypeGuard<T, U>): LodashPartition1x1<T, U>;
2688 <T>(callback: lodash.__, collection: lodash.List<T> | null | undefined): LodashPartition1x2<T>;
2689 <T, U extends T>(callback: lodash.ValueIteratorTypeGuard<T, U>, collection: lodash.List<T> | null | undefined): [U[], Array<Exclude<T, U>>];
2690 <T>(callback: lodash.ValueIteratee<T>): LodashPartition2x1<T>;
2691 <T>(callback: lodash.ValueIteratee<T>, collection: lodash.List<T> | null | undefined): [T[], T[]];
2692 <T extends object>(callback: lodash.__, collection: T | null | undefined): LodashPartition3x2<T>;
2693 <T extends object>(callback: lodash.ValueIteratee<T[keyof T]>, collection: T | null | undefined): [Array<T[keyof T]>, Array<T[keyof T]>];
2694 }
2695 type LodashPartition1x1<T, U> = (collection: lodash.List<T> | null | undefined) => [U[], Array<Exclude<T, U>>];
2696 interface LodashPartition1x2<T> {
2697 <U extends T>(callback: lodash.ValueIteratorTypeGuard<T, U>): [U[], Array<Exclude<T, U>>];
2698 (callback: lodash.ValueIteratee<T>): [T[], T[]];
2699 }
2700 type LodashPartition2x1<T> = (collection: lodash.List<T> | object | null | undefined) => [T[], T[]];
2701 type LodashPartition3x2<T> = (callback: lodash.ValueIteratee<T[keyof T]>) => [Array<T[keyof T]>, Array<T[keyof T]>];
2702 interface LodashPath {
2703 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey]): LodashPath1x1<TObject, TKey>;
2704 <TObject extends object>(path: lodash.__, object: TObject): LodashPath1x2<TObject>;
2705 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey], object: TObject): TObject[TKey];
2706 <TObject extends object>(path: lodash.__, object: TObject | null | undefined): LodashPath2x2<TObject>;
2707 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey], object: TObject | null | undefined): TObject[TKey] | undefined;
2708 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): LodashPath3x1<TObject, TKey1, TKey2>;
2709 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2], object: TObject): TObject[TKey1][TKey2];
2710 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2], object: TObject | null | undefined): TObject[TKey1][TKey2] | undefined;
2711 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3]): LodashPath5x1<TObject, TKey1, TKey2, TKey3>;
2712 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3], object: TObject): TObject[TKey1][TKey2][TKey3];
2713 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3], object: TObject | null | undefined): TObject[TKey1][TKey2][TKey3] | undefined;
2714 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4]): LodashPath7x1<TObject, TKey1, TKey2, TKey3, TKey4>;
2715 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4], object: TObject): TObject[TKey1][TKey2][TKey3][TKey4];
2716 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4], object: TObject | null | undefined): TObject[TKey1][TKey2][TKey3][TKey4] | undefined;
2717 (path: number): LodashPath9x1;
2718 <T>(path: lodash.__, object: lodash.NumericDictionary<T>): LodashPath9x2<T>;
2719 <T>(path: number, object: lodash.NumericDictionary<T>): T;
2720 <T>(path: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashPath10x2<T>;
2721 <T>(path: number, object: lodash.NumericDictionary<T> | null | undefined): T | undefined;
2722 (path: lodash.PropertyPath): LodashPath11x1;
2723 (path: lodash.__, object: null | undefined): LodashPath11x2;
2724 (path: lodash.PropertyPath, object: null | undefined): undefined;
2725 (path: lodash.__, object: any): LodashPath12x2;
2726 (path: lodash.PropertyPath, object: any): any;
2727 }
2728 interface LodashPath1x1<TObject, TKey extends keyof TObject> {
2729 (object: TObject): TObject[TKey];
2730 (object: TObject | null | undefined): TObject[TKey] | undefined;
2731 }
2732 interface LodashPath1x2<TObject> {
2733 <TKey extends keyof TObject>(path: TKey | [TKey]): TObject[TKey];
2734 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): TObject[TKey1][TKey2];
2735 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3]): TObject[TKey1][TKey2][TKey3];
2736 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4]): TObject[TKey1][TKey2][TKey3][TKey4];
2737 }
2738 interface LodashPath2x2<TObject> {
2739 <TKey extends keyof TObject>(path: TKey | [TKey]): TObject[TKey] | undefined;
2740 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): TObject[TKey1][TKey2] | undefined;
2741 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3]): TObject[TKey1][TKey2][TKey3] | undefined;
2742 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4]): TObject[TKey1][TKey2][TKey3][TKey4] | undefined;
2743 }
2744 interface LodashPath3x1<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]> {
2745 (object: TObject): TObject[TKey1][TKey2];
2746 (object: TObject | null | undefined): TObject[TKey1][TKey2] | undefined;
2747 }
2748 interface LodashPath5x1<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]> {
2749 (object: TObject): TObject[TKey1][TKey2][TKey3];
2750 (object: TObject | null | undefined): TObject[TKey1][TKey2][TKey3] | undefined;
2751 }
2752 interface LodashPath7x1<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]> {
2753 (object: TObject): TObject[TKey1][TKey2][TKey3][TKey4];
2754 (object: TObject | null | undefined): TObject[TKey1][TKey2][TKey3][TKey4] | undefined;
2755 }
2756 interface LodashPath9x1 {
2757 <T>(object: lodash.NumericDictionary<T>): T;
2758 <T>(object: lodash.NumericDictionary<T> | null | undefined): T | undefined;
2759 }
2760 type LodashPath9x2<T> = (path: number) => T;
2761 type LodashPath10x2<T> = (path: number) => T | undefined;
2762 interface LodashPath11x1 {
2763 (object: null | undefined): undefined;
2764 (object: any): any;
2765 }
2766 type LodashPath11x2 = (path: lodash.PropertyPath) => undefined;
2767 type LodashPath12x2 = (path: lodash.PropertyPath) => any;
2768 interface LodashPathOr {
2769 <TDefault>(defaultValue: TDefault): LodashPathOr1x1<TDefault>;
2770 <TObject extends object, TKey extends keyof TObject>(defaultValue: lodash.__, path: TKey | [TKey]): LodashPathOr1x2<TObject, TKey>;
2771 <TObject extends object, TKey extends keyof TObject, TDefault>(defaultValue: TDefault, path: TKey | [TKey]): LodashPathOr1x3<TObject, TKey, TDefault>;
2772 <TObject extends object>(defaultValue: lodash.__, path: lodash.__, object: TObject | null | undefined): LodashPathOr1x4<TObject>;
2773 <TObject extends object, TDefault>(defaultValue: TDefault, path: lodash.__, object: TObject | null | undefined): LodashPathOr1x5<TObject, TDefault>;
2774 <TObject extends object, TKey extends keyof TObject>(defaultValue: lodash.__, path: TKey | [TKey], object: TObject | null | undefined): LodashPathOr1x6<TObject, TKey>;
2775 <TObject extends object, TKey extends keyof TObject, TDefault>(defaultValue: TDefault, path: TKey | [TKey], object: TObject | null | undefined): Exclude<TObject[TKey], undefined> | TDefault;
2776 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(defaultValue: lodash.__, path: [TKey1, TKey2]): LodashPathOr2x2<TObject, TKey1, TKey2>;
2777 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TDefault>(defaultValue: TDefault, path: [TKey1, TKey2]): LodashPathOr2x3<TObject, TKey1, TKey2, TDefault>;
2778 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(defaultValue: lodash.__, path: [TKey1, TKey2], object: TObject | null | undefined): LodashPathOr2x6<TObject, TKey1, TKey2>;
2779 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TDefault>(defaultValue: TDefault, path: [TKey1, TKey2], object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2], undefined> | TDefault;
2780 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(defaultValue: lodash.__, path: [TKey1, TKey2, TKey3]): LodashPathOr3x2<TObject, TKey1, TKey2, TKey3>;
2781 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TDefault>(defaultValue: TDefault, path: [TKey1, TKey2, TKey3]): LodashPathOr3x3<TObject, TKey1, TKey2, TKey3, TDefault>;
2782 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(defaultValue: lodash.__, path: [TKey1, TKey2, TKey3], object: TObject | null | undefined): LodashPathOr3x6<TObject, TKey1, TKey2, TKey3>;
2783 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TDefault>(defaultValue: TDefault, path: [TKey1, TKey2, TKey3], object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2][TKey3], undefined> | TDefault;
2784 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(defaultValue: lodash.__, path: [TKey1, TKey2, TKey3, TKey4]): LodashPathOr4x2<TObject, TKey1, TKey2, TKey3, TKey4>;
2785 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3], TDefault>(defaultValue: TDefault, path: [TKey1, TKey2, TKey3, TKey4]): LodashPathOr4x3<TObject, TKey1, TKey2, TKey3, TKey4, TDefault>;
2786 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(defaultValue: lodash.__, path: [TKey1, TKey2, TKey3, TKey4], object: TObject | null | undefined): LodashPathOr4x6<TObject, TKey1, TKey2, TKey3, TKey4>;
2787 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3], TDefault>(defaultValue: TDefault, path: [TKey1, TKey2, TKey3, TKey4], object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2][TKey3][TKey4], undefined> | TDefault;
2788 (defaultValue: lodash.__, path: number): LodashPathOr5x2;
2789 <TDefault>(defaultValue: TDefault, path: number): LodashPathOr5x3<TDefault>;
2790 <T>(defaultValue: lodash.__, path: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashPathOr5x4<T>;
2791 <T, TDefault>(defaultValue: TDefault, path: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashPathOr5x5<T, TDefault>;
2792 <T>(defaultValue: lodash.__, path: number, object: lodash.NumericDictionary<T> | null | undefined): LodashPathOr5x6<T>;
2793 <T, TDefault>(defaultValue: TDefault, path: number, object: lodash.NumericDictionary<T> | null | undefined): T | TDefault;
2794 (defaultValue: lodash.__, path: lodash.PropertyPath): LodashPathOr6x2;
2795 <TDefault>(defaultValue: TDefault, path: lodash.PropertyPath): LodashPathOr6x3<TDefault>;
2796 (defaultValue: lodash.__, path: lodash.__, object: null | undefined): LodashPathOr6x4;
2797 <TDefault>(defaultValue: TDefault, path: lodash.__, object: null | undefined): LodashPathOr6x5<TDefault>;
2798 (defaultValue: lodash.__, path: lodash.PropertyPath, object: null | undefined): LodashPathOr6x6;
2799 <TDefault>(defaultValue: TDefault, path: lodash.PropertyPath, object: null | undefined): TDefault;
2800 (defaultValue: any): LodashPathOr7x1;
2801 (defaultValue: any, path: lodash.PropertyPath): LodashPathOr7x3;
2802 (defaultValue: lodash.__, path: lodash.__, object: any): LodashPathOr7x4;
2803 (defaultValue: any, path: lodash.__, object: any): LodashPathOr7x5;
2804 (defaultValue: lodash.__, path: lodash.PropertyPath, object: any): LodashPathOr7x6;
2805 (defaultValue: any, path: lodash.PropertyPath, object: any): any;
2806 }
2807 interface LodashPathOr1x1<TDefault> {
2808 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey]): LodashPathOr1x3<TObject, TKey, TDefault>;
2809 <TObject extends object>(path: lodash.__, object: TObject | null | undefined): LodashPathOr1x5<TObject, TDefault>;
2810 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey], object: TObject | null | undefined): Exclude<TObject[TKey], undefined> | TDefault;
2811 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): LodashPathOr2x3<TObject, TKey1, TKey2, TDefault>;
2812 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2], object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2], undefined> | TDefault;
2813 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3]): LodashPathOr3x3<TObject, TKey1, TKey2, TKey3, TDefault>;
2814 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3], object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2][TKey3], undefined> | TDefault;
2815 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4]): LodashPathOr4x3<TObject, TKey1, TKey2, TKey3, TKey4, TDefault>;
2816 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4], object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2][TKey3][TKey4], undefined> | TDefault;
2817 (path: number): LodashPathOr5x3<TDefault>;
2818 <T>(path: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashPathOr5x5<T, TDefault>;
2819 <T>(path: number, object: lodash.NumericDictionary<T> | null | undefined): T | TDefault;
2820 (path: lodash.PropertyPath): LodashPathOr6x3<TDefault>;
2821 (path: lodash.__, object: null | undefined): LodashPathOr6x5<TDefault>;
2822 (path: lodash.PropertyPath, object: null | undefined): TDefault;
2823 }
2824 interface LodashPathOr1x2<TObject, TKey extends keyof TObject> {
2825 <TDefault>(defaultValue: TDefault): LodashPathOr1x3<TObject, TKey, TDefault>;
2826 (defaultValue: lodash.__, object: TObject | null | undefined): LodashPathOr1x6<TObject, TKey>;
2827 <TDefault>(defaultValue: TDefault, object: TObject | null | undefined): Exclude<TObject[TKey], undefined> | TDefault;
2828 }
2829 type LodashPathOr1x3<TObject, TKey extends keyof TObject, TDefault> = (object: TObject | null | undefined) => Exclude<TObject[TKey], undefined> | TDefault;
2830 interface LodashPathOr1x4<TObject> {
2831 <TDefault>(defaultValue: TDefault): LodashPathOr1x5<TObject, TDefault>;
2832 <TKey extends keyof TObject>(defaultValue: lodash.__, path: TKey | [TKey]): LodashPathOr1x6<TObject, TKey>;
2833 <TKey extends keyof TObject, TDefault>(defaultValue: TDefault, path: TKey | [TKey]): Exclude<TObject[TKey], undefined> | TDefault;
2834 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(defaultValue: lodash.__, path: [TKey1, TKey2]): LodashPathOr2x6<TObject, TKey1, TKey2>;
2835 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TDefault>(defaultValue: TDefault, path: [TKey1, TKey2]): Exclude<TObject[TKey1][TKey2], undefined> | TDefault;
2836 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(defaultValue: lodash.__, path: [TKey1, TKey2, TKey3]): LodashPathOr3x6<TObject, TKey1, TKey2, TKey3>;
2837 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TDefault>(defaultValue: TDefault, path: [TKey1, TKey2, TKey3]): Exclude<TObject[TKey1][TKey2][TKey3], undefined> | TDefault;
2838 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(defaultValue: lodash.__, path: [TKey1, TKey2, TKey3, TKey4]): LodashPathOr4x6<TObject, TKey1, TKey2, TKey3, TKey4>;
2839 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3], TDefault>(defaultValue: TDefault, path: [TKey1, TKey2, TKey3, TKey4]): Exclude<TObject[TKey1][TKey2][TKey3][TKey4], undefined> | TDefault;
2840 }
2841 interface LodashPathOr1x5<TObject, TDefault> {
2842 <TKey extends keyof TObject>(path: TKey | [TKey]): Exclude<TObject[TKey], undefined> | TDefault;
2843 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): Exclude<TObject[TKey1][TKey2], undefined> | TDefault;
2844 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3]): Exclude<TObject[TKey1][TKey2][TKey3], undefined> | TDefault;
2845 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4]): Exclude<TObject[TKey1][TKey2][TKey3][TKey4], undefined> | TDefault;
2846 }
2847 type LodashPathOr1x6<TObject, TKey extends keyof TObject> = <TDefault>(defaultValue: TDefault) => Exclude<TObject[TKey], undefined> | TDefault;
2848 interface LodashPathOr2x2<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]> {
2849 <TDefault>(defaultValue: TDefault): LodashPathOr2x3<TObject, TKey1, TKey2, TDefault>;
2850 (defaultValue: lodash.__, object: TObject | null | undefined): LodashPathOr2x6<TObject, TKey1, TKey2>;
2851 <TDefault>(defaultValue: TDefault, object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2], undefined> | TDefault;
2852 }
2853 type LodashPathOr2x3<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TDefault> = (object: TObject | null | undefined) => Exclude<TObject[TKey1][TKey2], undefined> | TDefault;
2854 type LodashPathOr2x6<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]> = <TDefault>(defaultValue: TDefault) => Exclude<TObject[TKey1][TKey2], undefined> | TDefault;
2855 interface LodashPathOr3x2<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]> {
2856 <TDefault>(defaultValue: TDefault): LodashPathOr3x3<TObject, TKey1, TKey2, TKey3, TDefault>;
2857 (defaultValue: lodash.__, object: TObject | null | undefined): LodashPathOr3x6<TObject, TKey1, TKey2, TKey3>;
2858 <TDefault>(defaultValue: TDefault, object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2][TKey3], undefined> | TDefault;
2859 }
2860 type LodashPathOr3x3<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TDefault> = (object: TObject | null | undefined) => Exclude<TObject[TKey1][TKey2][TKey3], undefined> | TDefault;
2861 type LodashPathOr3x6<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]> = <TDefault>(defaultValue: TDefault) => Exclude<TObject[TKey1][TKey2][TKey3], undefined> | TDefault;
2862 interface LodashPathOr4x2<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]> {
2863 <TDefault>(defaultValue: TDefault): LodashPathOr4x3<TObject, TKey1, TKey2, TKey3, TKey4, TDefault>;
2864 (defaultValue: lodash.__, object: TObject | null | undefined): LodashPathOr4x6<TObject, TKey1, TKey2, TKey3, TKey4>;
2865 <TDefault>(defaultValue: TDefault, object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2][TKey3][TKey4], undefined> | TDefault;
2866 }
2867 type LodashPathOr4x3<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3], TDefault> = (object: TObject | null | undefined) => Exclude<TObject[TKey1][TKey2][TKey3][TKey4], undefined> | TDefault;
2868 type LodashPathOr4x6<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]> = <TDefault>(defaultValue: TDefault) => Exclude<TObject[TKey1][TKey2][TKey3][TKey4], undefined> | TDefault;
2869 interface LodashPathOr5x2 {
2870 <TDefault>(defaultValue: TDefault): LodashPathOr5x3<TDefault>;
2871 <T>(defaultValue: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashPathOr5x6<T>;
2872 <T, TDefault>(defaultValue: TDefault, object: lodash.NumericDictionary<T> | null | undefined): T | TDefault;
2873 }
2874 type LodashPathOr5x3<TDefault> = <T>(object: lodash.NumericDictionary<T> | null | undefined) => T | TDefault;
2875 interface LodashPathOr5x4<T> {
2876 <TDefault>(defaultValue: TDefault): LodashPathOr5x5<T, TDefault>;
2877 (defaultValue: lodash.__, path: number): LodashPathOr5x6<T>;
2878 <TDefault>(defaultValue: TDefault, path: number): T | TDefault;
2879 }
2880 type LodashPathOr5x5<T, TDefault> = (path: number) => T | TDefault;
2881 type LodashPathOr5x6<T> = <TDefault>(defaultValue: TDefault) => T | TDefault;
2882 interface LodashPathOr6x2 {
2883 <TDefault>(defaultValue: TDefault): LodashPathOr6x3<TDefault>;
2884 (defaultValue: lodash.__, object: null | undefined): LodashPathOr6x6;
2885 <TDefault>(defaultValue: TDefault, object: null | undefined): TDefault;
2886 (defaultValue: any): LodashPathOr7x3;
2887 (defaultValue: lodash.__, object: any): LodashPathOr7x6;
2888 (defaultValue: any, object: any): any;
2889 }
2890 type LodashPathOr6x3<TDefault> = (object: null | undefined) => TDefault;
2891 interface LodashPathOr6x4 {
2892 <TDefault>(defaultValue: TDefault): LodashPathOr6x5<TDefault>;
2893 (defaultValue: lodash.__, path: lodash.PropertyPath): LodashPathOr6x6;
2894 <TDefault>(defaultValue: TDefault, path: lodash.PropertyPath): TDefault;
2895 }
2896 type LodashPathOr6x5<TDefault> = (path: lodash.PropertyPath) => TDefault;
2897 type LodashPathOr6x6 = <TDefault>(defaultValue: TDefault) => TDefault;
2898 interface LodashPathOr7x1 {
2899 (path: lodash.PropertyPath): LodashPathOr7x3;
2900 (path: lodash.__, object: any): LodashPathOr7x5;
2901 (path: lodash.PropertyPath, object: any): any;
2902 }
2903 type LodashPathOr7x3 = (object: any) => any;
2904 interface LodashPathOr7x4 {
2905 (defaultValue: any): LodashPathOr7x5;
2906 (defaultValue: lodash.__, path: lodash.PropertyPath): LodashPathOr7x6;
2907 (defaultValue: any, path: lodash.PropertyPath): any;
2908 }
2909 type LodashPathOr7x5 = (path: lodash.PropertyPath) => any;
2910 type LodashPathOr7x6 = (defaultValue: any) => any;
2911 interface LodashPick {
2912 <T extends object, U extends keyof T>(props: lodash.Many<U>): LodashPick1x1<T, U>;
2913 <T extends object>(props: lodash.__, object: T): LodashPick1x2<T>;
2914 <T extends object, U extends keyof T>(props: lodash.Many<U>, object: T): Pick<T, U>;
2915 (props: lodash.PropertyPath): LodashPick2x1;
2916 <T>(props: lodash.__, object: T | null | undefined): LodashPick2x2<T>;
2917 <T>(props: lodash.PropertyPath, object: T | null | undefined): lodash.PartialObject<T>;
2918 }
2919 type LodashPick1x1<T, U extends keyof T> = (object: T) => Pick<T, U>;
2920 type LodashPick1x2<T> = <U extends keyof T>(props: lodash.Many<U>) => Pick<T, U>;
2921 type LodashPick2x1 = <T>(object: T | null | undefined) => lodash.PartialObject<T>;
2922 type LodashPick2x2<T> = (props: lodash.PropertyPath) => lodash.PartialObject<T>;
2923 interface LodashPickBy {
2924 <T, S extends T>(predicate: lodash.ValueKeyIterateeTypeGuard<T, S>): LodashPickBy1x1<T, S>;
2925 <T>(predicate: lodash.__, object: lodash.Dictionary<T> | null | undefined): LodashPickBy1x2<T>;
2926 <T, S extends T>(predicate: lodash.ValueKeyIterateeTypeGuard<T, S>, object: lodash.Dictionary<T> | null | undefined): lodash.Dictionary<S>;
2927 <T>(predicate: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashPickBy2x2<T>;
2928 <T, S extends T>(predicate: lodash.ValueKeyIterateeTypeGuard<T, S>, object: lodash.NumericDictionary<T> | null | undefined): lodash.NumericDictionary<S>;
2929 <T>(predicate: lodash.ValueKeyIteratee<T>): LodashPickBy3x1<T>;
2930 <T>(predicate: lodash.ValueKeyIteratee<T>, object: lodash.Dictionary<T> | null | undefined): lodash.Dictionary<T>;
2931 <T>(predicate: lodash.ValueKeyIteratee<T>, object: lodash.NumericDictionary<T> | null | undefined): lodash.NumericDictionary<T>;
2932 <T extends object>(predicate: lodash.__, object: T | null | undefined): LodashPickBy5x2<T>;
2933 <T extends object>(predicate: lodash.ValueKeyIteratee<T[keyof T]>, object: T | null | undefined): lodash.PartialObject<T>;
2934 }
2935 interface LodashPickBy1x1<T, S> {
2936 (object: lodash.Dictionary<T> | null | undefined): lodash.Dictionary<S>;
2937 (object: lodash.NumericDictionary<T> | null | undefined): lodash.NumericDictionary<S>;
2938 }
2939 interface LodashPickBy1x2<T> {
2940 <S extends T>(predicate: lodash.ValueKeyIterateeTypeGuard<T, S>): lodash.Dictionary<S>;
2941 (predicate: lodash.ValueKeyIteratee<T>): lodash.Dictionary<T>;
2942 }
2943 interface LodashPickBy2x2<T> {
2944 <S extends T>(predicate: lodash.ValueKeyIterateeTypeGuard<T, S>): lodash.NumericDictionary<S>;
2945 (predicate: lodash.ValueKeyIteratee<T>): lodash.NumericDictionary<T>;
2946 }
2947 interface LodashPickBy3x1<T> {
2948 (object: lodash.Dictionary<T> | null | undefined): lodash.Dictionary<T>;
2949 (object: lodash.NumericDictionary<T> | null | undefined): lodash.NumericDictionary<T>;
2950 <T1 extends object>(object: T1 | null | undefined): lodash.PartialObject<T1>;
2951 }
2952 type LodashPickBy5x2<T> = (predicate: lodash.ValueKeyIteratee<T[keyof T]>) => lodash.PartialObject<T>;
2953 interface LodashProp {
2954 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey]): LodashProp1x1<TObject, TKey>;
2955 <TObject extends object>(path: lodash.__, object: TObject): LodashProp1x2<TObject>;
2956 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey], object: TObject): TObject[TKey];
2957 <TObject extends object>(path: lodash.__, object: TObject | null | undefined): LodashProp2x2<TObject>;
2958 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey], object: TObject | null | undefined): TObject[TKey] | undefined;
2959 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): LodashProp3x1<TObject, TKey1, TKey2>;
2960 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2], object: TObject): TObject[TKey1][TKey2];
2961 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2], object: TObject | null | undefined): TObject[TKey1][TKey2] | undefined;
2962 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3]): LodashProp5x1<TObject, TKey1, TKey2, TKey3>;
2963 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3], object: TObject): TObject[TKey1][TKey2][TKey3];
2964 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3], object: TObject | null | undefined): TObject[TKey1][TKey2][TKey3] | undefined;
2965 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4]): LodashProp7x1<TObject, TKey1, TKey2, TKey3, TKey4>;
2966 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4], object: TObject): TObject[TKey1][TKey2][TKey3][TKey4];
2967 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4], object: TObject | null | undefined): TObject[TKey1][TKey2][TKey3][TKey4] | undefined;
2968 (path: number): LodashProp9x1;
2969 <T>(path: lodash.__, object: lodash.NumericDictionary<T>): LodashProp9x2<T>;
2970 <T>(path: number, object: lodash.NumericDictionary<T>): T;
2971 <T>(path: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashProp10x2<T>;
2972 <T>(path: number, object: lodash.NumericDictionary<T> | null | undefined): T | undefined;
2973 (path: lodash.PropertyPath): LodashProp11x1;
2974 (path: lodash.__, object: null | undefined): LodashProp11x2;
2975 (path: lodash.PropertyPath, object: null | undefined): undefined;
2976 (path: lodash.__, object: any): LodashProp12x2;
2977 (path: lodash.PropertyPath, object: any): any;
2978 }
2979 interface LodashProp1x1<TObject, TKey extends keyof TObject> {
2980 (object: TObject): TObject[TKey];
2981 (object: TObject | null | undefined): TObject[TKey] | undefined;
2982 }
2983 interface LodashProp1x2<TObject> {
2984 <TKey extends keyof TObject>(path: TKey | [TKey]): TObject[TKey];
2985 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): TObject[TKey1][TKey2];
2986 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3]): TObject[TKey1][TKey2][TKey3];
2987 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4]): TObject[TKey1][TKey2][TKey3][TKey4];
2988 }
2989 interface LodashProp2x2<TObject> {
2990 <TKey extends keyof TObject>(path: TKey | [TKey]): TObject[TKey] | undefined;
2991 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): TObject[TKey1][TKey2] | undefined;
2992 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3]): TObject[TKey1][TKey2][TKey3] | undefined;
2993 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4]): TObject[TKey1][TKey2][TKey3][TKey4] | undefined;
2994 }
2995 interface LodashProp3x1<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]> {
2996 (object: TObject): TObject[TKey1][TKey2];
2997 (object: TObject | null | undefined): TObject[TKey1][TKey2] | undefined;
2998 }
2999 interface LodashProp5x1<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]> {
3000 (object: TObject): TObject[TKey1][TKey2][TKey3];
3001 (object: TObject | null | undefined): TObject[TKey1][TKey2][TKey3] | undefined;
3002 }
3003 interface LodashProp7x1<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]> {
3004 (object: TObject): TObject[TKey1][TKey2][TKey3][TKey4];
3005 (object: TObject | null | undefined): TObject[TKey1][TKey2][TKey3][TKey4] | undefined;
3006 }
3007 interface LodashProp9x1 {
3008 <T>(object: lodash.NumericDictionary<T>): T;
3009 <T>(object: lodash.NumericDictionary<T> | null | undefined): T | undefined;
3010 }
3011 type LodashProp9x2<T> = (path: number) => T;
3012 type LodashProp10x2<T> = (path: number) => T | undefined;
3013 interface LodashProp11x1 {
3014 (object: null | undefined): undefined;
3015 (object: any): any;
3016 }
3017 type LodashProp11x2 = (path: lodash.PropertyPath) => undefined;
3018 type LodashProp12x2 = (path: lodash.PropertyPath) => any;
3019 interface LodashProperty {
3020 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey]): LodashProperty1x1<TObject, TKey>;
3021 <TObject extends object>(path: lodash.__, object: TObject): LodashProperty1x2<TObject>;
3022 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey], object: TObject): TObject[TKey];
3023 <TObject extends object>(path: lodash.__, object: TObject | null | undefined): LodashProperty2x2<TObject>;
3024 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey], object: TObject | null | undefined): TObject[TKey] | undefined;
3025 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): LodashProperty3x1<TObject, TKey1, TKey2>;
3026 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2], object: TObject): TObject[TKey1][TKey2];
3027 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2], object: TObject | null | undefined): TObject[TKey1][TKey2] | undefined;
3028 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3]): LodashProperty5x1<TObject, TKey1, TKey2, TKey3>;
3029 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3], object: TObject): TObject[TKey1][TKey2][TKey3];
3030 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3], object: TObject | null | undefined): TObject[TKey1][TKey2][TKey3] | undefined;
3031 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4]): LodashProperty7x1<TObject, TKey1, TKey2, TKey3, TKey4>;
3032 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4], object: TObject): TObject[TKey1][TKey2][TKey3][TKey4];
3033 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4], object: TObject | null | undefined): TObject[TKey1][TKey2][TKey3][TKey4] | undefined;
3034 (path: number): LodashProperty9x1;
3035 <T>(path: lodash.__, object: lodash.NumericDictionary<T>): LodashProperty9x2<T>;
3036 <T>(path: number, object: lodash.NumericDictionary<T>): T;
3037 <T>(path: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashProperty10x2<T>;
3038 <T>(path: number, object: lodash.NumericDictionary<T> | null | undefined): T | undefined;
3039 (path: lodash.PropertyPath): LodashProperty11x1;
3040 (path: lodash.__, object: null | undefined): LodashProperty11x2;
3041 (path: lodash.PropertyPath, object: null | undefined): undefined;
3042 (path: lodash.__, object: any): LodashProperty12x2;
3043 (path: lodash.PropertyPath, object: any): any;
3044 }
3045 interface LodashProperty1x1<TObject, TKey extends keyof TObject> {
3046 (object: TObject): TObject[TKey];
3047 (object: TObject | null | undefined): TObject[TKey] | undefined;
3048 }
3049 interface LodashProperty1x2<TObject> {
3050 <TKey extends keyof TObject>(path: TKey | [TKey]): TObject[TKey];
3051 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): TObject[TKey1][TKey2];
3052 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3]): TObject[TKey1][TKey2][TKey3];
3053 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4]): TObject[TKey1][TKey2][TKey3][TKey4];
3054 }
3055 interface LodashProperty2x2<TObject> {
3056 <TKey extends keyof TObject>(path: TKey | [TKey]): TObject[TKey] | undefined;
3057 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): TObject[TKey1][TKey2] | undefined;
3058 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3]): TObject[TKey1][TKey2][TKey3] | undefined;
3059 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4]): TObject[TKey1][TKey2][TKey3][TKey4] | undefined;
3060 }
3061 interface LodashProperty3x1<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]> {
3062 (object: TObject): TObject[TKey1][TKey2];
3063 (object: TObject | null | undefined): TObject[TKey1][TKey2] | undefined;
3064 }
3065 interface LodashProperty5x1<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]> {
3066 (object: TObject): TObject[TKey1][TKey2][TKey3];
3067 (object: TObject | null | undefined): TObject[TKey1][TKey2][TKey3] | undefined;
3068 }
3069 interface LodashProperty7x1<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]> {
3070 (object: TObject): TObject[TKey1][TKey2][TKey3][TKey4];
3071 (object: TObject | null | undefined): TObject[TKey1][TKey2][TKey3][TKey4] | undefined;
3072 }
3073 interface LodashProperty9x1 {
3074 <T>(object: lodash.NumericDictionary<T>): T;
3075 <T>(object: lodash.NumericDictionary<T> | null | undefined): T | undefined;
3076 }
3077 type LodashProperty9x2<T> = (path: number) => T;
3078 type LodashProperty10x2<T> = (path: number) => T | undefined;
3079 interface LodashProperty11x1 {
3080 (object: null | undefined): undefined;
3081 (object: any): any;
3082 }
3083 type LodashProperty11x2 = (path: lodash.PropertyPath) => undefined;
3084 type LodashProperty12x2 = (path: lodash.PropertyPath) => any;
3085 interface LodashPropertyOf {
3086 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey]): LodashPropertyOf1x1<TObject, TKey>;
3087 <TObject extends object>(path: lodash.__, object: TObject): LodashPropertyOf1x2<TObject>;
3088 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey], object: TObject): TObject[TKey];
3089 <TObject extends object>(path: lodash.__, object: TObject | null | undefined): LodashPropertyOf2x2<TObject>;
3090 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey], object: TObject | null | undefined): TObject[TKey] | undefined;
3091 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): LodashPropertyOf3x1<TObject, TKey1, TKey2>;
3092 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2], object: TObject): TObject[TKey1][TKey2];
3093 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2], object: TObject | null | undefined): TObject[TKey1][TKey2] | undefined;
3094 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3]): LodashPropertyOf5x1<TObject, TKey1, TKey2, TKey3>;
3095 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3], object: TObject): TObject[TKey1][TKey2][TKey3];
3096 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3], object: TObject | null | undefined): TObject[TKey1][TKey2][TKey3] | undefined;
3097 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4]): LodashPropertyOf7x1<TObject, TKey1, TKey2, TKey3, TKey4>;
3098 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4], object: TObject): TObject[TKey1][TKey2][TKey3][TKey4];
3099 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4], object: TObject | null | undefined): TObject[TKey1][TKey2][TKey3][TKey4] | undefined;
3100 (path: number): LodashPropertyOf9x1;
3101 <T>(path: lodash.__, object: lodash.NumericDictionary<T>): LodashPropertyOf9x2<T>;
3102 <T>(path: number, object: lodash.NumericDictionary<T>): T;
3103 <T>(path: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashPropertyOf10x2<T>;
3104 <T>(path: number, object: lodash.NumericDictionary<T> | null | undefined): T | undefined;
3105 (path: lodash.PropertyPath): LodashPropertyOf11x1;
3106 (path: lodash.__, object: null | undefined): LodashPropertyOf11x2;
3107 (path: lodash.PropertyPath, object: null | undefined): undefined;
3108 (path: lodash.__, object: any): LodashPropertyOf12x2;
3109 (path: lodash.PropertyPath, object: any): any;
3110 }
3111 interface LodashPropertyOf1x1<TObject, TKey extends keyof TObject> {
3112 (object: TObject): TObject[TKey];
3113 (object: TObject | null | undefined): TObject[TKey] | undefined;
3114 }
3115 interface LodashPropertyOf1x2<TObject> {
3116 <TKey extends keyof TObject>(path: TKey | [TKey]): TObject[TKey];
3117 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): TObject[TKey1][TKey2];
3118 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3]): TObject[TKey1][TKey2][TKey3];
3119 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4]): TObject[TKey1][TKey2][TKey3][TKey4];
3120 }
3121 interface LodashPropertyOf2x2<TObject> {
3122 <TKey extends keyof TObject>(path: TKey | [TKey]): TObject[TKey] | undefined;
3123 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): TObject[TKey1][TKey2] | undefined;
3124 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3]): TObject[TKey1][TKey2][TKey3] | undefined;
3125 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4]): TObject[TKey1][TKey2][TKey3][TKey4] | undefined;
3126 }
3127 interface LodashPropertyOf3x1<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]> {
3128 (object: TObject): TObject[TKey1][TKey2];
3129 (object: TObject | null | undefined): TObject[TKey1][TKey2] | undefined;
3130 }
3131 interface LodashPropertyOf5x1<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]> {
3132 (object: TObject): TObject[TKey1][TKey2][TKey3];
3133 (object: TObject | null | undefined): TObject[TKey1][TKey2][TKey3] | undefined;
3134 }
3135 interface LodashPropertyOf7x1<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]> {
3136 (object: TObject): TObject[TKey1][TKey2][TKey3][TKey4];
3137 (object: TObject | null | undefined): TObject[TKey1][TKey2][TKey3][TKey4] | undefined;
3138 }
3139 interface LodashPropertyOf9x1 {
3140 <T>(object: lodash.NumericDictionary<T>): T;
3141 <T>(object: lodash.NumericDictionary<T> | null | undefined): T | undefined;
3142 }
3143 type LodashPropertyOf9x2<T> = (path: number) => T;
3144 type LodashPropertyOf10x2<T> = (path: number) => T | undefined;
3145 interface LodashPropertyOf11x1 {
3146 (object: null | undefined): undefined;
3147 (object: any): any;
3148 }
3149 type LodashPropertyOf11x2 = (path: lodash.PropertyPath) => undefined;
3150 type LodashPropertyOf12x2 = (path: lodash.PropertyPath) => any;
3151 interface LodashPropOr {
3152 <TDefault>(defaultValue: TDefault): LodashPropOr1x1<TDefault>;
3153 <TObject extends object, TKey extends keyof TObject>(defaultValue: lodash.__, path: TKey | [TKey]): LodashPropOr1x2<TObject, TKey>;
3154 <TObject extends object, TKey extends keyof TObject, TDefault>(defaultValue: TDefault, path: TKey | [TKey]): LodashPropOr1x3<TObject, TKey, TDefault>;
3155 <TObject extends object>(defaultValue: lodash.__, path: lodash.__, object: TObject | null | undefined): LodashPropOr1x4<TObject>;
3156 <TObject extends object, TDefault>(defaultValue: TDefault, path: lodash.__, object: TObject | null | undefined): LodashPropOr1x5<TObject, TDefault>;
3157 <TObject extends object, TKey extends keyof TObject>(defaultValue: lodash.__, path: TKey | [TKey], object: TObject | null | undefined): LodashPropOr1x6<TObject, TKey>;
3158 <TObject extends object, TKey extends keyof TObject, TDefault>(defaultValue: TDefault, path: TKey | [TKey], object: TObject | null | undefined): Exclude<TObject[TKey], undefined> | TDefault;
3159 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(defaultValue: lodash.__, path: [TKey1, TKey2]): LodashPropOr2x2<TObject, TKey1, TKey2>;
3160 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TDefault>(defaultValue: TDefault, path: [TKey1, TKey2]): LodashPropOr2x3<TObject, TKey1, TKey2, TDefault>;
3161 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(defaultValue: lodash.__, path: [TKey1, TKey2], object: TObject | null | undefined): LodashPropOr2x6<TObject, TKey1, TKey2>;
3162 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TDefault>(defaultValue: TDefault, path: [TKey1, TKey2], object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2], undefined> | TDefault;
3163 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(defaultValue: lodash.__, path: [TKey1, TKey2, TKey3]): LodashPropOr3x2<TObject, TKey1, TKey2, TKey3>;
3164 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TDefault>(defaultValue: TDefault, path: [TKey1, TKey2, TKey3]): LodashPropOr3x3<TObject, TKey1, TKey2, TKey3, TDefault>;
3165 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(defaultValue: lodash.__, path: [TKey1, TKey2, TKey3], object: TObject | null | undefined): LodashPropOr3x6<TObject, TKey1, TKey2, TKey3>;
3166 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TDefault>(defaultValue: TDefault, path: [TKey1, TKey2, TKey3], object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2][TKey3], undefined> | TDefault;
3167 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(defaultValue: lodash.__, path: [TKey1, TKey2, TKey3, TKey4]): LodashPropOr4x2<TObject, TKey1, TKey2, TKey3, TKey4>;
3168 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3], TDefault>(defaultValue: TDefault, path: [TKey1, TKey2, TKey3, TKey4]): LodashPropOr4x3<TObject, TKey1, TKey2, TKey3, TKey4, TDefault>;
3169 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(defaultValue: lodash.__, path: [TKey1, TKey2, TKey3, TKey4], object: TObject | null | undefined): LodashPropOr4x6<TObject, TKey1, TKey2, TKey3, TKey4>;
3170 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3], TDefault>(defaultValue: TDefault, path: [TKey1, TKey2, TKey3, TKey4], object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2][TKey3][TKey4], undefined> | TDefault;
3171 (defaultValue: lodash.__, path: number): LodashPropOr5x2;
3172 <TDefault>(defaultValue: TDefault, path: number): LodashPropOr5x3<TDefault>;
3173 <T>(defaultValue: lodash.__, path: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashPropOr5x4<T>;
3174 <T, TDefault>(defaultValue: TDefault, path: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashPropOr5x5<T, TDefault>;
3175 <T>(defaultValue: lodash.__, path: number, object: lodash.NumericDictionary<T> | null | undefined): LodashPropOr5x6<T>;
3176 <T, TDefault>(defaultValue: TDefault, path: number, object: lodash.NumericDictionary<T> | null | undefined): T | TDefault;
3177 (defaultValue: lodash.__, path: lodash.PropertyPath): LodashPropOr6x2;
3178 <TDefault>(defaultValue: TDefault, path: lodash.PropertyPath): LodashPropOr6x3<TDefault>;
3179 (defaultValue: lodash.__, path: lodash.__, object: null | undefined): LodashPropOr6x4;
3180 <TDefault>(defaultValue: TDefault, path: lodash.__, object: null | undefined): LodashPropOr6x5<TDefault>;
3181 (defaultValue: lodash.__, path: lodash.PropertyPath, object: null | undefined): LodashPropOr6x6;
3182 <TDefault>(defaultValue: TDefault, path: lodash.PropertyPath, object: null | undefined): TDefault;
3183 (defaultValue: any): LodashPropOr7x1;
3184 (defaultValue: any, path: lodash.PropertyPath): LodashPropOr7x3;
3185 (defaultValue: lodash.__, path: lodash.__, object: any): LodashPropOr7x4;
3186 (defaultValue: any, path: lodash.__, object: any): LodashPropOr7x5;
3187 (defaultValue: lodash.__, path: lodash.PropertyPath, object: any): LodashPropOr7x6;
3188 (defaultValue: any, path: lodash.PropertyPath, object: any): any;
3189 }
3190 interface LodashPropOr1x1<TDefault> {
3191 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey]): LodashPropOr1x3<TObject, TKey, TDefault>;
3192 <TObject extends object>(path: lodash.__, object: TObject | null | undefined): LodashPropOr1x5<TObject, TDefault>;
3193 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey], object: TObject | null | undefined): Exclude<TObject[TKey], undefined> | TDefault;
3194 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): LodashPropOr2x3<TObject, TKey1, TKey2, TDefault>;
3195 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2], object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2], undefined> | TDefault;
3196 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3]): LodashPropOr3x3<TObject, TKey1, TKey2, TKey3, TDefault>;
3197 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3], object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2][TKey3], undefined> | TDefault;
3198 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4]): LodashPropOr4x3<TObject, TKey1, TKey2, TKey3, TKey4, TDefault>;
3199 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4], object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2][TKey3][TKey4], undefined> | TDefault;
3200 (path: number): LodashPropOr5x3<TDefault>;
3201 <T>(path: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashPropOr5x5<T, TDefault>;
3202 <T>(path: number, object: lodash.NumericDictionary<T> | null | undefined): T | TDefault;
3203 (path: lodash.PropertyPath): LodashPropOr6x3<TDefault>;
3204 (path: lodash.__, object: null | undefined): LodashPropOr6x5<TDefault>;
3205 (path: lodash.PropertyPath, object: null | undefined): TDefault;
3206 }
3207 interface LodashPropOr1x2<TObject, TKey extends keyof TObject> {
3208 <TDefault>(defaultValue: TDefault): LodashPropOr1x3<TObject, TKey, TDefault>;
3209 (defaultValue: lodash.__, object: TObject | null | undefined): LodashPropOr1x6<TObject, TKey>;
3210 <TDefault>(defaultValue: TDefault, object: TObject | null | undefined): Exclude<TObject[TKey], undefined> | TDefault;
3211 }
3212 type LodashPropOr1x3<TObject, TKey extends keyof TObject, TDefault> = (object: TObject | null | undefined) => Exclude<TObject[TKey], undefined> | TDefault;
3213 interface LodashPropOr1x4<TObject> {
3214 <TDefault>(defaultValue: TDefault): LodashPropOr1x5<TObject, TDefault>;
3215 <TKey extends keyof TObject>(defaultValue: lodash.__, path: TKey | [TKey]): LodashPropOr1x6<TObject, TKey>;
3216 <TKey extends keyof TObject, TDefault>(defaultValue: TDefault, path: TKey | [TKey]): Exclude<TObject[TKey], undefined> | TDefault;
3217 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(defaultValue: lodash.__, path: [TKey1, TKey2]): LodashPropOr2x6<TObject, TKey1, TKey2>;
3218 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TDefault>(defaultValue: TDefault, path: [TKey1, TKey2]): Exclude<TObject[TKey1][TKey2], undefined> | TDefault;
3219 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(defaultValue: lodash.__, path: [TKey1, TKey2, TKey3]): LodashPropOr3x6<TObject, TKey1, TKey2, TKey3>;
3220 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TDefault>(defaultValue: TDefault, path: [TKey1, TKey2, TKey3]): Exclude<TObject[TKey1][TKey2][TKey3], undefined> | TDefault;
3221 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(defaultValue: lodash.__, path: [TKey1, TKey2, TKey3, TKey4]): LodashPropOr4x6<TObject, TKey1, TKey2, TKey3, TKey4>;
3222 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3], TDefault>(defaultValue: TDefault, path: [TKey1, TKey2, TKey3, TKey4]): Exclude<TObject[TKey1][TKey2][TKey3][TKey4], undefined> | TDefault;
3223 }
3224 interface LodashPropOr1x5<TObject, TDefault> {
3225 <TKey extends keyof TObject>(path: TKey | [TKey]): Exclude<TObject[TKey], undefined> | TDefault;
3226 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): Exclude<TObject[TKey1][TKey2], undefined> | TDefault;
3227 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3]): Exclude<TObject[TKey1][TKey2][TKey3], undefined> | TDefault;
3228 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(path: [TKey1, TKey2, TKey3, TKey4]): Exclude<TObject[TKey1][TKey2][TKey3][TKey4], undefined> | TDefault;
3229 }
3230 type LodashPropOr1x6<TObject, TKey extends keyof TObject> = <TDefault>(defaultValue: TDefault) => Exclude<TObject[TKey], undefined> | TDefault;
3231 interface LodashPropOr2x2<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]> {
3232 <TDefault>(defaultValue: TDefault): LodashPropOr2x3<TObject, TKey1, TKey2, TDefault>;
3233 (defaultValue: lodash.__, object: TObject | null | undefined): LodashPropOr2x6<TObject, TKey1, TKey2>;
3234 <TDefault>(defaultValue: TDefault, object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2], undefined> | TDefault;
3235 }
3236 type LodashPropOr2x3<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TDefault> = (object: TObject | null | undefined) => Exclude<TObject[TKey1][TKey2], undefined> | TDefault;
3237 type LodashPropOr2x6<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]> = <TDefault>(defaultValue: TDefault) => Exclude<TObject[TKey1][TKey2], undefined> | TDefault;
3238 interface LodashPropOr3x2<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]> {
3239 <TDefault>(defaultValue: TDefault): LodashPropOr3x3<TObject, TKey1, TKey2, TKey3, TDefault>;
3240 (defaultValue: lodash.__, object: TObject | null | undefined): LodashPropOr3x6<TObject, TKey1, TKey2, TKey3>;
3241 <TDefault>(defaultValue: TDefault, object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2][TKey3], undefined> | TDefault;
3242 }
3243 type LodashPropOr3x3<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TDefault> = (object: TObject | null | undefined) => Exclude<TObject[TKey1][TKey2][TKey3], undefined> | TDefault;
3244 type LodashPropOr3x6<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]> = <TDefault>(defaultValue: TDefault) => Exclude<TObject[TKey1][TKey2][TKey3], undefined> | TDefault;
3245 interface LodashPropOr4x2<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]> {
3246 <TDefault>(defaultValue: TDefault): LodashPropOr4x3<TObject, TKey1, TKey2, TKey3, TKey4, TDefault>;
3247 (defaultValue: lodash.__, object: TObject | null | undefined): LodashPropOr4x6<TObject, TKey1, TKey2, TKey3, TKey4>;
3248 <TDefault>(defaultValue: TDefault, object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2][TKey3][TKey4], undefined> | TDefault;
3249 }
3250 type LodashPropOr4x3<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3], TDefault> = (object: TObject | null | undefined) => Exclude<TObject[TKey1][TKey2][TKey3][TKey4], undefined> | TDefault;
3251 type LodashPropOr4x6<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]> = <TDefault>(defaultValue: TDefault) => Exclude<TObject[TKey1][TKey2][TKey3][TKey4], undefined> | TDefault;
3252 interface LodashPropOr5x2 {
3253 <TDefault>(defaultValue: TDefault): LodashPropOr5x3<TDefault>;
3254 <T>(defaultValue: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashPropOr5x6<T>;
3255 <T, TDefault>(defaultValue: TDefault, object: lodash.NumericDictionary<T> | null | undefined): T | TDefault;
3256 }
3257 type LodashPropOr5x3<TDefault> = <T>(object: lodash.NumericDictionary<T> | null | undefined) => T | TDefault;
3258 interface LodashPropOr5x4<T> {
3259 <TDefault>(defaultValue: TDefault): LodashPropOr5x5<T, TDefault>;
3260 (defaultValue: lodash.__, path: number): LodashPropOr5x6<T>;
3261 <TDefault>(defaultValue: TDefault, path: number): T | TDefault;
3262 }
3263 type LodashPropOr5x5<T, TDefault> = (path: number) => T | TDefault;
3264 type LodashPropOr5x6<T> = <TDefault>(defaultValue: TDefault) => T | TDefault;
3265 interface LodashPropOr6x2 {
3266 <TDefault>(defaultValue: TDefault): LodashPropOr6x3<TDefault>;
3267 (defaultValue: lodash.__, object: null | undefined): LodashPropOr6x6;
3268 <TDefault>(defaultValue: TDefault, object: null | undefined): TDefault;
3269 (defaultValue: any): LodashPropOr7x3;
3270 (defaultValue: lodash.__, object: any): LodashPropOr7x6;
3271 (defaultValue: any, object: any): any;
3272 }
3273 type LodashPropOr6x3<TDefault> = (object: null | undefined) => TDefault;
3274 interface LodashPropOr6x4 {
3275 <TDefault>(defaultValue: TDefault): LodashPropOr6x5<TDefault>;
3276 (defaultValue: lodash.__, path: lodash.PropertyPath): LodashPropOr6x6;
3277 <TDefault>(defaultValue: TDefault, path: lodash.PropertyPath): TDefault;
3278 }
3279 type LodashPropOr6x5<TDefault> = (path: lodash.PropertyPath) => TDefault;
3280 type LodashPropOr6x6 = <TDefault>(defaultValue: TDefault) => TDefault;
3281 interface LodashPropOr7x1 {
3282 (path: lodash.PropertyPath): LodashPropOr7x3;
3283 (path: lodash.__, object: any): LodashPropOr7x5;
3284 (path: lodash.PropertyPath, object: any): any;
3285 }
3286 type LodashPropOr7x3 = (object: any) => any;
3287 interface LodashPropOr7x4 {
3288 (defaultValue: any): LodashPropOr7x5;
3289 (defaultValue: lodash.__, path: lodash.PropertyPath): LodashPropOr7x6;
3290 (defaultValue: any, path: lodash.PropertyPath): any;
3291 }
3292 type LodashPropOr7x5 = (path: lodash.PropertyPath) => any;
3293 type LodashPropOr7x6 = (defaultValue: any) => any;
3294 interface LodashPull {
3295 <T>(values: T): LodashPull1x1<T>;
3296 <T>(values: lodash.__, array: ReadonlyArray<T>): LodashPull1x2<T>;
3297 <T>(values: T, array: ReadonlyArray<T>): T[];
3298 <T>(values: lodash.__, array: lodash.List<T>): LodashPull2x2<T>;
3299 <T>(values: T, array: lodash.List<T>): lodash.List<T>;
3300 }
3301 interface LodashPull1x1<T> {
3302 (array: ReadonlyArray<T>): T[];
3303 (array: lodash.List<T>): lodash.List<T>;
3304 }
3305 type LodashPull1x2<T> = (values: T) => T[];
3306 type LodashPull2x2<T> = (values: T) => lodash.List<T>;
3307 interface LodashPullAll {
3308 <T>(values: lodash.List<T>): LodashPullAll1x1<T>;
3309 <T>(values: lodash.__, array: ReadonlyArray<T>): LodashPullAll1x2<T>;
3310 <T>(values: lodash.List<T>, array: ReadonlyArray<T>): T[];
3311 <T>(values: lodash.__, array: lodash.List<T>): LodashPullAll2x2<T>;
3312 <T>(values: lodash.List<T>, array: lodash.List<T>): lodash.List<T>;
3313 }
3314 interface LodashPullAll1x1<T> {
3315 (array: ReadonlyArray<T>): T[];
3316 (array: lodash.List<T>): lodash.List<T>;
3317 }
3318 type LodashPullAll1x2<T> = (values: lodash.List<T>) => T[];
3319 type LodashPullAll2x2<T> = (values: lodash.List<T>) => lodash.List<T>;
3320 interface LodashPullAllBy {
3321 <T>(iteratee: lodash.ValueIteratee<T>): LodashPullAllBy1x1<T>;
3322 <T>(iteratee: lodash.__, values: lodash.List<T>): LodashPullAllBy1x2<T>;
3323 <T>(iteratee: lodash.ValueIteratee<T>, values: lodash.List<T>): LodashPullAllBy1x3<T>;
3324 <T>(iteratee: lodash.__, values: lodash.__, array: ReadonlyArray<T>): LodashPullAllBy1x4<T>;
3325 <T>(iteratee: lodash.ValueIteratee<T>, values: lodash.__, array: ReadonlyArray<T>): LodashPullAllBy1x5<T>;
3326 <T>(iteratee: lodash.__, values: lodash.List<T>, array: ReadonlyArray<T>): LodashPullAllBy1x6<T>;
3327 <T>(iteratee: lodash.ValueIteratee<T>, values: lodash.List<T>, array: ReadonlyArray<T>): T[];
3328 <T>(iteratee: lodash.__, values: lodash.__, array: lodash.List<T>): LodashPullAllBy2x4<T>;
3329 <T>(iteratee: lodash.ValueIteratee<T>, values: lodash.__, array: lodash.List<T>): LodashPullAllBy2x5<T>;
3330 <T>(iteratee: lodash.__, values: lodash.List<T>, array: lodash.List<T>): LodashPullAllBy2x6<T>;
3331 <T>(iteratee: lodash.ValueIteratee<T>, values: lodash.List<T>, array: lodash.List<T>): lodash.List<T>;
3332 <T1, T2>(iteratee: lodash.ValueIteratee<T1 | T2>): LodashPullAllBy3x1<T1, T2>;
3333 <T2>(iteratee: lodash.__, values: lodash.List<T2>): LodashPullAllBy3x2<T2>;
3334 <T1, T2>(iteratee: lodash.ValueIteratee<T1 | T2>, values: lodash.List<T2>): LodashPullAllBy3x3<T1>;
3335 <T1>(iteratee: lodash.__, values: lodash.__, array: ReadonlyArray<T1>): LodashPullAllBy3x4<T1>;
3336 <T1, T2>(iteratee: lodash.ValueIteratee<T1 | T2>, values: lodash.__, array: ReadonlyArray<T1>): LodashPullAllBy3x5<T1, T2>;
3337 <T1, T2>(iteratee: lodash.__, values: lodash.List<T2>, array: ReadonlyArray<T1>): LodashPullAllBy3x6<T1, T2>;
3338 <T1, T2>(iteratee: lodash.ValueIteratee<T1 | T2>, values: lodash.List<T2>, array: ReadonlyArray<T1>): T1[];
3339 <T1>(iteratee: lodash.__, values: lodash.__, array: lodash.List<T1>): LodashPullAllBy4x4<T1>;
3340 <T1, T2>(iteratee: lodash.ValueIteratee<T1 | T2>, values: lodash.__, array: lodash.List<T1>): LodashPullAllBy4x5<T1, T2>;
3341 <T1, T2>(iteratee: lodash.__, values: lodash.List<T2>, array: lodash.List<T1>): LodashPullAllBy4x6<T1, T2>;
3342 <T1, T2>(iteratee: lodash.ValueIteratee<T1 | T2>, values: lodash.List<T2>, array: lodash.List<T1>): lodash.List<T1>;
3343 }
3344 interface LodashPullAllBy1x1<T> {
3345 (values: lodash.List<T>): LodashPullAllBy1x3<T>;
3346 (values: lodash.__, array: ReadonlyArray<T>): LodashPullAllBy1x5<T>;
3347 (values: lodash.List<T>, array: ReadonlyArray<T>): T[];
3348 (values: lodash.__, array: lodash.List<T>): LodashPullAllBy2x5<T>;
3349 (values: lodash.List<T>, array: lodash.List<T>): lodash.List<T>;
3350 }
3351 interface LodashPullAllBy1x2<T> {
3352 (iteratee: lodash.ValueIteratee<T>): LodashPullAllBy1x3<T>;
3353 (iteratee: lodash.__, array: ReadonlyArray<T>): LodashPullAllBy1x6<T>;
3354 (iteratee: lodash.ValueIteratee<T>, array: ReadonlyArray<T>): T[];
3355 (iteratee: lodash.__, array: lodash.List<T>): LodashPullAllBy2x6<T>;
3356 (iteratee: lodash.ValueIteratee<T>, array: lodash.List<T>): lodash.List<T>;
3357 }
3358 interface LodashPullAllBy1x3<T> {
3359 (array: ReadonlyArray<T>): T[];
3360 (array: lodash.List<T>): lodash.List<T>;
3361 }
3362 interface LodashPullAllBy1x4<T> {
3363 (iteratee: lodash.ValueIteratee<T>): LodashPullAllBy1x5<T>;
3364 (iteratee: lodash.__, values: lodash.List<T>): LodashPullAllBy1x6<T>;
3365 (iteratee: lodash.ValueIteratee<T>, values: lodash.List<T>): T[];
3366 }
3367 type LodashPullAllBy1x5<T> = (values: lodash.List<T>) => T[];
3368 type LodashPullAllBy1x6<T> = (iteratee: lodash.ValueIteratee<T>) => T[];
3369 interface LodashPullAllBy2x4<T> {
3370 (iteratee: lodash.ValueIteratee<T>): LodashPullAllBy2x5<T>;
3371 (iteratee: lodash.__, values: lodash.List<T>): LodashPullAllBy2x6<T>;
3372 (iteratee: lodash.ValueIteratee<T>, values: lodash.List<T>): lodash.List<T>;
3373 }
3374 type LodashPullAllBy2x5<T> = (values: lodash.List<T>) => lodash.List<T>;
3375 type LodashPullAllBy2x6<T> = (iteratee: lodash.ValueIteratee<T>) => lodash.List<T>;
3376 interface LodashPullAllBy3x1<T1, T2> {
3377 (values: lodash.List<T2>): LodashPullAllBy3x3<T1>;
3378 (values: lodash.__, array: ReadonlyArray<T1>): LodashPullAllBy3x5<T1, T2>;
3379 (values: lodash.List<T2>, array: ReadonlyArray<T1>): T1[];
3380 (values: lodash.__, array: lodash.List<T1>): LodashPullAllBy4x5<T1, T2>;
3381 (values: lodash.List<T2>, array: lodash.List<T1>): lodash.List<T1>;
3382 }
3383 interface LodashPullAllBy3x2<T2> {
3384 <T1>(iteratee: lodash.ValueIteratee<T1 | T2>): LodashPullAllBy3x3<T1>;
3385 <T1>(iteratee: lodash.__, array: ReadonlyArray<T1>): LodashPullAllBy3x6<T1, T2>;
3386 <T1>(iteratee: lodash.ValueIteratee<T1 | T2>, array: ReadonlyArray<T1>): T1[];
3387 <T1>(iteratee: lodash.__, array: lodash.List<T1>): LodashPullAllBy4x6<T1, T2>;
3388 <T1>(iteratee: lodash.ValueIteratee<T1 | T2>, array: lodash.List<T1>): lodash.List<T1>;
3389 }
3390 interface LodashPullAllBy3x3<T1> {
3391 (array: ReadonlyArray<T1>): T1[];
3392 (array: lodash.List<T1>): lodash.List<T1>;
3393 }
3394 interface LodashPullAllBy3x4<T1> {
3395 <T2>(iteratee: lodash.ValueIteratee<T1 | T2>): LodashPullAllBy3x5<T1, T2>;
3396 <T2>(iteratee: lodash.__, values: lodash.List<T2>): LodashPullAllBy3x6<T1, T2>;
3397 <T2>(iteratee: lodash.ValueIteratee<T1 | T2>, values: lodash.List<T2>): T1[];
3398 }
3399 type LodashPullAllBy3x5<T1, T2> = (values: lodash.List<T2>) => T1[];
3400 type LodashPullAllBy3x6<T1, T2> = (iteratee: lodash.ValueIteratee<T1 | T2>) => T1[];
3401 interface LodashPullAllBy4x4<T1> {
3402 <T2>(iteratee: lodash.ValueIteratee<T1 | T2>): LodashPullAllBy4x5<T1, T2>;
3403 <T2>(iteratee: lodash.__, values: lodash.List<T2>): LodashPullAllBy4x6<T1, T2>;
3404 <T2>(iteratee: lodash.ValueIteratee<T1 | T2>, values: lodash.List<T2>): lodash.List<T1>;
3405 }
3406 type LodashPullAllBy4x5<T1, T2> = (values: lodash.List<T2>) => lodash.List<T1>;
3407 type LodashPullAllBy4x6<T1, T2> = (iteratee: lodash.ValueIteratee<T1 | T2>) => lodash.List<T1>;
3408 interface LodashPullAllWith {
3409 <T>(comparator: lodash.Comparator<T>): LodashPullAllWith1x1<T>;
3410 <T>(comparator: lodash.__, values: lodash.List<T>): LodashPullAllWith1x2<T>;
3411 <T>(comparator: lodash.Comparator<T>, values: lodash.List<T>): LodashPullAllWith1x3<T>;
3412 <T>(comparator: lodash.__, values: lodash.__, array: ReadonlyArray<T>): LodashPullAllWith1x4<T>;
3413 <T>(comparator: lodash.Comparator<T>, values: lodash.__, array: ReadonlyArray<T>): LodashPullAllWith1x5<T>;
3414 <T>(comparator: lodash.__, values: lodash.List<T>, array: ReadonlyArray<T>): LodashPullAllWith1x6<T>;
3415 <T>(comparator: lodash.Comparator<T>, values: lodash.List<T>, array: ReadonlyArray<T>): T[];
3416 <T>(comparator: lodash.__, values: lodash.__, array: lodash.List<T>): LodashPullAllWith2x4<T>;
3417 <T>(comparator: lodash.Comparator<T>, values: lodash.__, array: lodash.List<T>): LodashPullAllWith2x5<T>;
3418 <T>(comparator: lodash.__, values: lodash.List<T>, array: lodash.List<T>): LodashPullAllWith2x6<T>;
3419 <T>(comparator: lodash.Comparator<T>, values: lodash.List<T>, array: lodash.List<T>): lodash.List<T>;
3420 <T1, T2>(comparator: lodash.Comparator2<T1, T2>): LodashPullAllWith3x1<T1, T2>;
3421 <T2>(comparator: lodash.__, values: lodash.List<T2>): LodashPullAllWith3x2<T2>;
3422 <T1, T2>(comparator: lodash.Comparator2<T1, T2>, values: lodash.List<T2>): LodashPullAllWith3x3<T1>;
3423 <T1>(comparator: lodash.__, values: lodash.__, array: ReadonlyArray<T1>): LodashPullAllWith3x4<T1>;
3424 <T1, T2>(comparator: lodash.Comparator2<T1, T2>, values: lodash.__, array: ReadonlyArray<T1>): LodashPullAllWith3x5<T1, T2>;
3425 <T1, T2>(comparator: lodash.__, values: lodash.List<T2>, array: ReadonlyArray<T1>): LodashPullAllWith3x6<T1, T2>;
3426 <T1, T2>(comparator: lodash.Comparator2<T1, T2>, values: lodash.List<T2>, array: ReadonlyArray<T1>): T1[];
3427 <T1>(comparator: lodash.__, values: lodash.__, array: lodash.List<T1>): LodashPullAllWith4x4<T1>;
3428 <T1, T2>(comparator: lodash.Comparator2<T1, T2>, values: lodash.__, array: lodash.List<T1>): LodashPullAllWith4x5<T1, T2>;
3429 <T1, T2>(comparator: lodash.__, values: lodash.List<T2>, array: lodash.List<T1>): LodashPullAllWith4x6<T1, T2>;
3430 <T1, T2>(comparator: lodash.Comparator2<T1, T2>, values: lodash.List<T2>, array: lodash.List<T1>): lodash.List<T1>;
3431 }
3432 interface LodashPullAllWith1x1<T> {
3433 (values: lodash.List<T>): LodashPullAllWith1x3<T>;
3434 (values: lodash.__, array: ReadonlyArray<T>): LodashPullAllWith1x5<T>;
3435 (values: lodash.List<T>, array: ReadonlyArray<T>): T[];
3436 (values: lodash.__, array: lodash.List<T>): LodashPullAllWith2x5<T>;
3437 (values: lodash.List<T>, array: lodash.List<T>): lodash.List<T>;
3438 }
3439 interface LodashPullAllWith1x2<T> {
3440 (comparator: lodash.Comparator<T>): LodashPullAllWith1x3<T>;
3441 (comparator: lodash.__, array: ReadonlyArray<T>): LodashPullAllWith1x6<T>;
3442 (comparator: lodash.Comparator<T>, array: ReadonlyArray<T>): T[];
3443 (comparator: lodash.__, array: lodash.List<T>): LodashPullAllWith2x6<T>;
3444 (comparator: lodash.Comparator<T>, array: lodash.List<T>): lodash.List<T>;
3445 }
3446 interface LodashPullAllWith1x3<T> {
3447 (array: ReadonlyArray<T>): T[];
3448 (array: lodash.List<T>): lodash.List<T>;
3449 }
3450 interface LodashPullAllWith1x4<T> {
3451 (comparator: lodash.Comparator<T>): LodashPullAllWith1x5<T>;
3452 (comparator: lodash.__, values: lodash.List<T>): LodashPullAllWith1x6<T>;
3453 (comparator: lodash.Comparator<T>, values: lodash.List<T>): T[];
3454 }
3455 type LodashPullAllWith1x5<T> = (values: lodash.List<T>) => T[];
3456 type LodashPullAllWith1x6<T> = (comparator: lodash.Comparator<T>) => T[];
3457 interface LodashPullAllWith2x4<T> {
3458 (comparator: lodash.Comparator<T>): LodashPullAllWith2x5<T>;
3459 (comparator: lodash.__, values: lodash.List<T>): LodashPullAllWith2x6<T>;
3460 (comparator: lodash.Comparator<T>, values: lodash.List<T>): lodash.List<T>;
3461 }
3462 type LodashPullAllWith2x5<T> = (values: lodash.List<T>) => lodash.List<T>;
3463 type LodashPullAllWith2x6<T> = (comparator: lodash.Comparator<T>) => lodash.List<T>;
3464 interface LodashPullAllWith3x1<T1, T2> {
3465 (values: lodash.List<T2>): LodashPullAllWith3x3<T1>;
3466 (values: lodash.__, array: ReadonlyArray<T1>): LodashPullAllWith3x5<T1, T2>;
3467 (values: lodash.List<T2>, array: ReadonlyArray<T1>): T1[];
3468 (values: lodash.__, array: lodash.List<T1>): LodashPullAllWith4x5<T1, T2>;
3469 (values: lodash.List<T2>, array: lodash.List<T1>): lodash.List<T1>;
3470 }
3471 interface LodashPullAllWith3x2<T2> {
3472 <T1>(comparator: lodash.Comparator2<T1, T2>): LodashPullAllWith3x3<T1>;
3473 <T1>(comparator: lodash.__, array: ReadonlyArray<T1>): LodashPullAllWith3x6<T1, T2>;
3474 <T1>(comparator: lodash.Comparator2<T1, T2>, array: ReadonlyArray<T1>): T1[];
3475 <T1>(comparator: lodash.__, array: lodash.List<T1>): LodashPullAllWith4x6<T1, T2>;
3476 <T1>(comparator: lodash.Comparator2<T1, T2>, array: lodash.List<T1>): lodash.List<T1>;
3477 }
3478 interface LodashPullAllWith3x3<T1> {
3479 (array: ReadonlyArray<T1>): T1[];
3480 (array: lodash.List<T1>): lodash.List<T1>;
3481 }
3482 interface LodashPullAllWith3x4<T1> {
3483 <T2>(comparator: lodash.Comparator2<T1, T2>): LodashPullAllWith3x5<T1, T2>;
3484 <T2>(comparator: lodash.__, values: lodash.List<T2>): LodashPullAllWith3x6<T1, T2>;
3485 <T2>(comparator: lodash.Comparator2<T1, T2>, values: lodash.List<T2>): T1[];
3486 }
3487 type LodashPullAllWith3x5<T1, T2> = (values: lodash.List<T2>) => T1[];
3488 type LodashPullAllWith3x6<T1, T2> = (comparator: lodash.Comparator2<T1, T2>) => T1[];
3489 interface LodashPullAllWith4x4<T1> {
3490 <T2>(comparator: lodash.Comparator2<T1, T2>): LodashPullAllWith4x5<T1, T2>;
3491 <T2>(comparator: lodash.__, values: lodash.List<T2>): LodashPullAllWith4x6<T1, T2>;
3492 <T2>(comparator: lodash.Comparator2<T1, T2>, values: lodash.List<T2>): lodash.List<T1>;
3493 }
3494 type LodashPullAllWith4x5<T1, T2> = (values: lodash.List<T2>) => lodash.List<T1>;
3495 type LodashPullAllWith4x6<T1, T2> = (comparator: lodash.Comparator2<T1, T2>) => lodash.List<T1>;
3496 interface LodashPullAt {
3497 (indexes: lodash.Many<number>): LodashPullAt1x1;
3498 <T>(indexes: lodash.__, array: ReadonlyArray<T>): LodashPullAt1x2<T>;
3499 <T>(indexes: lodash.Many<number>, array: ReadonlyArray<T>): T[];
3500 <T>(indexes: lodash.__, array: lodash.List<T>): LodashPullAt2x2<T>;
3501 <T>(indexes: lodash.Many<number>, array: lodash.List<T>): lodash.List<T>;
3502 }
3503 interface LodashPullAt1x1 {
3504 <T>(array: ReadonlyArray<T>): T[];
3505 <T>(array: lodash.List<T>): lodash.List<T>;
3506 }
3507 type LodashPullAt1x2<T> = (indexes: lodash.Many<number>) => T[];
3508 type LodashPullAt2x2<T> = (indexes: lodash.Many<number>) => lodash.List<T>;
3509 interface LodashRandom {
3510 (maxOrMin: number): LodashRandom1x1;
3511 (max: lodash.__, floating: boolean): LodashRandom1x2;
3512 (maxOrMin: number, floatingOrMax: boolean | number): number;
3513 (min: lodash.__, max: number): LodashRandom2x2;
3514 }
3515 type LodashRandom1x1 = (floatingOrMax: boolean | number) => number;
3516 type LodashRandom1x2 = (max: number) => number;
3517 type LodashRandom2x2 = (min: number) => number;
3518 interface LodashRange {
3519 (start: number): LodashRange1x1;
3520 (start: lodash.__, end: number): LodashRange1x2;
3521 (start: number, end: number): number[];
3522 }
3523 type LodashRange1x1 = (end: number) => number[];
3524 type LodashRange1x2 = (start: number) => number[];
3525 interface LodashRangeRight {
3526 (start: number): LodashRangeRight1x1;
3527 (start: lodash.__, end: number): LodashRangeRight1x2;
3528 (start: number, end: number): number[];
3529 }
3530 type LodashRangeRight1x1 = (end: number) => number[];
3531 type LodashRangeRight1x2 = (start: number) => number[];
3532 interface LodashRangeStep {
3533 (start: number): LodashRangeStep1x1;
3534 (start: lodash.__, end: number): LodashRangeStep1x2;
3535 (start: number, end: number): LodashRangeStep1x3;
3536 (start: lodash.__, end: lodash.__, step: number): LodashRangeStep1x4;
3537 (start: number, end: lodash.__, step: number): LodashRangeStep1x5;
3538 (start: lodash.__, end: number, step: number): LodashRangeStep1x6;
3539 (start: number, end: number, step: number): number[];
3540 }
3541 interface LodashRangeStep1x1 {
3542 (end: number): LodashRangeStep1x3;
3543 (end: lodash.__, step: number): LodashRangeStep1x5;
3544 (end: number, step: number): number[];
3545 }
3546 interface LodashRangeStep1x2 {
3547 (start: number): LodashRangeStep1x3;
3548 (start: lodash.__, step: number): LodashRangeStep1x6;
3549 (start: number, step: number): number[];
3550 }
3551 type LodashRangeStep1x3 = (step: number) => number[];
3552 interface LodashRangeStep1x4 {
3553 (start: number): LodashRangeStep1x5;
3554 (start: lodash.__, end: number): LodashRangeStep1x6;
3555 (start: number, end: number): number[];
3556 }
3557 type LodashRangeStep1x5 = (end: number) => number[];
3558 type LodashRangeStep1x6 = (start: number) => number[];
3559 interface LodashRangeStepRight {
3560 (start: number): LodashRangeStepRight1x1;
3561 (start: lodash.__, end: number): LodashRangeStepRight1x2;
3562 (start: number, end: number): LodashRangeStepRight1x3;
3563 (start: lodash.__, end: lodash.__, step: number): LodashRangeStepRight1x4;
3564 (start: number, end: lodash.__, step: number): LodashRangeStepRight1x5;
3565 (start: lodash.__, end: number, step: number): LodashRangeStepRight1x6;
3566 (start: number, end: number, step: number): number[];
3567 }
3568 interface LodashRangeStepRight1x1 {
3569 (end: number): LodashRangeStepRight1x3;
3570 (end: lodash.__, step: number): LodashRangeStepRight1x5;
3571 (end: number, step: number): number[];
3572 }
3573 interface LodashRangeStepRight1x2 {
3574 (start: number): LodashRangeStepRight1x3;
3575 (start: lodash.__, step: number): LodashRangeStepRight1x6;
3576 (start: number, step: number): number[];
3577 }
3578 type LodashRangeStepRight1x3 = (step: number) => number[];
3579 interface LodashRangeStepRight1x4 {
3580 (start: number): LodashRangeStepRight1x5;
3581 (start: lodash.__, end: number): LodashRangeStepRight1x6;
3582 (start: number, end: number): number[];
3583 }
3584 type LodashRangeStepRight1x5 = (end: number) => number[];
3585 type LodashRangeStepRight1x6 = (start: number) => number[];
3586 interface LodashRearg {
3587 (indexes: lodash.Many<number>): LodashRearg1x1;
3588 (indexes: lodash.__, func: (...args: any[]) => any): LodashRearg1x2;
3589 (indexes: lodash.Many<number>, func: (...args: any[]) => any): (...args: any[]) => any;
3590 }
3591 type LodashRearg1x1 = (func: (...args: any[]) => any) => (...args: any[]) => any;
3592 type LodashRearg1x2 = (indexes: lodash.Many<number>) => (...args: any[]) => any;
3593 interface LodashReduce {
3594 <T, TResult>(callback: lodash.MemoIteratorCapped<T, TResult>): LodashReduce1x1<T, TResult>;
3595 <TResult>(callback: lodash.__, accumulator: TResult): LodashReduce1x2<TResult>;
3596 <T, TResult>(callback: lodash.MemoIteratorCapped<T, TResult>, accumulator: TResult): LodashReduce1x3<T, TResult>;
3597 <T>(callback: lodash.__, accumulator: lodash.__, collection: T[] | null | undefined): LodashReduce1x4<T>;
3598 <T, TResult>(callback: lodash.MemoIteratorCapped<T, TResult>, accumulator: lodash.__, collection: T[] | null | undefined): LodashReduce1x5<TResult>;
3599 <T, TResult>(callback: lodash.__, accumulator: TResult, collection: T[] | null | undefined): LodashReduce1x6<T, TResult>;
3600 <T, TResult>(callback: lodash.MemoIteratorCapped<T, TResult>, accumulator: TResult, collection: T[] | lodash.List<T> | null | undefined): TResult;
3601 <T>(callback: lodash.__, accumulator: lodash.__, collection: lodash.List<T> | null | undefined): LodashReduce2x4<T>;
3602 <T, TResult>(callback: lodash.MemoIteratorCapped<T, TResult>, accumulator: lodash.__, collection: lodash.List<T> | null | undefined): LodashReduce2x5<TResult>;
3603 <T, TResult>(callback: lodash.__, accumulator: TResult, collection: lodash.List<T> | null | undefined): LodashReduce2x6<T, TResult>;
3604 <T extends object, TResult>(callback: lodash.MemoIteratorCapped<T[keyof T], TResult>): LodashReduce3x1<T, TResult>;
3605 <T extends object, TResult>(callback: lodash.MemoIteratorCapped<T[keyof T], TResult>, accumulator: TResult): LodashReduce3x3<T, TResult>;
3606 <T extends object>(callback: lodash.__, accumulator: lodash.__, collection: T | null | undefined): LodashReduce3x4<T>;
3607 <T extends object, TResult>(callback: lodash.MemoIteratorCapped<T[keyof T], TResult>, accumulator: lodash.__, collection: T | null | undefined): LodashReduce3x5<TResult>;
3608 <T extends object, TResult>(callback: lodash.__, accumulator: TResult, collection: T | null | undefined): LodashReduce3x6<T, TResult>;
3609 <T extends object, TResult>(callback: lodash.MemoIteratorCapped<T[keyof T], TResult>, accumulator: TResult, collection: T | null | undefined): TResult;
3610 }
3611 interface LodashReduce1x1<T, TResult> {
3612 (accumulator: TResult): LodashReduce1x3<T, TResult>;
3613 (accumulator: lodash.__, collection: T[] | null | undefined): LodashReduce1x5<TResult>;
3614 (accumulator: TResult, collection: T[] | lodash.List<T> | null | undefined): TResult;
3615 (accumulator: lodash.__, collection: lodash.List<T> | null | undefined): LodashReduce2x5<TResult>;
3616 }
3617 interface LodashReduce1x2<TResult> {
3618 <T>(callback: lodash.MemoIteratorCapped<T, TResult>): LodashReduce1x3<T, TResult>;
3619 <T>(callback: lodash.__, collection: T[] | null | undefined): LodashReduce1x6<T, TResult>;
3620 <T>(callback: lodash.MemoIteratorCapped<T, TResult>, collection: T[] | lodash.List<T> | null | undefined): TResult;
3621 <T>(callback: lodash.__, collection: lodash.List<T> | null | undefined): LodashReduce2x6<T, TResult>;
3622 <T extends object>(callback: lodash.MemoIteratorCapped<T[keyof T], TResult>): LodashReduce3x3<T, TResult>;
3623 <T extends object>(callback: lodash.__, collection: T | null | undefined): LodashReduce3x6<T, TResult>;
3624 <T extends object>(callback: lodash.MemoIteratorCapped<T[keyof T], TResult>, collection: T | null | undefined): TResult;
3625 }
3626 type LodashReduce1x3<T, TResult> = (collection: T[] | lodash.List<T> | null | undefined) => TResult;
3627 interface LodashReduce1x4<T> {
3628 <TResult>(callback: lodash.MemoIteratorCapped<T, TResult>): LodashReduce1x5<TResult>;
3629 <TResult>(callback: lodash.__, accumulator: TResult): LodashReduce1x6<T, TResult>;
3630 <TResult>(callback: lodash.MemoIteratorCapped<T, TResult>, accumulator: TResult): TResult;
3631 }
3632 type LodashReduce1x5<TResult> = (accumulator: TResult) => TResult;
3633 type LodashReduce1x6<T, TResult> = (callback: lodash.MemoIteratorCapped<T, TResult>) => TResult;
3634 interface LodashReduce2x4<T> {
3635 <TResult>(callback: lodash.MemoIteratorCapped<T, TResult>): LodashReduce2x5<TResult>;
3636 <TResult>(callback: lodash.__, accumulator: TResult): LodashReduce2x6<T, TResult>;
3637 <TResult>(callback: lodash.MemoIteratorCapped<T, TResult>, accumulator: TResult): TResult;
3638 }
3639 type LodashReduce2x5<TResult> = (accumulator: TResult) => TResult;
3640 type LodashReduce2x6<T, TResult> = (callback: lodash.MemoIteratorCapped<T, TResult>) => TResult;
3641 interface LodashReduce3x1<T, TResult> {
3642 (accumulator: TResult): LodashReduce3x3<T, TResult>;
3643 (accumulator: lodash.__, collection: T | null | undefined): LodashReduce3x5<TResult>;
3644 (accumulator: TResult, collection: T | null | undefined): TResult;
3645 }
3646 type LodashReduce3x3<T, TResult> = (collection: T | null | undefined) => TResult;
3647 interface LodashReduce3x4<T> {
3648 <TResult>(callback: lodash.MemoIteratorCapped<T[keyof T], TResult>): LodashReduce3x5<TResult>;
3649 <TResult>(callback: lodash.__, accumulator: TResult): LodashReduce3x6<T, TResult>;
3650 <TResult>(callback: lodash.MemoIteratorCapped<T[keyof T], TResult>, accumulator: TResult): TResult;
3651 }
3652 type LodashReduce3x5<TResult> = (accumulator: TResult) => TResult;
3653 type LodashReduce3x6<T, TResult> = (callback: lodash.MemoIteratorCapped<T[keyof T], TResult>) => TResult;
3654 interface LodashReduceRight {
3655 <T, TResult>(callback: lodash.MemoIteratorCappedRight<T, TResult>): LodashReduceRight1x1<T, TResult>;
3656 <TResult>(callback: lodash.__, accumulator: TResult): LodashReduceRight1x2<TResult>;
3657 <T, TResult>(callback: lodash.MemoIteratorCappedRight<T, TResult>, accumulator: TResult): LodashReduceRight1x3<T, TResult>;
3658 <T>(callback: lodash.__, accumulator: lodash.__, collection: T[] | null | undefined): LodashReduceRight1x4<T>;
3659 <T, TResult>(callback: lodash.MemoIteratorCappedRight<T, TResult>, accumulator: lodash.__, collection: T[] | null | undefined): LodashReduceRight1x5<TResult>;
3660 <T, TResult>(callback: lodash.__, accumulator: TResult, collection: T[] | null | undefined): LodashReduceRight1x6<T, TResult>;
3661 <T, TResult>(callback: lodash.MemoIteratorCappedRight<T, TResult>, accumulator: TResult, collection: T[] | lodash.List<T> | null | undefined): TResult;
3662 <T>(callback: lodash.__, accumulator: lodash.__, collection: lodash.List<T> | null | undefined): LodashReduceRight2x4<T>;
3663 <T, TResult>(callback: lodash.MemoIteratorCappedRight<T, TResult>, accumulator: lodash.__, collection: lodash.List<T> | null | undefined): LodashReduceRight2x5<TResult>;
3664 <T, TResult>(callback: lodash.__, accumulator: TResult, collection: lodash.List<T> | null | undefined): LodashReduceRight2x6<T, TResult>;
3665 <T extends object, TResult>(callback: lodash.MemoIteratorCappedRight<T[keyof T], TResult>): LodashReduceRight3x1<T, TResult>;
3666 <T extends object, TResult>(callback: lodash.MemoIteratorCappedRight<T[keyof T], TResult>, accumulator: TResult): LodashReduceRight3x3<T, TResult>;
3667 <T extends object>(callback: lodash.__, accumulator: lodash.__, collection: T | null | undefined): LodashReduceRight3x4<T>;
3668 <T extends object, TResult>(callback: lodash.MemoIteratorCappedRight<T[keyof T], TResult>, accumulator: lodash.__, collection: T | null | undefined): LodashReduceRight3x5<TResult>;
3669 <T extends object, TResult>(callback: lodash.__, accumulator: TResult, collection: T | null | undefined): LodashReduceRight3x6<T, TResult>;
3670 <T extends object, TResult>(callback: lodash.MemoIteratorCappedRight<T[keyof T], TResult>, accumulator: TResult, collection: T | null | undefined): TResult;
3671 }
3672 interface LodashReduceRight1x1<T, TResult> {
3673 (accumulator: TResult): LodashReduceRight1x3<T, TResult>;
3674 (accumulator: lodash.__, collection: T[] | null | undefined): LodashReduceRight1x5<TResult>;
3675 (accumulator: TResult, collection: T[] | lodash.List<T> | null | undefined): TResult;
3676 (accumulator: lodash.__, collection: lodash.List<T> | null | undefined): LodashReduceRight2x5<TResult>;
3677 }
3678 interface LodashReduceRight1x2<TResult> {
3679 <T>(callback: lodash.MemoIteratorCappedRight<T, TResult>): LodashReduceRight1x3<T, TResult>;
3680 <T>(callback: lodash.__, collection: T[] | null | undefined): LodashReduceRight1x6<T, TResult>;
3681 <T>(callback: lodash.MemoIteratorCappedRight<T, TResult>, collection: T[] | lodash.List<T> | null | undefined): TResult;
3682 <T>(callback: lodash.__, collection: lodash.List<T> | null | undefined): LodashReduceRight2x6<T, TResult>;
3683 <T extends object>(callback: lodash.MemoIteratorCappedRight<T[keyof T], TResult>): LodashReduceRight3x3<T, TResult>;
3684 <T extends object>(callback: lodash.__, collection: T | null | undefined): LodashReduceRight3x6<T, TResult>;
3685 <T extends object>(callback: lodash.MemoIteratorCappedRight<T[keyof T], TResult>, collection: T | null | undefined): TResult;
3686 }
3687 type LodashReduceRight1x3<T, TResult> = (collection: T[] | lodash.List<T> | null | undefined) => TResult;
3688 interface LodashReduceRight1x4<T> {
3689 <TResult>(callback: lodash.MemoIteratorCappedRight<T, TResult>): LodashReduceRight1x5<TResult>;
3690 <TResult>(callback: lodash.__, accumulator: TResult): LodashReduceRight1x6<T, TResult>;
3691 <TResult>(callback: lodash.MemoIteratorCappedRight<T, TResult>, accumulator: TResult): TResult;
3692 }
3693 type LodashReduceRight1x5<TResult> = (accumulator: TResult) => TResult;
3694 type LodashReduceRight1x6<T, TResult> = (callback: lodash.MemoIteratorCappedRight<T, TResult>) => TResult;
3695 interface LodashReduceRight2x4<T> {
3696 <TResult>(callback: lodash.MemoIteratorCappedRight<T, TResult>): LodashReduceRight2x5<TResult>;
3697 <TResult>(callback: lodash.__, accumulator: TResult): LodashReduceRight2x6<T, TResult>;
3698 <TResult>(callback: lodash.MemoIteratorCappedRight<T, TResult>, accumulator: TResult): TResult;
3699 }
3700 type LodashReduceRight2x5<TResult> = (accumulator: TResult) => TResult;
3701 type LodashReduceRight2x6<T, TResult> = (callback: lodash.MemoIteratorCappedRight<T, TResult>) => TResult;
3702 interface LodashReduceRight3x1<T, TResult> {
3703 (accumulator: TResult): LodashReduceRight3x3<T, TResult>;
3704 (accumulator: lodash.__, collection: T | null | undefined): LodashReduceRight3x5<TResult>;
3705 (accumulator: TResult, collection: T | null | undefined): TResult;
3706 }
3707 type LodashReduceRight3x3<T, TResult> = (collection: T | null | undefined) => TResult;
3708 interface LodashReduceRight3x4<T> {
3709 <TResult>(callback: lodash.MemoIteratorCappedRight<T[keyof T], TResult>): LodashReduceRight3x5<TResult>;
3710 <TResult>(callback: lodash.__, accumulator: TResult): LodashReduceRight3x6<T, TResult>;
3711 <TResult>(callback: lodash.MemoIteratorCappedRight<T[keyof T], TResult>, accumulator: TResult): TResult;
3712 }
3713 type LodashReduceRight3x5<TResult> = (accumulator: TResult) => TResult;
3714 type LodashReduceRight3x6<T, TResult> = (callback: lodash.MemoIteratorCappedRight<T[keyof T], TResult>) => TResult;
3715 interface LodashReject {
3716 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>): LodashReject1x1<T>;
3717 <T>(predicate: lodash.__, collection: lodash.List<T> | null | undefined): LodashReject1x2<T>;
3718 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>, collection: lodash.List<T> | null | undefined): T[];
3719 <T extends object>(predicate: lodash.__, collection: T | null | undefined): LodashReject2x2<T>;
3720 <T extends object>(predicate: lodash.ValueIterateeCustom<T[keyof T], boolean>, collection: T | null | undefined): Array<T[keyof T]>;
3721 }
3722 type LodashReject1x1<T> = (collection: lodash.List<T> | object | null | undefined) => T[];
3723 type LodashReject1x2<T> = (predicate: lodash.ValueIterateeCustom<T, boolean>) => T[];
3724 type LodashReject2x2<T> = (predicate: lodash.ValueIterateeCustom<T[keyof T], boolean>) => Array<T[keyof T]>;
3725 interface LodashRemove {
3726 <T>(predicate: lodash.ValueIteratee<T>): LodashRemove1x1<T>;
3727 <T>(predicate: lodash.__, array: lodash.List<T>): LodashRemove1x2<T>;
3728 <T>(predicate: lodash.ValueIteratee<T>, array: lodash.List<T>): T[];
3729 }
3730 type LodashRemove1x1<T> = (array: lodash.List<T>) => T[];
3731 type LodashRemove1x2<T> = (predicate: lodash.ValueIteratee<T>) => T[];
3732 interface LodashRepeat {
3733 (n: number): LodashRepeat1x1;
3734 (n: lodash.__, string: string): LodashRepeat1x2;
3735 (n: number, string: string): string;
3736 }
3737 type LodashRepeat1x1 = (string: string) => string;
3738 type LodashRepeat1x2 = (n: number) => string;
3739 interface LodashReplace {
3740 (pattern: RegExp | string): LodashReplace1x1;
3741 (pattern: lodash.__, replacement: lodash.ReplaceFunction | string): LodashReplace1x2;
3742 (pattern: RegExp | string, replacement: lodash.ReplaceFunction | string): LodashReplace1x3;
3743 (pattern: lodash.__, replacement: lodash.__, string: string): LodashReplace1x4;
3744 (pattern: RegExp | string, replacement: lodash.__, string: string): LodashReplace1x5;
3745 (pattern: lodash.__, replacement: lodash.ReplaceFunction | string, string: string): LodashReplace1x6;
3746 (pattern: RegExp | string, replacement: lodash.ReplaceFunction | string, string: string): string;
3747 }
3748 interface LodashReplace1x1 {
3749 (replacement: lodash.ReplaceFunction | string): LodashReplace1x3;
3750 (replacement: lodash.__, string: string): LodashReplace1x5;
3751 (replacement: lodash.ReplaceFunction | string, string: string): string;
3752 }
3753 interface LodashReplace1x2 {
3754 (pattern: RegExp | string): LodashReplace1x3;
3755 (pattern: lodash.__, string: string): LodashReplace1x6;
3756 (pattern: RegExp | string, string: string): string;
3757 }
3758 type LodashReplace1x3 = (string: string) => string;
3759 interface LodashReplace1x4 {
3760 (pattern: RegExp | string): LodashReplace1x5;
3761 (pattern: lodash.__, replacement: lodash.ReplaceFunction | string): LodashReplace1x6;
3762 (pattern: RegExp | string, replacement: lodash.ReplaceFunction | string): string;
3763 }
3764 type LodashReplace1x5 = (replacement: lodash.ReplaceFunction | string) => string;
3765 type LodashReplace1x6 = (pattern: RegExp | string) => string;
3766 type LodashRest = (func: (...args: any[]) => any) => (...args: any[]) => any;
3767 interface LodashRestFrom {
3768 (start: number): LodashRestFrom1x1;
3769 (start: lodash.__, func: (...args: any[]) => any): LodashRestFrom1x2;
3770 (start: number, func: (...args: any[]) => any): (...args: any[]) => any;
3771 }
3772 type LodashRestFrom1x1 = (func: (...args: any[]) => any) => (...args: any[]) => any;
3773 type LodashRestFrom1x2 = (start: number) => (...args: any[]) => any;
3774 interface LodashResult {
3775 (path: lodash.PropertyPath): LodashResult1x1;
3776 (path: lodash.__, object: any): LodashResult1x2;
3777 <TResult>(path: lodash.PropertyPath, object: any): TResult;
3778 }
3779 type LodashResult1x1 = <TResult>(object: any) => TResult;
3780 type LodashResult1x2 = <TResult>(path: lodash.PropertyPath) => TResult;
3781 type LodashReverse = <TList extends lodash.List<any>>(array: TList) => TList;
3782 type LodashRound = (n: number) => number;
3783 type LodashRunInContext = (context: object) => lodash.LoDashStatic;
3784 interface LodashSample {
3785 <T>(collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): T | undefined;
3786 <T extends object>(collection: T | null | undefined): T[keyof T] | undefined;
3787 }
3788 interface LodashSampleSize {
3789 (n: number): LodashSampleSize1x1;
3790 <T>(n: lodash.__, collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): LodashSampleSize1x2<T>;
3791 <T>(n: number, collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): T[];
3792 <T extends object>(n: lodash.__, collection: T | null | undefined): LodashSampleSize2x2<T>;
3793 <T extends object>(n: number, collection: T | null | undefined): Array<T[keyof T]>;
3794 }
3795 interface LodashSampleSize1x1 {
3796 <T>(collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): T[];
3797 <T extends object>(collection: T | null | undefined): Array<T[keyof T]>;
3798 }
3799 type LodashSampleSize1x2<T> = (n: number) => T[];
3800 type LodashSampleSize2x2<T> = (n: number) => Array<T[keyof T]>;
3801 interface LodashSetWith {
3802 <T extends object>(customizer: lodash.SetWithCustomizer<T>): LodashSetWith1x1<T>;
3803 (customizer: lodash.__, path: lodash.PropertyPath): LodashSetWith1x2;
3804 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath): LodashSetWith1x3<T>;
3805 (customizer: lodash.__, path: lodash.__, value: any): LodashSetWith1x4;
3806 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.__, value: any): LodashSetWith1x5<T>;
3807 (customizer: lodash.__, path: lodash.PropertyPath, value: any): LodashSetWith1x6;
3808 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath, value: any): LodashSetWith1x7<T>;
3809 <T extends object>(customizer: lodash.__, path: lodash.__, value: lodash.__, object: T): LodashSetWith1x8<T>;
3810 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.__, value: lodash.__, object: T): LodashSetWith1x9<T>;
3811 <T extends object>(customizer: lodash.__, path: lodash.PropertyPath, value: lodash.__, object: T): LodashSetWith1x10<T>;
3812 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath, value: lodash.__, object: T): LodashSetWith1x11<T>;
3813 <T extends object>(customizer: lodash.__, path: lodash.__, value: any, object: T): LodashSetWith1x12<T>;
3814 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.__, value: any, object: T): LodashSetWith1x13<T>;
3815 <T extends object>(customizer: lodash.__, path: lodash.PropertyPath, value: any, object: T): LodashSetWith1x14<T>;
3816 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath, value: any, object: T): T;
3817 }
3818 interface LodashSetWith1x1<T> {
3819 (path: lodash.PropertyPath): LodashSetWith1x3<T>;
3820 (path: lodash.__, value: any): LodashSetWith1x5<T>;
3821 (path: lodash.PropertyPath, value: any): LodashSetWith1x7<T>;
3822 (path: lodash.__, value: lodash.__, object: T): LodashSetWith1x9<T>;
3823 (path: lodash.PropertyPath, value: lodash.__, object: T): LodashSetWith1x11<T>;
3824 (path: lodash.__, value: any, object: T): LodashSetWith1x13<T>;
3825 (path: lodash.PropertyPath, value: any, object: T): T;
3826 }
3827 interface LodashSetWith1x2 {
3828 <T extends object>(customizer: lodash.SetWithCustomizer<T>): LodashSetWith1x3<T>;
3829 (customizer: lodash.__, value: any): LodashSetWith1x6;
3830 <T extends object>(customizer: lodash.SetWithCustomizer<T>, value: any): LodashSetWith1x7<T>;
3831 <T extends object>(customizer: lodash.__, value: lodash.__, object: T): LodashSetWith1x10<T>;
3832 <T extends object>(customizer: lodash.SetWithCustomizer<T>, value: lodash.__, object: T): LodashSetWith1x11<T>;
3833 <T extends object>(customizer: lodash.__, value: any, object: T): LodashSetWith1x14<T>;
3834 <T extends object>(customizer: lodash.SetWithCustomizer<T>, value: any, object: T): T;
3835 }
3836 interface LodashSetWith1x3<T> {
3837 (value: any): LodashSetWith1x7<T>;
3838 (value: lodash.__, object: T): LodashSetWith1x11<T>;
3839 (value: any, object: T): T;
3840 }
3841 interface LodashSetWith1x4 {
3842 <T extends object>(customizer: lodash.SetWithCustomizer<T>): LodashSetWith1x5<T>;
3843 (customizer: lodash.__, path: lodash.PropertyPath): LodashSetWith1x6;
3844 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath): LodashSetWith1x7<T>;
3845 <T extends object>(customizer: lodash.__, path: lodash.__, object: T): LodashSetWith1x12<T>;
3846 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.__, object: T): LodashSetWith1x13<T>;
3847 <T extends object>(customizer: lodash.__, path: lodash.PropertyPath, object: T): LodashSetWith1x14<T>;
3848 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath, object: T): T;
3849 }
3850 interface LodashSetWith1x5<T> {
3851 (path: lodash.PropertyPath): LodashSetWith1x7<T>;
3852 (path: lodash.__, object: T): LodashSetWith1x13<T>;
3853 (path: lodash.PropertyPath, object: T): T;
3854 }
3855 interface LodashSetWith1x6 {
3856 <T extends object>(customizer: lodash.SetWithCustomizer<T>): LodashSetWith1x7<T>;
3857 <T extends object>(customizer: lodash.__, object: T): LodashSetWith1x14<T>;
3858 <T extends object>(customizer: lodash.SetWithCustomizer<T>, object: T): T;
3859 }
3860 type LodashSetWith1x7<T> = (object: T) => T;
3861 interface LodashSetWith1x8<T> {
3862 (customizer: lodash.SetWithCustomizer<T>): LodashSetWith1x9<T>;
3863 (customizer: lodash.__, path: lodash.PropertyPath): LodashSetWith1x10<T>;
3864 (customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath): LodashSetWith1x11<T>;
3865 (customizer: lodash.__, path: lodash.__, value: any): LodashSetWith1x12<T>;
3866 (customizer: lodash.SetWithCustomizer<T>, path: lodash.__, value: any): LodashSetWith1x13<T>;
3867 (customizer: lodash.__, path: lodash.PropertyPath, value: any): LodashSetWith1x14<T>;
3868 (customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath, value: any): T;
3869 }
3870 interface LodashSetWith1x9<T> {
3871 (path: lodash.PropertyPath): LodashSetWith1x11<T>;
3872 (path: lodash.__, value: any): LodashSetWith1x13<T>;
3873 (path: lodash.PropertyPath, value: any): T;
3874 }
3875 interface LodashSetWith1x10<T> {
3876 (customizer: lodash.SetWithCustomizer<T>): LodashSetWith1x11<T>;
3877 (customizer: lodash.__, value: any): LodashSetWith1x14<T>;
3878 (customizer: lodash.SetWithCustomizer<T>, value: any): T;
3879 }
3880 type LodashSetWith1x11<T> = (value: any) => T;
3881 interface LodashSetWith1x12<T> {
3882 (customizer: lodash.SetWithCustomizer<T>): LodashSetWith1x13<T>;
3883 (customizer: lodash.__, path: lodash.PropertyPath): LodashSetWith1x14<T>;
3884 (customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath): T;
3885 }
3886 type LodashSetWith1x13<T> = (path: lodash.PropertyPath) => T;
3887 type LodashSetWith1x14<T> = (customizer: lodash.SetWithCustomizer<T>) => T;
3888 interface LodashShuffle {
3889 <T>(collection: lodash.List<T> | null | undefined): T[];
3890 <T extends object>(collection: T | null | undefined): Array<T[keyof T]>;
3891 }
3892 type LodashSize = (collection: object | string | null | undefined) => number;
3893 interface LodashSlice {
3894 (start: number): LodashSlice1x1;
3895 (start: lodash.__, end: number): LodashSlice1x2;
3896 (start: number, end: number): LodashSlice1x3;
3897 <T>(start: lodash.__, end: lodash.__, array: lodash.List<T> | null | undefined): LodashSlice1x4<T>;
3898 <T>(start: number, end: lodash.__, array: lodash.List<T> | null | undefined): LodashSlice1x5<T>;
3899 <T>(start: lodash.__, end: number, array: lodash.List<T> | null | undefined): LodashSlice1x6<T>;
3900 <T>(start: number, end: number, array: lodash.List<T> | null | undefined): T[];
3901 }
3902 interface LodashSlice1x1 {
3903 (end: number): LodashSlice1x3;
3904 <T>(end: lodash.__, array: lodash.List<T> | null | undefined): LodashSlice1x5<T>;
3905 <T>(end: number, array: lodash.List<T> | null | undefined): T[];
3906 }
3907 interface LodashSlice1x2 {
3908 (start: number): LodashSlice1x3;
3909 <T>(start: lodash.__, array: lodash.List<T> | null | undefined): LodashSlice1x6<T>;
3910 <T>(start: number, array: lodash.List<T> | null | undefined): T[];
3911 }
3912 type LodashSlice1x3 = <T>(array: lodash.List<T> | null | undefined) => T[];
3913 interface LodashSlice1x4<T> {
3914 (start: number): LodashSlice1x5<T>;
3915 (start: lodash.__, end: number): LodashSlice1x6<T>;
3916 (start: number, end: number): T[];
3917 }
3918 type LodashSlice1x5<T> = (end: number) => T[];
3919 type LodashSlice1x6<T> = (start: number) => T[];
3920 type LodashSnakeCase = (string: string) => string;
3921 interface LodashSortBy {
3922 <T>(iteratees: lodash.Many<lodash.ValueIteratee<T>>): LodashSortBy1x1<T>;
3923 <T>(iteratees: lodash.__, collection: lodash.List<T> | null | undefined): LodashSortBy1x2<T>;
3924 <T>(iteratees: lodash.Many<lodash.ValueIteratee<T>>, collection: lodash.List<T> | null | undefined): T[];
3925 <T extends object>(iteratees: lodash.__, collection: T | null | undefined): LodashSortBy2x2<T>;
3926 <T extends object>(iteratees: lodash.Many<lodash.ValueIteratee<T[keyof T]>>, collection: T | null | undefined): Array<T[keyof T]>;
3927 }
3928 type LodashSortBy1x1<T> = (collection: lodash.List<T> | object | null | undefined) => T[];
3929 type LodashSortBy1x2<T> = (iteratees: lodash.Many<lodash.ValueIteratee<T>>) => T[];
3930 type LodashSortBy2x2<T> = (iteratees: lodash.Many<lodash.ValueIteratee<T[keyof T]>>) => Array<T[keyof T]>;
3931 interface LodashSortedIndex {
3932 <T>(value: T): LodashSortedIndex1x1<T>;
3933 <T>(value: lodash.__, array: lodash.List<T> | null | undefined): LodashSortedIndex1x2<T>;
3934 <T>(value: T, array: lodash.List<T> | null | undefined): number;
3935 }
3936 type LodashSortedIndex1x1<T> = (array: lodash.List<T> | null | undefined) => number;
3937 type LodashSortedIndex1x2<T> = (value: T) => number;
3938 interface LodashSortedIndexBy {
3939 <T>(iteratee: lodash.ValueIteratee<T>): LodashSortedIndexBy1x1<T>;
3940 <T>(iteratee: lodash.__, value: T): LodashSortedIndexBy1x2<T>;
3941 <T>(iteratee: lodash.ValueIteratee<T>, value: T): LodashSortedIndexBy1x3<T>;
3942 <T>(iteratee: lodash.__, value: lodash.__, array: lodash.List<T> | null | undefined): LodashSortedIndexBy1x4<T>;
3943 <T>(iteratee: lodash.ValueIteratee<T>, value: lodash.__, array: lodash.List<T> | null | undefined): LodashSortedIndexBy1x5<T>;
3944 <T>(iteratee: lodash.__, value: T, array: lodash.List<T> | null | undefined): LodashSortedIndexBy1x6<T>;
3945 <T>(iteratee: lodash.ValueIteratee<T>, value: T, array: lodash.List<T> | null | undefined): number;
3946 }
3947 interface LodashSortedIndexBy1x1<T> {
3948 (value: T): LodashSortedIndexBy1x3<T>;
3949 (value: lodash.__, array: lodash.List<T> | null | undefined): LodashSortedIndexBy1x5<T>;
3950 (value: T, array: lodash.List<T> | null | undefined): number;
3951 }
3952 interface LodashSortedIndexBy1x2<T> {
3953 (iteratee: lodash.ValueIteratee<T>): LodashSortedIndexBy1x3<T>;
3954 (iteratee: lodash.__, array: lodash.List<T> | null | undefined): LodashSortedIndexBy1x6<T>;
3955 (iteratee: lodash.ValueIteratee<T>, array: lodash.List<T> | null | undefined): number;
3956 }
3957 type LodashSortedIndexBy1x3<T> = (array: lodash.List<T> | null | undefined) => number;
3958 interface LodashSortedIndexBy1x4<T> {
3959 (iteratee: lodash.ValueIteratee<T>): LodashSortedIndexBy1x5<T>;
3960 (iteratee: lodash.__, value: T): LodashSortedIndexBy1x6<T>;
3961 (iteratee: lodash.ValueIteratee<T>, value: T): number;
3962 }
3963 type LodashSortedIndexBy1x5<T> = (value: T) => number;
3964 type LodashSortedIndexBy1x6<T> = (iteratee: lodash.ValueIteratee<T>) => number;
3965 interface LodashSortedIndexOf {
3966 <T>(value: T): LodashSortedIndexOf1x1<T>;
3967 <T>(value: lodash.__, array: lodash.List<T> | null | undefined): LodashSortedIndexOf1x2<T>;
3968 <T>(value: T, array: lodash.List<T> | null | undefined): number;
3969 }
3970 type LodashSortedIndexOf1x1<T> = (array: lodash.List<T> | null | undefined) => number;
3971 type LodashSortedIndexOf1x2<T> = (value: T) => number;
3972 interface LodashSortedLastIndex {
3973 <T>(value: T): LodashSortedLastIndex1x1<T>;
3974 <T>(value: lodash.__, array: lodash.List<T> | null | undefined): LodashSortedLastIndex1x2<T>;
3975 <T>(value: T, array: lodash.List<T> | null | undefined): number;
3976 }
3977 type LodashSortedLastIndex1x1<T> = (array: lodash.List<T> | null | undefined) => number;
3978 type LodashSortedLastIndex1x2<T> = (value: T) => number;
3979 interface LodashSortedLastIndexBy {
3980 <T>(iteratee: lodash.ValueIteratee<T>): LodashSortedLastIndexBy1x1<T>;
3981 <T>(iteratee: lodash.__, value: T): LodashSortedLastIndexBy1x2<T>;
3982 <T>(iteratee: lodash.ValueIteratee<T>, value: T): LodashSortedLastIndexBy1x3<T>;
3983 <T>(iteratee: lodash.__, value: lodash.__, array: lodash.List<T> | null | undefined): LodashSortedLastIndexBy1x4<T>;
3984 <T>(iteratee: lodash.ValueIteratee<T>, value: lodash.__, array: lodash.List<T> | null | undefined): LodashSortedLastIndexBy1x5<T>;
3985 <T>(iteratee: lodash.__, value: T, array: lodash.List<T> | null | undefined): LodashSortedLastIndexBy1x6<T>;
3986 <T>(iteratee: lodash.ValueIteratee<T>, value: T, array: lodash.List<T> | null | undefined): number;
3987 }
3988 interface LodashSortedLastIndexBy1x1<T> {
3989 (value: T): LodashSortedLastIndexBy1x3<T>;
3990 (value: lodash.__, array: lodash.List<T> | null | undefined): LodashSortedLastIndexBy1x5<T>;
3991 (value: T, array: lodash.List<T> | null | undefined): number;
3992 }
3993 interface LodashSortedLastIndexBy1x2<T> {
3994 (iteratee: lodash.ValueIteratee<T>): LodashSortedLastIndexBy1x3<T>;
3995 (iteratee: lodash.__, array: lodash.List<T> | null | undefined): LodashSortedLastIndexBy1x6<T>;
3996 (iteratee: lodash.ValueIteratee<T>, array: lodash.List<T> | null | undefined): number;
3997 }
3998 type LodashSortedLastIndexBy1x3<T> = (array: lodash.List<T> | null | undefined) => number;
3999 interface LodashSortedLastIndexBy1x4<T> {
4000 (iteratee: lodash.ValueIteratee<T>): LodashSortedLastIndexBy1x5<T>;
4001 (iteratee: lodash.__, value: T): LodashSortedLastIndexBy1x6<T>;
4002 (iteratee: lodash.ValueIteratee<T>, value: T): number;
4003 }
4004 type LodashSortedLastIndexBy1x5<T> = (value: T) => number;
4005 type LodashSortedLastIndexBy1x6<T> = (iteratee: lodash.ValueIteratee<T>) => number;
4006 interface LodashSortedLastIndexOf {
4007 <T>(value: T): LodashSortedLastIndexOf1x1<T>;
4008 <T>(value: lodash.__, array: lodash.List<T> | null | undefined): LodashSortedLastIndexOf1x2<T>;
4009 <T>(value: T, array: lodash.List<T> | null | undefined): number;
4010 }
4011 type LodashSortedLastIndexOf1x1<T> = (array: lodash.List<T> | null | undefined) => number;
4012 type LodashSortedLastIndexOf1x2<T> = (value: T) => number;
4013 type LodashSortedUniq = <T>(array: lodash.List<T> | null | undefined) => T[];
4014 interface LodashSortedUniqBy {
4015 <T>(iteratee: lodash.ValueIteratee<T>): LodashSortedUniqBy1x1<T>;
4016 <T>(iteratee: lodash.__, array: lodash.List<T> | null | undefined): LodashSortedUniqBy1x2<T>;
4017 <T>(iteratee: lodash.ValueIteratee<T>, array: lodash.List<T> | null | undefined): T[];
4018 }
4019 type LodashSortedUniqBy1x1<T> = (array: lodash.List<T> | null | undefined) => T[];
4020 type LodashSortedUniqBy1x2<T> = (iteratee: lodash.ValueIteratee<T>) => T[];
4021 interface LodashSplit {
4022 (separator: RegExp | string): LodashSplit1x1;
4023 (separator: lodash.__, string: string | null | undefined): LodashSplit1x2;
4024 (separator: RegExp | string, string: string | null | undefined): string[];
4025 }
4026 type LodashSplit1x1 = (string: string | null | undefined) => string[];
4027 type LodashSplit1x2 = (separator: RegExp | string) => string[];
4028 type LodashSpread = <TResult>(func: (...args: any[]) => TResult) => (...args: any[]) => TResult;
4029 interface LodashSpreadFrom {
4030 (start: number): LodashSpreadFrom1x1;
4031 <TResult>(start: lodash.__, func: (...args: any[]) => TResult): LodashSpreadFrom1x2<TResult>;
4032 <TResult>(start: number, func: (...args: any[]) => TResult): (...args: any[]) => TResult;
4033 }
4034 type LodashSpreadFrom1x1 = <TResult>(func: (...args: any[]) => TResult) => (...args: any[]) => TResult;
4035 type LodashSpreadFrom1x2<TResult> = (start: number) => (...args: any[]) => TResult;
4036 type LodashStartCase = (string: string) => string;
4037 interface LodashStartsWith {
4038 (target: string): LodashStartsWith1x1;
4039 (target: lodash.__, string: string): LodashStartsWith1x2;
4040 (target: string, string: string): boolean;
4041 }
4042 type LodashStartsWith1x1 = (string: string) => boolean;
4043 type LodashStartsWith1x2 = (target: string) => boolean;
4044 type LodashStubArray = () => any[];
4045 type LodashStubObject = () => any;
4046 type LodashStubString = () => string;
4047 type LodashStubTrue = () => true;
4048 interface LodashSubtract {
4049 (minuend: number): LodashSubtract1x1;
4050 (minuend: lodash.__, subtrahend: number): LodashSubtract1x2;
4051 (minuend: number, subtrahend: number): number;
4052 }
4053 type LodashSubtract1x1 = (subtrahend: number) => number;
4054 type LodashSubtract1x2 = (minuend: number) => number;
4055 type LodashSum = (collection: lodash.List<any> | null | undefined) => number;
4056 interface LodashSumBy {
4057 <T>(iteratee: ((value: T) => number) | string): LodashSumBy1x1<T>;
4058 <T>(iteratee: lodash.__, collection: lodash.List<T> | null | undefined): LodashSumBy1x2<T>;
4059 <T>(iteratee: ((value: T) => number) | string, collection: lodash.List<T> | null | undefined): number;
4060 }
4061 type LodashSumBy1x1<T> = (collection: lodash.List<T> | null | undefined) => number;
4062 type LodashSumBy1x2<T> = (iteratee: ((value: T) => number) | string) => number;
4063 interface LodashXor {
4064 <T>(arrays2: lodash.List<T> | null | undefined): LodashXor1x1<T>;
4065 <T>(arrays2: lodash.__, arrays: lodash.List<T> | null | undefined): LodashXor1x2<T>;
4066 <T>(arrays2: lodash.List<T> | null | undefined, arrays: lodash.List<T> | null | undefined): T[];
4067 }
4068 type LodashXor1x1<T> = (arrays: lodash.List<T> | null | undefined) => T[];
4069 type LodashXor1x2<T> = (arrays2: lodash.List<T> | null | undefined) => T[];
4070 interface LodashXorBy {
4071 <T>(iteratee: lodash.ValueIteratee<T>): LodashXorBy1x1<T>;
4072 <T>(iteratee: lodash.__, arrays: lodash.List<T> | null | undefined): LodashXorBy1x2<T>;
4073 <T>(iteratee: lodash.ValueIteratee<T>, arrays: lodash.List<T> | null | undefined): LodashXorBy1x3<T>;
4074 <T>(iteratee: lodash.__, arrays: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashXorBy1x4<T>;
4075 <T>(iteratee: lodash.ValueIteratee<T>, arrays: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashXorBy1x5<T>;
4076 <T>(iteratee: lodash.__, arrays: lodash.List<T> | null | undefined, arrays2: lodash.List<T> | null | undefined): LodashXorBy1x6<T>;
4077 <T>(iteratee: lodash.ValueIteratee<T>, arrays: lodash.List<T> | null | undefined, arrays2: lodash.List<T> | null | undefined): T[];
4078 }
4079 interface LodashXorBy1x1<T> {
4080 (arrays: lodash.List<T> | null | undefined): LodashXorBy1x3<T>;
4081 (arrays: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashXorBy1x5<T>;
4082 (arrays: lodash.List<T> | null | undefined, arrays2: lodash.List<T> | null | undefined): T[];
4083 }
4084 interface LodashXorBy1x2<T> {
4085 (iteratee: lodash.ValueIteratee<T>): LodashXorBy1x3<T>;
4086 (iteratee: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashXorBy1x6<T>;
4087 (iteratee: lodash.ValueIteratee<T>, arrays2: lodash.List<T> | null | undefined): T[];
4088 }
4089 type LodashXorBy1x3<T> = (arrays2: lodash.List<T> | null | undefined) => T[];
4090 interface LodashXorBy1x4<T> {
4091 (iteratee: lodash.ValueIteratee<T>): LodashXorBy1x5<T>;
4092 (iteratee: lodash.__, arrays: lodash.List<T> | null | undefined): LodashXorBy1x6<T>;
4093 (iteratee: lodash.ValueIteratee<T>, arrays: lodash.List<T> | null | undefined): T[];
4094 }
4095 type LodashXorBy1x5<T> = (arrays: lodash.List<T> | null | undefined) => T[];
4096 type LodashXorBy1x6<T> = (iteratee: lodash.ValueIteratee<T>) => T[];
4097 interface LodashXorWith {
4098 <T>(comparator: lodash.Comparator<T>): LodashXorWith1x1<T>;
4099 <T>(comparator: lodash.__, arrays: lodash.List<T> | null | undefined): LodashXorWith1x2<T>;
4100 <T>(comparator: lodash.Comparator<T>, arrays: lodash.List<T> | null | undefined): LodashXorWith1x3<T>;
4101 <T>(comparator: lodash.__, arrays: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashXorWith1x4<T>;
4102 <T>(comparator: lodash.Comparator<T>, arrays: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashXorWith1x5<T>;
4103 <T>(comparator: lodash.__, arrays: lodash.List<T> | null | undefined, arrays2: lodash.List<T> | null | undefined): LodashXorWith1x6<T>;
4104 <T>(comparator: lodash.Comparator<T>, arrays: lodash.List<T> | null | undefined, arrays2: lodash.List<T> | null | undefined): T[];
4105 }
4106 interface LodashXorWith1x1<T> {
4107 (arrays: lodash.List<T> | null | undefined): LodashXorWith1x3<T>;
4108 (arrays: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashXorWith1x5<T>;
4109 (arrays: lodash.List<T> | null | undefined, arrays2: lodash.List<T> | null | undefined): T[];
4110 }
4111 interface LodashXorWith1x2<T> {
4112 (comparator: lodash.Comparator<T>): LodashXorWith1x3<T>;
4113 (comparator: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashXorWith1x6<T>;
4114 (comparator: lodash.Comparator<T>, arrays2: lodash.List<T> | null | undefined): T[];
4115 }
4116 type LodashXorWith1x3<T> = (arrays2: lodash.List<T> | null | undefined) => T[];
4117 interface LodashXorWith1x4<T> {
4118 (comparator: lodash.Comparator<T>): LodashXorWith1x5<T>;
4119 (comparator: lodash.__, arrays: lodash.List<T> | null | undefined): LodashXorWith1x6<T>;
4120 (comparator: lodash.Comparator<T>, arrays: lodash.List<T> | null | undefined): T[];
4121 }
4122 type LodashXorWith1x5<T> = (arrays: lodash.List<T> | null | undefined) => T[];
4123 type LodashXorWith1x6<T> = (comparator: lodash.Comparator<T>) => T[];
4124 type LodashTail = <T>(array: lodash.List<T> | null | undefined) => T[];
4125 interface LodashTake {
4126 (n: number): LodashTake1x1;
4127 <T>(n: lodash.__, array: lodash.List<T> | null | undefined): LodashTake1x2<T>;
4128 <T>(n: number, array: lodash.List<T> | null | undefined): T[];
4129 }
4130 type LodashTake1x1 = <T>(array: lodash.List<T> | null | undefined) => T[];
4131 type LodashTake1x2<T> = (n: number) => T[];
4132 interface LodashTakeRight {
4133 (n: number): LodashTakeRight1x1;
4134 <T>(n: lodash.__, array: lodash.List<T> | null | undefined): LodashTakeRight1x2<T>;
4135 <T>(n: number, array: lodash.List<T> | null | undefined): T[];
4136 }
4137 type LodashTakeRight1x1 = <T>(array: lodash.List<T> | null | undefined) => T[];
4138 type LodashTakeRight1x2<T> = (n: number) => T[];
4139 interface LodashTakeRightWhile {
4140 <T>(predicate: lodash.ValueIteratee<T>): LodashTakeRightWhile1x1<T>;
4141 <T>(predicate: lodash.__, array: lodash.List<T> | null | undefined): LodashTakeRightWhile1x2<T>;
4142 <T>(predicate: lodash.ValueIteratee<T>, array: lodash.List<T> | null | undefined): T[];
4143 }
4144 type LodashTakeRightWhile1x1<T> = (array: lodash.List<T> | null | undefined) => T[];
4145 type LodashTakeRightWhile1x2<T> = (predicate: lodash.ValueIteratee<T>) => T[];
4146 interface LodashTakeWhile {
4147 <T>(predicate: lodash.ValueIteratee<T>): LodashTakeWhile1x1<T>;
4148 <T>(predicate: lodash.__, array: lodash.List<T> | null | undefined): LodashTakeWhile1x2<T>;
4149 <T>(predicate: lodash.ValueIteratee<T>, array: lodash.List<T> | null | undefined): T[];
4150 }
4151 type LodashTakeWhile1x1<T> = (array: lodash.List<T> | null | undefined) => T[];
4152 type LodashTakeWhile1x2<T> = (predicate: lodash.ValueIteratee<T>) => T[];
4153 interface LodashTap {
4154 <T>(interceptor: (value: T) => void): LodashTap1x1<T>;
4155 <T>(interceptor: lodash.__, value: T): LodashTap1x2<T>;
4156 <T>(interceptor: (value: T) => void, value: T): T;
4157 }
4158 type LodashTap1x1<T> = (value: T) => T;
4159 type LodashTap1x2<T> = (interceptor: (value: T) => void) => T;
4160 type LodashTemplate = (string: string) => lodash.TemplateExecutor;
4161 interface LodashThrottle {
4162 (wait: number): LodashThrottle1x1;
4163 <T extends (...args: any) => any>(wait: lodash.__, func: T): LodashThrottle1x2<T>;
4164 <T extends (...args: any) => any>(wait: number, func: T): lodash.DebouncedFunc<T>;
4165 }
4166 type LodashThrottle1x1 = <T extends (...args: any) => any>(func: T) => lodash.DebouncedFunc<T>;
4167 type LodashThrottle1x2<T extends (...args: any) => any> = (wait: number) => lodash.DebouncedFunc<T>;
4168 interface LodashThru {
4169 <T, TResult>(interceptor: (value: T) => TResult): LodashThru1x1<T, TResult>;
4170 <T>(interceptor: lodash.__, value: T): LodashThru1x2<T>;
4171 <T, TResult>(interceptor: (value: T) => TResult, value: T): TResult;
4172 }
4173 type LodashThru1x1<T, TResult> = (value: T) => TResult;
4174 type LodashThru1x2<T> = <TResult>(interceptor: (value: T) => TResult) => TResult;
4175 interface LodashTimes {
4176 <TResult>(iteratee: (num: number) => TResult): LodashTimes1x1<TResult>;
4177 (iteratee: lodash.__, n: number): LodashTimes1x2;
4178 <TResult>(iteratee: (num: number) => TResult, n: number): TResult[];
4179 }
4180 type LodashTimes1x1<TResult> = (n: number) => TResult[];
4181 type LodashTimes1x2 = <TResult>(iteratee: (num: number) => TResult) => TResult[];
4182 interface LodashToArray {
4183 <T>(value: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): T[];
4184 <T>(value: T): Array<T[keyof T]>;
4185 (): any[];
4186 }
4187 type LodashToFinite = (value: any) => number;
4188 type LodashToInteger = (value: any) => number;
4189 type LodashToLength = (value: any) => number;
4190 type LodashToLower = (string: string) => string;
4191 type LodashToNumber = (value: any) => number;
4192 type LodashToPath = (value: any) => string[];
4193 type LodashToPlainObject = (value: any) => any;
4194 type LodashToSafeInteger = (value: any) => number;
4195 type LodashToString = (value: any) => string;
4196 type LodashToUpper = (string: string) => string;
4197 interface LodashTransform {
4198 <T, TResult>(iteratee: lodash.MemoVoidIteratorCapped<T, TResult>): LodashTransform1x1<T, TResult>;
4199 <TResult>(iteratee: lodash.__, accumulator: TResult): LodashTransform1x2<TResult>;
4200 <T, TResult>(iteratee: lodash.MemoVoidIteratorCapped<T, TResult>, accumulator: TResult): LodashTransform1x3<T, TResult>;
4201 <T>(iteratee: lodash.__, accumulator: lodash.__, object: ReadonlyArray<T>): LodashTransform1x4<T>;
4202 <T, TResult>(iteratee: lodash.MemoVoidIteratorCapped<T, TResult>, accumulator: lodash.__, object: ReadonlyArray<T>): LodashTransform1x5<TResult>;
4203 <T, TResult>(iteratee: lodash.__, accumulator: TResult, object: ReadonlyArray<T>): LodashTransform1x6<T, TResult>;
4204 <T, TResult>(iteratee: lodash.MemoVoidIteratorCapped<T, TResult>, accumulator: TResult, object: ReadonlyArray<T> | lodash.Dictionary<T>): TResult;
4205 <T>(iteratee: lodash.__, accumulator: lodash.__, object: lodash.Dictionary<T>): LodashTransform2x4<T>;
4206 <T, TResult>(iteratee: lodash.MemoVoidIteratorCapped<T, TResult>, accumulator: lodash.__, object: lodash.Dictionary<T>): LodashTransform2x5<TResult>;
4207 <T, TResult>(iteratee: lodash.__, accumulator: TResult, object: lodash.Dictionary<T>): LodashTransform2x6<T, TResult>;
4208 }
4209 interface LodashTransform1x1<T, TResult> {
4210 (accumulator: TResult): LodashTransform1x3<T, TResult>;
4211 (accumulator: lodash.__, object: ReadonlyArray<T>): LodashTransform1x5<TResult>;
4212 (accumulator: TResult, object: ReadonlyArray<T> | lodash.Dictionary<T>): TResult;
4213 (accumulator: lodash.__, object: lodash.Dictionary<T>): LodashTransform2x5<TResult>;
4214 }
4215 interface LodashTransform1x2<TResult> {
4216 <T>(iteratee: lodash.MemoVoidIteratorCapped<T, TResult>): LodashTransform1x3<T, TResult>;
4217 <T>(iteratee: lodash.__, object: ReadonlyArray<T>): LodashTransform1x6<T, TResult>;
4218 <T>(iteratee: lodash.MemoVoidIteratorCapped<T, TResult>, object: ReadonlyArray<T> | lodash.Dictionary<T>): TResult;
4219 <T>(iteratee: lodash.__, object: lodash.Dictionary<T>): LodashTransform2x6<T, TResult>;
4220 }
4221 type LodashTransform1x3<T, TResult> = (object: ReadonlyArray<T> | lodash.Dictionary<T>) => TResult;
4222 interface LodashTransform1x4<T> {
4223 <TResult>(iteratee: lodash.MemoVoidIteratorCapped<T, TResult>): LodashTransform1x5<TResult>;
4224 <TResult>(iteratee: lodash.__, accumulator: TResult): LodashTransform1x6<T, TResult>;
4225 <TResult>(iteratee: lodash.MemoVoidIteratorCapped<T, TResult>, accumulator: TResult): TResult;
4226 }
4227 type LodashTransform1x5<TResult> = (accumulator: TResult) => TResult;
4228 type LodashTransform1x6<T, TResult> = (iteratee: lodash.MemoVoidIteratorCapped<T, TResult>) => TResult;
4229 interface LodashTransform2x4<T> {
4230 <TResult>(iteratee: lodash.MemoVoidIteratorCapped<T, TResult>): LodashTransform2x5<TResult>;
4231 <TResult>(iteratee: lodash.__, accumulator: TResult): LodashTransform2x6<T, TResult>;
4232 <TResult>(iteratee: lodash.MemoVoidIteratorCapped<T, TResult>, accumulator: TResult): TResult;
4233 }
4234 type LodashTransform2x5<TResult> = (accumulator: TResult) => TResult;
4235 type LodashTransform2x6<T, TResult> = (iteratee: lodash.MemoVoidIteratorCapped<T, TResult>) => TResult;
4236 type LodashTrim = (string: string) => string;
4237 interface LodashTrimChars {
4238 (chars: string): LodashTrimChars1x1;
4239 (chars: lodash.__, string: string): LodashTrimChars1x2;
4240 (chars: string, string: string): string;
4241 }
4242 type LodashTrimChars1x1 = (string: string) => string;
4243 type LodashTrimChars1x2 = (chars: string) => string;
4244 interface LodashTrimCharsEnd {
4245 (chars: string): LodashTrimCharsEnd1x1;
4246 (chars: lodash.__, string: string): LodashTrimCharsEnd1x2;
4247 (chars: string, string: string): string;
4248 }
4249 type LodashTrimCharsEnd1x1 = (string: string) => string;
4250 type LodashTrimCharsEnd1x2 = (chars: string) => string;
4251 interface LodashTrimCharsStart {
4252 (chars: string): LodashTrimCharsStart1x1;
4253 (chars: lodash.__, string: string): LodashTrimCharsStart1x2;
4254 (chars: string, string: string): string;
4255 }
4256 type LodashTrimCharsStart1x1 = (string: string) => string;
4257 type LodashTrimCharsStart1x2 = (chars: string) => string;
4258 type LodashTrimEnd = (string: string) => string;
4259 type LodashTrimStart = (string: string) => string;
4260 interface LodashTruncate {
4261 (options: lodash.TruncateOptions): LodashTruncate1x1;
4262 (options: lodash.__, string: string): LodashTruncate1x2;
4263 (options: lodash.TruncateOptions, string: string): string;
4264 }
4265 type LodashTruncate1x1 = (string: string) => string;
4266 type LodashTruncate1x2 = (options: lodash.TruncateOptions) => string;
4267 type LodashUnapply = (func: (...args: any[]) => any) => (...args: any[]) => any;
4268 type LodashUnary = <T, TResult>(func: (arg1: T, ...args: any[]) => TResult) => (arg1: T) => TResult;
4269 type LodashUnescape = (string: string) => string;
4270 interface LodashUnion {
4271 <T>(arrays2: lodash.List<T> | null | undefined): LodashUnion1x1<T>;
4272 <T>(arrays2: lodash.__, arrays: lodash.List<T> | null | undefined): LodashUnion1x2<T>;
4273 <T>(arrays2: lodash.List<T> | null | undefined, arrays: lodash.List<T> | null | undefined): T[];
4274 }
4275 type LodashUnion1x1<T> = (arrays: lodash.List<T> | null | undefined) => T[];
4276 type LodashUnion1x2<T> = (arrays2: lodash.List<T> | null | undefined) => T[];
4277 interface LodashUnionBy {
4278 <T>(iteratee: lodash.ValueIteratee<T>): LodashUnionBy1x1<T>;
4279 <T>(iteratee: lodash.__, arrays1: lodash.List<T> | null | undefined): LodashUnionBy1x2<T>;
4280 <T>(iteratee: lodash.ValueIteratee<T>, arrays1: lodash.List<T> | null | undefined): LodashUnionBy1x3<T>;
4281 <T>(iteratee: lodash.__, arrays1: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashUnionBy1x4<T>;
4282 <T>(iteratee: lodash.ValueIteratee<T>, arrays1: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashUnionBy1x5<T>;
4283 <T>(iteratee: lodash.__, arrays1: lodash.List<T> | null | undefined, arrays2: lodash.List<T> | null | undefined): LodashUnionBy1x6<T>;
4284 <T>(iteratee: lodash.ValueIteratee<T>, arrays1: lodash.List<T> | null | undefined, arrays2: lodash.List<T> | null | undefined): T[];
4285 }
4286 interface LodashUnionBy1x1<T> {
4287 (arrays1: lodash.List<T> | null | undefined): LodashUnionBy1x3<T>;
4288 (arrays1: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashUnionBy1x5<T>;
4289 (arrays1: lodash.List<T> | null | undefined, arrays2: lodash.List<T> | null | undefined): T[];
4290 }
4291 interface LodashUnionBy1x2<T> {
4292 (iteratee: lodash.ValueIteratee<T>): LodashUnionBy1x3<T>;
4293 (iteratee: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashUnionBy1x6<T>;
4294 (iteratee: lodash.ValueIteratee<T>, arrays2: lodash.List<T> | null | undefined): T[];
4295 }
4296 type LodashUnionBy1x3<T> = (arrays2: lodash.List<T> | null | undefined) => T[];
4297 interface LodashUnionBy1x4<T> {
4298 (iteratee: lodash.ValueIteratee<T>): LodashUnionBy1x5<T>;
4299 (iteratee: lodash.__, arrays1: lodash.List<T> | null | undefined): LodashUnionBy1x6<T>;
4300 (iteratee: lodash.ValueIteratee<T>, arrays1: lodash.List<T> | null | undefined): T[];
4301 }
4302 type LodashUnionBy1x5<T> = (arrays1: lodash.List<T> | null | undefined) => T[];
4303 type LodashUnionBy1x6<T> = (iteratee: lodash.ValueIteratee<T>) => T[];
4304 interface LodashUnionWith {
4305 <T>(comparator: lodash.Comparator<T>): LodashUnionWith1x1<T>;
4306 <T>(comparator: lodash.__, arrays: lodash.List<T> | null | undefined): LodashUnionWith1x2<T>;
4307 <T>(comparator: lodash.Comparator<T>, arrays: lodash.List<T> | null | undefined): LodashUnionWith1x3<T>;
4308 <T>(comparator: lodash.__, arrays: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashUnionWith1x4<T>;
4309 <T>(comparator: lodash.Comparator<T>, arrays: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashUnionWith1x5<T>;
4310 <T>(comparator: lodash.__, arrays: lodash.List<T> | null | undefined, arrays2: lodash.List<T> | null | undefined): LodashUnionWith1x6<T>;
4311 <T>(comparator: lodash.Comparator<T>, arrays: lodash.List<T> | null | undefined, arrays2: lodash.List<T> | null | undefined): T[];
4312 }
4313 interface LodashUnionWith1x1<T> {
4314 (arrays: lodash.List<T> | null | undefined): LodashUnionWith1x3<T>;
4315 (arrays: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashUnionWith1x5<T>;
4316 (arrays: lodash.List<T> | null | undefined, arrays2: lodash.List<T> | null | undefined): T[];
4317 }
4318 interface LodashUnionWith1x2<T> {
4319 (comparator: lodash.Comparator<T>): LodashUnionWith1x3<T>;
4320 (comparator: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashUnionWith1x6<T>;
4321 (comparator: lodash.Comparator<T>, arrays2: lodash.List<T> | null | undefined): T[];
4322 }
4323 type LodashUnionWith1x3<T> = (arrays2: lodash.List<T> | null | undefined) => T[];
4324 interface LodashUnionWith1x4<T> {
4325 (comparator: lodash.Comparator<T>): LodashUnionWith1x5<T>;
4326 (comparator: lodash.__, arrays: lodash.List<T> | null | undefined): LodashUnionWith1x6<T>;
4327 (comparator: lodash.Comparator<T>, arrays: lodash.List<T> | null | undefined): T[];
4328 }
4329 type LodashUnionWith1x5<T> = (arrays: lodash.List<T> | null | undefined) => T[];
4330 type LodashUnionWith1x6<T> = (comparator: lodash.Comparator<T>) => T[];
4331 type LodashUniq = <T>(array: lodash.List<T> | null | undefined) => T[];
4332 interface LodashUniqBy {
4333 <T>(iteratee: lodash.ValueIteratee<T>): LodashUniqBy1x1<T>;
4334 <T>(iteratee: lodash.__, array: lodash.List<T> | null | undefined): LodashUniqBy1x2<T>;
4335 <T>(iteratee: lodash.ValueIteratee<T>, array: lodash.List<T> | null | undefined): T[];
4336 }
4337 type LodashUniqBy1x1<T> = (array: lodash.List<T> | null | undefined) => T[];
4338 type LodashUniqBy1x2<T> = (iteratee: lodash.ValueIteratee<T>) => T[];
4339 type LodashUniqueId = (prefix: string) => string;
4340 interface LodashUniqWith {
4341 <T>(comparator: lodash.Comparator<T>): LodashUniqWith1x1<T>;
4342 <T>(comparator: lodash.__, array: lodash.List<T> | null | undefined): LodashUniqWith1x2<T>;
4343 <T>(comparator: lodash.Comparator<T>, array: lodash.List<T> | null | undefined): T[];
4344 }
4345 type LodashUniqWith1x1<T> = (array: lodash.List<T> | null | undefined) => T[];
4346 type LodashUniqWith1x2<T> = (comparator: lodash.Comparator<T>) => T[];
4347 type LodashUnzip = <T>(array: T[][] | lodash.List<lodash.List<T>> | null | undefined) => T[][];
4348 interface LodashUnzipWith {
4349 <T, TResult>(iteratee: (...values: T[]) => TResult): LodashUnzipWith1x1<T, TResult>;
4350 <T>(iteratee: lodash.__, array: lodash.List<lodash.List<T>> | null | undefined): LodashUnzipWith1x2<T>;
4351 <T, TResult>(iteratee: (...values: T[]) => TResult, array: lodash.List<lodash.List<T>> | null | undefined): TResult[];
4352 }
4353 type LodashUnzipWith1x1<T, TResult> = (array: lodash.List<lodash.List<T>> | null | undefined) => TResult[];
4354 type LodashUnzipWith1x2<T> = <TResult>(iteratee: (...values: T[]) => TResult) => TResult[];
4355 interface LodashUpdate {
4356 (path: lodash.PropertyPath): LodashUpdate1x1;
4357 (path: lodash.__, updater: (value: any) => any): LodashUpdate1x2;
4358 (path: lodash.PropertyPath, updater: (value: any) => any): LodashUpdate1x3;
4359 (path: lodash.__, updater: lodash.__, object: object): LodashUpdate1x4;
4360 (path: lodash.PropertyPath, updater: lodash.__, object: object): LodashUpdate1x5;
4361 (path: lodash.__, updater: (value: any) => any, object: object): LodashUpdate1x6;
4362 (path: lodash.PropertyPath, updater: (value: any) => any, object: object): any;
4363 }
4364 interface LodashUpdate1x1 {
4365 (updater: (value: any) => any): LodashUpdate1x3;
4366 (updater: lodash.__, object: object): LodashUpdate1x5;
4367 (updater: (value: any) => any, object: object): any;
4368 }
4369 interface LodashUpdate1x2 {
4370 (path: lodash.PropertyPath): LodashUpdate1x3;
4371 (path: lodash.__, object: object): LodashUpdate1x6;
4372 (path: lodash.PropertyPath, object: object): any;
4373 }
4374 type LodashUpdate1x3 = (object: object) => any;
4375 interface LodashUpdate1x4 {
4376 (path: lodash.PropertyPath): LodashUpdate1x5;
4377 (path: lodash.__, updater: (value: any) => any): LodashUpdate1x6;
4378 (path: lodash.PropertyPath, updater: (value: any) => any): any;
4379 }
4380 type LodashUpdate1x5 = (updater: (value: any) => any) => any;
4381 type LodashUpdate1x6 = (path: lodash.PropertyPath) => any;
4382 interface LodashUpdateWith {
4383 <T extends object>(customizer: lodash.SetWithCustomizer<T>): LodashUpdateWith1x1<T>;
4384 (customizer: lodash.__, path: lodash.PropertyPath): LodashUpdateWith1x2;
4385 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath): LodashUpdateWith1x3<T>;
4386 (customizer: lodash.__, path: lodash.__, updater: (oldValue: any) => any): LodashUpdateWith1x4;
4387 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.__, updater: (oldValue: any) => any): LodashUpdateWith1x5<T>;
4388 (customizer: lodash.__, path: lodash.PropertyPath, updater: (oldValue: any) => any): LodashUpdateWith1x6;
4389 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath, updater: (oldValue: any) => any): LodashUpdateWith1x7<T>;
4390 <T extends object>(customizer: lodash.__, path: lodash.__, updater: lodash.__, object: T): LodashUpdateWith1x8<T>;
4391 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.__, updater: lodash.__, object: T): LodashUpdateWith1x9<T>;
4392 <T extends object>(customizer: lodash.__, path: lodash.PropertyPath, updater: lodash.__, object: T): LodashUpdateWith1x10<T>;
4393 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath, updater: lodash.__, object: T): LodashUpdateWith1x11<T>;
4394 <T extends object>(customizer: lodash.__, path: lodash.__, updater: (oldValue: any) => any, object: T): LodashUpdateWith1x12<T>;
4395 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.__, updater: (oldValue: any) => any, object: T): LodashUpdateWith1x13<T>;
4396 <T extends object>(customizer: lodash.__, path: lodash.PropertyPath, updater: (oldValue: any) => any, object: T): LodashUpdateWith1x14<T>;
4397 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath, updater: (oldValue: any) => any, object: T): T;
4398 }
4399 interface LodashUpdateWith1x1<T> {
4400 (path: lodash.PropertyPath): LodashUpdateWith1x3<T>;
4401 (path: lodash.__, updater: (oldValue: any) => any): LodashUpdateWith1x5<T>;
4402 (path: lodash.PropertyPath, updater: (oldValue: any) => any): LodashUpdateWith1x7<T>;
4403 (path: lodash.__, updater: lodash.__, object: T): LodashUpdateWith1x9<T>;
4404 (path: lodash.PropertyPath, updater: lodash.__, object: T): LodashUpdateWith1x11<T>;
4405 (path: lodash.__, updater: (oldValue: any) => any, object: T): LodashUpdateWith1x13<T>;
4406 (path: lodash.PropertyPath, updater: (oldValue: any) => any, object: T): T;
4407 }
4408 interface LodashUpdateWith1x2 {
4409 <T extends object>(customizer: lodash.SetWithCustomizer<T>): LodashUpdateWith1x3<T>;
4410 (customizer: lodash.__, updater: (oldValue: any) => any): LodashUpdateWith1x6;
4411 <T extends object>(customizer: lodash.SetWithCustomizer<T>, updater: (oldValue: any) => any): LodashUpdateWith1x7<T>;
4412 <T extends object>(customizer: lodash.__, updater: lodash.__, object: T): LodashUpdateWith1x10<T>;
4413 <T extends object>(customizer: lodash.SetWithCustomizer<T>, updater: lodash.__, object: T): LodashUpdateWith1x11<T>;
4414 <T extends object>(customizer: lodash.__, updater: (oldValue: any) => any, object: T): LodashUpdateWith1x14<T>;
4415 <T extends object>(customizer: lodash.SetWithCustomizer<T>, updater: (oldValue: any) => any, object: T): T;
4416 }
4417 interface LodashUpdateWith1x3<T> {
4418 (updater: (oldValue: any) => any): LodashUpdateWith1x7<T>;
4419 (updater: lodash.__, object: T): LodashUpdateWith1x11<T>;
4420 (updater: (oldValue: any) => any, object: T): T;
4421 }
4422 interface LodashUpdateWith1x4 {
4423 <T extends object>(customizer: lodash.SetWithCustomizer<T>): LodashUpdateWith1x5<T>;
4424 (customizer: lodash.__, path: lodash.PropertyPath): LodashUpdateWith1x6;
4425 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath): LodashUpdateWith1x7<T>;
4426 <T extends object>(customizer: lodash.__, path: lodash.__, object: T): LodashUpdateWith1x12<T>;
4427 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.__, object: T): LodashUpdateWith1x13<T>;
4428 <T extends object>(customizer: lodash.__, path: lodash.PropertyPath, object: T): LodashUpdateWith1x14<T>;
4429 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath, object: T): T;
4430 }
4431 interface LodashUpdateWith1x5<T> {
4432 (path: lodash.PropertyPath): LodashUpdateWith1x7<T>;
4433 (path: lodash.__, object: T): LodashUpdateWith1x13<T>;
4434 (path: lodash.PropertyPath, object: T): T;
4435 }
4436 interface LodashUpdateWith1x6 {
4437 <T extends object>(customizer: lodash.SetWithCustomizer<T>): LodashUpdateWith1x7<T>;
4438 <T extends object>(customizer: lodash.__, object: T): LodashUpdateWith1x14<T>;
4439 <T extends object>(customizer: lodash.SetWithCustomizer<T>, object: T): T;
4440 }
4441 type LodashUpdateWith1x7<T> = (object: T) => T;
4442 interface LodashUpdateWith1x8<T> {
4443 (customizer: lodash.SetWithCustomizer<T>): LodashUpdateWith1x9<T>;
4444 (customizer: lodash.__, path: lodash.PropertyPath): LodashUpdateWith1x10<T>;
4445 (customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath): LodashUpdateWith1x11<T>;
4446 (customizer: lodash.__, path: lodash.__, updater: (oldValue: any) => any): LodashUpdateWith1x12<T>;
4447 (customizer: lodash.SetWithCustomizer<T>, path: lodash.__, updater: (oldValue: any) => any): LodashUpdateWith1x13<T>;
4448 (customizer: lodash.__, path: lodash.PropertyPath, updater: (oldValue: any) => any): LodashUpdateWith1x14<T>;
4449 (customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath, updater: (oldValue: any) => any): T;
4450 }
4451 interface LodashUpdateWith1x9<T> {
4452 (path: lodash.PropertyPath): LodashUpdateWith1x11<T>;
4453 (path: lodash.__, updater: (oldValue: any) => any): LodashUpdateWith1x13<T>;
4454 (path: lodash.PropertyPath, updater: (oldValue: any) => any): T;
4455 }
4456 interface LodashUpdateWith1x10<T> {
4457 (customizer: lodash.SetWithCustomizer<T>): LodashUpdateWith1x11<T>;
4458 (customizer: lodash.__, updater: (oldValue: any) => any): LodashUpdateWith1x14<T>;
4459 (customizer: lodash.SetWithCustomizer<T>, updater: (oldValue: any) => any): T;
4460 }
4461 type LodashUpdateWith1x11<T> = (updater: (oldValue: any) => any) => T;
4462 interface LodashUpdateWith1x12<T> {
4463 (customizer: lodash.SetWithCustomizer<T>): LodashUpdateWith1x13<T>;
4464 (customizer: lodash.__, path: lodash.PropertyPath): LodashUpdateWith1x14<T>;
4465 (customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath): T;
4466 }
4467 type LodashUpdateWith1x13<T> = (path: lodash.PropertyPath) => T;
4468 type LodashUpdateWith1x14<T> = (customizer: lodash.SetWithCustomizer<T>) => T;
4469 type LodashUpperCase = (string: string) => string;
4470 type LodashUpperFirst = (string: string) => string;
4471 interface LodashValues {
4472 <T>(object: lodash.Dictionary<T> | lodash.NumericDictionary<T> | lodash.List<T> | null | undefined): T[];
4473 <T extends object>(object: T | null | undefined): Array<T[keyof T]>;
4474 (object: any): any[];
4475 }
4476 interface LodashValuesIn {
4477 <T>(object: lodash.Dictionary<T> | lodash.NumericDictionary<T> | lodash.List<T> | null | undefined): T[];
4478 <T extends object>(object: T | null | undefined): Array<T[keyof T]>;
4479 }
4480 interface LodashWithout {
4481 <T>(values: ReadonlyArray<T>): LodashWithout1x1<T>;
4482 <T>(values: lodash.__, array: lodash.List<T> | null | undefined): LodashWithout1x2<T>;
4483 <T>(values: ReadonlyArray<T>, array: lodash.List<T> | null | undefined): T[];
4484 }
4485 type LodashWithout1x1<T> = (array: lodash.List<T> | null | undefined) => T[];
4486 type LodashWithout1x2<T> = (values: ReadonlyArray<T>) => T[];
4487 type LodashWords = (string: string) => string[];
4488 interface LodashWrap {
4489 <T, TArgs, TResult>(wrapper: (value: T, ...args: TArgs[]) => TResult): LodashWrap1x1<T, TArgs, TResult>;
4490 <T>(wrapper: lodash.__, value: T): LodashWrap1x2<T>;
4491 <T, TArgs, TResult>(wrapper: (value: T, ...args: TArgs[]) => TResult, value: T): (...args: TArgs[]) => TResult;
4492 }
4493 type LodashWrap1x1<T, TArgs, TResult> = (value: T) => (...args: TArgs[]) => TResult;
4494 type LodashWrap1x2<T> = <TArgs, TResult>(wrapper: (value: T, ...args: TArgs[]) => TResult) => (...args: TArgs[]) => TResult;
4495 interface LodashZip {
4496 <T1>(arrays1: lodash.List<T1>): LodashZip1x1<T1>;
4497 <T2>(arrays1: lodash.__, arrays2: lodash.List<T2>): LodashZip1x2<T2>;
4498 <T1, T2>(arrays1: lodash.List<T1>, arrays2: lodash.List<T2>): Array<[T1 | undefined, T2 | undefined]>;
4499 }
4500 type LodashZip1x1<T1> = <T2>(arrays2: lodash.List<T2>) => Array<[T1 | undefined, T2 | undefined]>;
4501 type LodashZip1x2<T2> = <T1>(arrays1: lodash.List<T1>) => Array<[T1 | undefined, T2 | undefined]>;
4502 interface LodashZipAll {
4503 <T1, T2>(arrays1: [lodash.List<T1>, lodash.List<T2>]): Array<[T1 | undefined, T2 | undefined]>;
4504 <T1, T2, T3>(arrays1: [lodash.List<T1>, lodash.List<T2>, lodash.List<T3>]): Array<[T1 | undefined, T2 | undefined, T3 | undefined]>;
4505 <T1, T2, T3, T4>(arrays1: [lodash.List<T1>, lodash.List<T2>, lodash.List<T3>, lodash.List<T4>]): Array<[T1 | undefined, T2 | undefined, T3 | undefined, T4 | undefined]>;
4506 <T1, T2, T3, T4, T5>(arrays1: [lodash.List<T1>, lodash.List<T2>, lodash.List<T3>, lodash.List<T4>, lodash.List<T5>]): Array<[T1 | undefined, T2 | undefined, T3 | undefined, T4 | undefined, T5 | undefined]>;
4507 <T>(arrays: ReadonlyArray<lodash.List<T> | null | undefined>): Array<Array<T | undefined>>;
4508 }
4509 interface LodashZipObject {
4510 (props: lodash.List<lodash.PropertyName>): LodashZipObject1x1;
4511 <T>(props: lodash.__, values: lodash.List<T>): LodashZipObject1x2<T>;
4512 <T>(props: lodash.List<lodash.PropertyName>, values: lodash.List<T>): lodash.Dictionary<T>;
4513 }
4514 type LodashZipObject1x1 = <T>(values: lodash.List<T>) => lodash.Dictionary<T>;
4515 type LodashZipObject1x2<T> = (props: lodash.List<lodash.PropertyName>) => lodash.Dictionary<T>;
4516 interface LodashZipObjectDeep {
4517 (paths: lodash.List<lodash.PropertyPath>): LodashZipObjectDeep1x1;
4518 (paths: lodash.__, values: lodash.List<any>): LodashZipObjectDeep1x2;
4519 (paths: lodash.List<lodash.PropertyPath>, values: lodash.List<any>): object;
4520 }
4521 type LodashZipObjectDeep1x1 = (values: lodash.List<any>) => object;
4522 type LodashZipObjectDeep1x2 = (paths: lodash.List<lodash.PropertyPath>) => object;
4523 interface LodashZipWith {
4524 <T1, T2, TResult>(iteratee: (value1: T1, value2: T2) => TResult): LodashZipWith1x1<T1, T2, TResult>;
4525 <T1>(iteratee: lodash.__, arrays1: lodash.List<T1>): LodashZipWith1x2<T1>;
4526 <T1, T2, TResult>(iteratee: (value1: T1, value2: T2) => TResult, arrays1: lodash.List<T1>): LodashZipWith1x3<T2, TResult>;
4527 <T2>(iteratee: lodash.__, arrays1: lodash.__, arrays2: lodash.List<T2>): LodashZipWith1x4<T2>;
4528 <T1, T2, TResult>(iteratee: (value1: T1, value2: T2) => TResult, arrays1: lodash.__, arrays2: lodash.List<T2>): LodashZipWith1x5<T1, TResult>;
4529 <T1, T2>(iteratee: lodash.__, arrays1: lodash.List<T1>, arrays2: lodash.List<T2>): LodashZipWith1x6<T1, T2>;
4530 <T1, T2, TResult>(iteratee: (value1: T1, value2: T2) => TResult, arrays1: lodash.List<T1>, arrays2: lodash.List<T2>): TResult[];
4531 }
4532 interface LodashZipWith1x1<T1, T2, TResult> {
4533 (arrays1: lodash.List<T1>): LodashZipWith1x3<T2, TResult>;
4534 (arrays1: lodash.__, arrays2: lodash.List<T2>): LodashZipWith1x5<T1, TResult>;
4535 (arrays1: lodash.List<T1>, arrays2: lodash.List<T2>): TResult[];
4536 }
4537 interface LodashZipWith1x2<T1> {
4538 <T2, TResult>(iteratee: (value1: T1, value2: T2) => TResult): LodashZipWith1x3<T2, TResult>;
4539 <T2>(iteratee: lodash.__, arrays2: lodash.List<T2>): LodashZipWith1x6<T1, T2>;
4540 <T2, TResult>(iteratee: (value1: T1, value2: T2) => TResult, arrays2: lodash.List<T2>): TResult[];
4541 }
4542 type LodashZipWith1x3<T2, TResult> = (arrays2: lodash.List<T2>) => TResult[];
4543 interface LodashZipWith1x4<T2> {
4544 <T1, TResult>(iteratee: (value1: T1, value2: T2) => TResult): LodashZipWith1x5<T1, TResult>;
4545 <T1>(iteratee: lodash.__, arrays1: lodash.List<T1>): LodashZipWith1x6<T1, T2>;
4546 <T1, TResult>(iteratee: (value1: T1, value2: T2) => TResult, arrays1: lodash.List<T1>): TResult[];
4547 }
4548 type LodashZipWith1x5<T1, TResult> = (arrays1: lodash.List<T1>) => TResult[];
4549 type LodashZipWith1x6<T1, T2> = <TResult>(iteratee: (value1: T1, value2: T2) => TResult) => TResult[];
4550
4551 interface LoDashFp {
4552 add: LodashAdd;
4553 after: LodashAfter;
4554 all: LodashEvery;
4555 allPass: LodashOverEvery;
4556 always: LodashConstant;
4557 any: LodashSome;
4558 anyPass: LodashOverSome;
4559 apply: LodashApply;
4560 ary: LodashAry;
4561 assign: LodashAssign;
4562 assignAll: LodashAssignAll;
4563 assignAllWith: LodashAssignAllWith;
4564 assignIn: LodashAssignIn;
4565 assignInAll: LodashAssignInAll;
4566 assignInAllWith: LodashAssignInAllWith;
4567 assignInWith: LodashAssignInWith;
4568 assignWith: LodashAssignWith;
4569 assoc: LodashSet;
4570 assocPath: LodashSet;
4571 at: LodashAt;
4572 attempt: LodashAttempt;
4573 before: LodashBefore;
4574 bind: LodashBind;
4575 bindAll: LodashBindAll;
4576 bindKey: LodashBindKey;
4577 camelCase: LodashCamelCase;
4578 capitalize: LodashCapitalize;
4579 castArray: LodashCastArray;
4580 ceil: LodashCeil;
4581 chunk: LodashChunk;
4582 clamp: LodashClamp;
4583 clone: LodashClone;
4584 cloneDeep: LodashCloneDeep;
4585 cloneDeepWith: LodashCloneDeepWith;
4586 cloneWith: LodashCloneWith;
4587 compact: LodashCompact;
4588 complement: LodashNegate;
4589 compose: LodashFlowRight;
4590 concat: LodashConcat;
4591 cond: LodashCond;
4592 conforms: LodashConformsTo;
4593 conformsTo: LodashConformsTo;
4594 constant: LodashConstant;
4595 contains: LodashContains;
4596 countBy: LodashCountBy;
4597 create: LodashCreate;
4598 curry: LodashCurry;
4599 curryN: LodashCurryN;
4600 curryRight: LodashCurryRight;
4601 curryRightN: LodashCurryRightN;
4602 debounce: LodashDebounce;
4603 deburr: LodashDeburr;
4604 defaults: LodashDefaults;
4605 defaultsAll: LodashDefaultsAll;
4606 defaultsDeep: LodashDefaultsDeep;
4607 defaultsDeepAll: LodashDefaultsDeepAll;
4608 defaultTo: LodashDefaultTo;
4609 defer: LodashDefer;
4610 delay: LodashDelay;
4611 difference: LodashDifference;
4612 differenceBy: LodashDifferenceBy;
4613 differenceWith: LodashDifferenceWith;
4614 dissoc: LodashUnset;
4615 dissocPath: LodashUnset;
4616 divide: LodashDivide;
4617 drop: LodashDrop;
4618 dropLast: LodashDropRight;
4619 dropLastWhile: LodashDropRightWhile;
4620 dropRight: LodashDropRight;
4621 dropRightWhile: LodashDropRightWhile;
4622 dropWhile: LodashDropWhile;
4623 each: LodashForEach;
4624 eachRight: LodashForEachRight;
4625 endsWith: LodashEndsWith;
4626 entries: LodashToPairs;
4627 entriesIn: LodashToPairsIn;
4628 eq: LodashEq;
4629 equals: LodashIsEqual;
4630 escape: LodashEscape;
4631 escapeRegExp: LodashEscapeRegExp;
4632 every: LodashEvery;
4633 extend: LodashExtend;
4634 extendAll: LodashExtendAll;
4635 extendAllWith: LodashExtendAllWith;
4636 extendWith: LodashExtendWith;
4637 F: LodashStubFalse;
4638 fill: LodashFill;
4639 filter: LodashFilter;
4640 find: LodashFind;
4641 findFrom: LodashFindFrom;
4642 findIndex: LodashFindIndex;
4643 findIndexFrom: LodashFindIndexFrom;
4644 findKey: LodashFindKey;
4645 findLast: LodashFindLast;
4646 findLastFrom: LodashFindLastFrom;
4647 findLastIndex: LodashFindLastIndex;
4648 findLastIndexFrom: LodashFindLastIndexFrom;
4649 findLastKey: LodashFindLastKey;
4650 first: LodashHead;
4651 flatMap: LodashFlatMap;
4652 flatMapDeep: LodashFlatMapDeep;
4653 flatMapDepth: LodashFlatMapDepth;
4654 flatten: LodashFlatten;
4655 flattenDeep: LodashFlattenDeep;
4656 flattenDepth: LodashFlattenDepth;
4657 flip: LodashFlip;
4658 floor: LodashFloor;
4659 flow: LodashFlow;
4660 flowRight: LodashFlowRight;
4661 forEach: LodashForEach;
4662 forEachRight: LodashForEachRight;
4663 forIn: LodashForIn;
4664 forInRight: LodashForInRight;
4665 forOwn: LodashForOwn;
4666 forOwnRight: LodashForOwnRight;
4667 fromPairs: LodashFromPairs;
4668 functions: LodashFunctions;
4669 functionsIn: LodashFunctionsIn;
4670 get: LodashGet;
4671 getOr: LodashGetOr;
4672 groupBy: LodashGroupBy;
4673 gt: LodashGt;
4674 gte: LodashGte;
4675 has: LodashHas;
4676 hasIn: LodashHasIn;
4677 head: LodashHead;
4678 identical: LodashEq;
4679 identity: LodashIdentity;
4680 includes: LodashIncludes;
4681 includesFrom: LodashIncludesFrom;
4682 indexBy: LodashKeyBy;
4683 indexOf: LodashIndexOf;
4684 indexOfFrom: LodashIndexOfFrom;
4685 init: LodashInitial;
4686 initial: LodashInitial;
4687 inRange: LodashInRange;
4688 intersection: LodashIntersection;
4689 intersectionBy: LodashIntersectionBy;
4690 intersectionWith: LodashIntersectionWith;
4691 invert: LodashInvert;
4692 invertBy: LodashInvertBy;
4693 invertObj: LodashInvert;
4694 invoke: LodashInvoke;
4695 invokeArgs: LodashInvokeArgs;
4696 invokeArgsMap: LodashInvokeArgsMap;
4697 invokeMap: LodashInvokeMap;
4698 isArguments: LodashIsArguments;
4699 isArray: LodashIsArray;
4700 isArrayBuffer: LodashIsArrayBuffer;
4701 isArrayLike: LodashIsArrayLike;
4702 isArrayLikeObject: LodashIsArrayLikeObject;
4703 isBoolean: LodashIsBoolean;
4704 isBuffer: LodashIsBuffer;
4705 isDate: LodashIsDate;
4706 isElement: LodashIsElement;
4707 isEmpty: LodashIsEmpty;
4708 isEqual: LodashIsEqual;
4709 isEqualWith: LodashIsEqualWith;
4710 isError: LodashIsError;
4711 isFinite: LodashIsFinite;
4712 isFunction: LodashIsFunction;
4713 isInteger: LodashIsInteger;
4714 isLength: LodashIsLength;
4715 isMap: LodashIsMap;
4716 isMatch: LodashIsMatch;
4717 isMatchWith: LodashIsMatchWith;
4718 isNaN: LodashIsNaN;
4719 isNative: LodashIsNative;
4720 isNil: LodashIsNil;
4721 isNull: LodashIsNull;
4722 isNumber: LodashIsNumber;
4723 isObject: LodashIsObject;
4724 isObjectLike: LodashIsObjectLike;
4725 isPlainObject: LodashIsPlainObject;
4726 isRegExp: LodashIsRegExp;
4727 isSafeInteger: LodashIsSafeInteger;
4728 isSet: LodashIsSet;
4729 isString: LodashIsString;
4730 isSymbol: LodashIsSymbol;
4731 isTypedArray: LodashIsTypedArray;
4732 isUndefined: LodashIsUndefined;
4733 isWeakMap: LodashIsWeakMap;
4734 isWeakSet: LodashIsWeakSet;
4735 iteratee: LodashIteratee;
4736 join: LodashJoin;
4737 juxt: LodashOver;
4738 kebabCase: LodashKebabCase;
4739 keyBy: LodashKeyBy;
4740 keys: LodashKeys;
4741 keysIn: LodashKeysIn;
4742 last: LodashLast;
4743 lastIndexOf: LodashLastIndexOf;
4744 lastIndexOfFrom: LodashLastIndexOfFrom;
4745 lowerCase: LodashLowerCase;
4746 lowerFirst: LodashLowerFirst;
4747 lt: LodashLt;
4748 lte: LodashLte;
4749 map: LodashMap;
4750 mapKeys: LodashMapKeys;
4751 mapValues: LodashMapValues;
4752 matches: LodashIsMatch;
4753 matchesProperty: LodashMatchesProperty;
4754 max: LodashMax;
4755 maxBy: LodashMaxBy;
4756 mean: LodashMean;
4757 meanBy: LodashMeanBy;
4758 memoize: LodashMemoize;
4759 merge: LodashMerge;
4760 mergeAll: LodashMergeAll;
4761 mergeAllWith: LodashMergeAllWith;
4762 mergeWith: LodashMergeWith;
4763 method: LodashMethod;
4764 methodOf: LodashMethodOf;
4765 min: LodashMin;
4766 minBy: LodashMinBy;
4767 multiply: LodashMultiply;
4768 nAry: LodashAry;
4769 negate: LodashNegate;
4770 noConflict: LodashNoConflict;
4771 noop: LodashNoop;
4772 now: LodashNow;
4773 nth: LodashNth;
4774 nthArg: LodashNthArg;
4775 omit: LodashOmit;
4776 omitAll: LodashOmit;
4777 omitBy: LodashOmitBy;
4778 once: LodashOnce;
4779 orderBy: LodashOrderBy;
4780 over: LodashOver;
4781 overArgs: LodashOverArgs;
4782 overEvery: LodashOverEvery;
4783 overSome: LodashOverSome;
4784 pad: LodashPad;
4785 padChars: LodashPadChars;
4786 padCharsEnd: LodashPadCharsEnd;
4787 padCharsStart: LodashPadCharsStart;
4788 padEnd: LodashPadEnd;
4789 padStart: LodashPadStart;
4790 parseInt: LodashParseInt;
4791 partial: LodashPartial;
4792 partialRight: LodashPartialRight;
4793 partition: LodashPartition;
4794 path: LodashPath;
4795 pathEq: LodashMatchesProperty;
4796 pathOr: LodashPathOr;
4797 paths: LodashAt;
4798 pick: LodashPick;
4799 pickAll: LodashPick;
4800 pickBy: LodashPickBy;
4801 pipe: LodashFlow;
4802 pluck: LodashMap;
4803 prop: LodashProp;
4804 propEq: LodashMatchesProperty;
4805 property: LodashProperty;
4806 propertyOf: LodashPropertyOf;
4807 propOr: LodashPropOr;
4808 props: LodashAt;
4809 pull: LodashPull;
4810 pullAll: LodashPullAll;
4811 pullAllBy: LodashPullAllBy;
4812 pullAllWith: LodashPullAllWith;
4813 pullAt: LodashPullAt;
4814 random: LodashRandom;
4815 range: LodashRange;
4816 rangeRight: LodashRangeRight;
4817 rangeStep: LodashRangeStep;
4818 rangeStepRight: LodashRangeStepRight;
4819 rearg: LodashRearg;
4820 reduce: LodashReduce;
4821 reduceRight: LodashReduceRight;
4822 reject: LodashReject;
4823 remove: LodashRemove;
4824 repeat: LodashRepeat;
4825 replace: LodashReplace;
4826 rest: LodashRest;
4827 restFrom: LodashRestFrom;
4828 result: LodashResult;
4829 reverse: LodashReverse;
4830 round: LodashRound;
4831 runInContext: LodashRunInContext;
4832 sample: LodashSample;
4833 sampleSize: LodashSampleSize;
4834 set: LodashSet;
4835 setWith: LodashSetWith;
4836 shuffle: LodashShuffle;
4837 size: LodashSize;
4838 slice: LodashSlice;
4839 snakeCase: LodashSnakeCase;
4840 some: LodashSome;
4841 sortBy: LodashSortBy;
4842 sortedIndex: LodashSortedIndex;
4843 sortedIndexBy: LodashSortedIndexBy;
4844 sortedIndexOf: LodashSortedIndexOf;
4845 sortedLastIndex: LodashSortedLastIndex;
4846 sortedLastIndexBy: LodashSortedLastIndexBy;
4847 sortedLastIndexOf: LodashSortedLastIndexOf;
4848 sortedUniq: LodashSortedUniq;
4849 sortedUniqBy: LodashSortedUniqBy;
4850 split: LodashSplit;
4851 spread: LodashSpread;
4852 spreadFrom: LodashSpreadFrom;
4853 startCase: LodashStartCase;
4854 startsWith: LodashStartsWith;
4855 stubArray: LodashStubArray;
4856 stubFalse: LodashStubFalse;
4857 stubObject: LodashStubObject;
4858 stubString: LodashStubString;
4859 stubTrue: LodashStubTrue;
4860 subtract: LodashSubtract;
4861 sum: LodashSum;
4862 sumBy: LodashSumBy;
4863 symmetricDifference: LodashXor;
4864 symmetricDifferenceBy: LodashXorBy;
4865 symmetricDifferenceWith: LodashXorWith;
4866 T: LodashStubTrue;
4867 tail: LodashTail;
4868 take: LodashTake;
4869 takeLast: LodashTakeRight;
4870 takeLastWhile: LodashTakeRightWhile;
4871 takeRight: LodashTakeRight;
4872 takeRightWhile: LodashTakeRightWhile;
4873 takeWhile: LodashTakeWhile;
4874 tap: LodashTap;
4875 template: LodashTemplate;
4876 throttle: LodashThrottle;
4877 thru: LodashThru;
4878 times: LodashTimes;
4879 toArray: LodashToArray;
4880 toFinite: LodashToFinite;
4881 toInteger: LodashToInteger;
4882 toLength: LodashToLength;
4883 toLower: LodashToLower;
4884 toNumber: LodashToNumber;
4885 toPairs: LodashToPairs;
4886 toPairsIn: LodashToPairsIn;
4887 toPath: LodashToPath;
4888 toPlainObject: LodashToPlainObject;
4889 toSafeInteger: LodashToSafeInteger;
4890 toString: LodashToString;
4891 toUpper: LodashToUpper;
4892 transform: LodashTransform;
4893 trim: LodashTrim;
4894 trimChars: LodashTrimChars;
4895 trimCharsEnd: LodashTrimCharsEnd;
4896 trimCharsStart: LodashTrimCharsStart;
4897 trimEnd: LodashTrimEnd;
4898 trimStart: LodashTrimStart;
4899 truncate: LodashTruncate;
4900 unapply: LodashUnapply;
4901 unary: LodashUnary;
4902 unescape: LodashUnescape;
4903 union: LodashUnion;
4904 unionBy: LodashUnionBy;
4905 unionWith: LodashUnionWith;
4906 uniq: LodashUniq;
4907 uniqBy: LodashUniqBy;
4908 uniqueId: LodashUniqueId;
4909 uniqWith: LodashUniqWith;
4910 unnest: LodashFlatten;
4911 unset: LodashUnset;
4912 unzip: LodashUnzip;
4913 unzipWith: LodashUnzipWith;
4914 update: LodashUpdate;
4915 updateWith: LodashUpdateWith;
4916 upperCase: LodashUpperCase;
4917 upperFirst: LodashUpperFirst;
4918 useWith: LodashOverArgs;
4919 values: LodashValues;
4920 valuesIn: LodashValuesIn;
4921 where: LodashConformsTo;
4922 whereEq: LodashIsMatch;
4923 without: LodashWithout;
4924 words: LodashWords;
4925 wrap: LodashWrap;
4926 xor: LodashXor;
4927 xorBy: LodashXorBy;
4928 xorWith: LodashXorWith;
4929 zip: LodashZip;
4930 zipAll: LodashZipAll;
4931 zipObj: LodashZipObject;
4932 zipObject: LodashZipObject;
4933 zipObjectDeep: LodashZipObjectDeep;
4934 zipWith: LodashZipWith;
4935 __: lodash.__;
4936 placeholder: lodash.__;
4937 }
4938}