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