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 type LodashIsEmpty = (value: any) => boolean;
1926 interface LodashIsEqualWith {
1927 (customizer: lodash.IsEqualCustomizer): LodashIsEqualWith1x1;
1928 (customizer: lodash.__, value: any): LodashIsEqualWith1x2;
1929 (customizer: lodash.IsEqualCustomizer, value: any): LodashIsEqualWith1x3;
1930 (customizer: lodash.__, value: lodash.__, other: any): LodashIsEqualWith1x4;
1931 (customizer: lodash.IsEqualCustomizer, value: lodash.__, other: any): LodashIsEqualWith1x5;
1932 (customizer: lodash.__, value: any, other: any): LodashIsEqualWith1x6;
1933 (customizer: lodash.IsEqualCustomizer, value: any, other: any): boolean;
1934 }
1935 interface LodashIsEqualWith1x1 {
1936 (value: any): LodashIsEqualWith1x3;
1937 (value: lodash.__, other: any): LodashIsEqualWith1x5;
1938 (value: any, other: any): boolean;
1939 }
1940 interface LodashIsEqualWith1x2 {
1941 (customizer: lodash.IsEqualCustomizer): LodashIsEqualWith1x3;
1942 (customizer: lodash.__, other: any): LodashIsEqualWith1x6;
1943 (customizer: lodash.IsEqualCustomizer, other: any): boolean;
1944 }
1945 type LodashIsEqualWith1x3 = (other: any) => boolean;
1946 interface LodashIsEqualWith1x4 {
1947 (customizer: lodash.IsEqualCustomizer): LodashIsEqualWith1x5;
1948 (customizer: lodash.__, value: any): LodashIsEqualWith1x6;
1949 (customizer: lodash.IsEqualCustomizer, value: any): boolean;
1950 }
1951 type LodashIsEqualWith1x5 = (value: any) => boolean;
1952 type LodashIsEqualWith1x6 = (customizer: lodash.IsEqualCustomizer) => boolean;
1953 type LodashIsError = (value: any) => value is Error;
1954 type LodashIsFinite = (value: any) => boolean;
1955 type LodashIsFunction = (value: any) => value is (...args: any[]) => any;
1956 type LodashIsInteger = (value: any) => boolean;
1957 type LodashIsLength = (value: any) => boolean;
1958 type LodashIsMap = (value: any) => value is Map<any, any>;
1959 interface LodashIsMatch {
1960 (source: object): LodashIsMatch1x1;
1961 (source: lodash.__, object: object): LodashIsMatch1x2;
1962 (source: object, object: object): boolean;
1963 }
1964 type LodashIsMatch1x1 = (object: object) => boolean;
1965 type LodashIsMatch1x2 = (source: object) => boolean;
1966 interface LodashIsMatchWith {
1967 (customizer: lodash.isMatchWithCustomizer): LodashIsMatchWith1x1;
1968 (customizer: lodash.__, source: object): LodashIsMatchWith1x2;
1969 (customizer: lodash.isMatchWithCustomizer, source: object): LodashIsMatchWith1x3;
1970 (customizer: lodash.__, source: lodash.__, object: object): LodashIsMatchWith1x4;
1971 (customizer: lodash.isMatchWithCustomizer, source: lodash.__, object: object): LodashIsMatchWith1x5;
1972 (customizer: lodash.__, source: object, object: object): LodashIsMatchWith1x6;
1973 (customizer: lodash.isMatchWithCustomizer, source: object, object: object): boolean;
1974 }
1975 interface LodashIsMatchWith1x1 {
1976 (source: object): LodashIsMatchWith1x3;
1977 (source: lodash.__, object: object): LodashIsMatchWith1x5;
1978 (source: object, object: object): boolean;
1979 }
1980 interface LodashIsMatchWith1x2 {
1981 (customizer: lodash.isMatchWithCustomizer): LodashIsMatchWith1x3;
1982 (customizer: lodash.__, object: object): LodashIsMatchWith1x6;
1983 (customizer: lodash.isMatchWithCustomizer, object: object): boolean;
1984 }
1985 type LodashIsMatchWith1x3 = (object: object) => boolean;
1986 interface LodashIsMatchWith1x4 {
1987 (customizer: lodash.isMatchWithCustomizer): LodashIsMatchWith1x5;
1988 (customizer: lodash.__, source: object): LodashIsMatchWith1x6;
1989 (customizer: lodash.isMatchWithCustomizer, source: object): boolean;
1990 }
1991 type LodashIsMatchWith1x5 = (source: object) => boolean;
1992 type LodashIsMatchWith1x6 = (customizer: lodash.isMatchWithCustomizer) => boolean;
1993 type LodashIsNaN = (value: any) => boolean;
1994 type LodashIsNative = (value: any) => value is (...args: any[]) => any;
1995 type LodashIsNil = (value: any) => value is null | undefined;
1996 type LodashIsNull = (value: any) => value is null;
1997 type LodashIsNumber = (value: any) => value is number;
1998 type LodashIsObject = (value: any) => value is object;
1999 type LodashIsObjectLike = (value: any) => boolean;
2000 type LodashIsPlainObject = (value: any) => boolean;
2001 type LodashIsRegExp = (value: any) => value is RegExp;
2002 type LodashIsSafeInteger = (value: any) => boolean;
2003 type LodashIsSet = (value: any) => value is Set<any>;
2004 type LodashIsString = (value: any) => value is string;
2005 type LodashIsSymbol = (value: any) => value is symbol;
2006 type LodashIsTypedArray = (value: any) => boolean;
2007 type LodashIsUndefined = (value: any) => value is undefined;
2008 type LodashIsWeakMap = (value: any) => value is WeakMap<object, any>;
2009 type LodashIsWeakSet = (value: any) => value is WeakSet<object>;
2010 interface LodashIteratee {
2011 <TFunction extends (...args: any[]) => any>(func: TFunction): TFunction;
2012 (func: string | object): (...args: any[]) => any;
2013 }
2014 interface LodashJoin {
2015 (separator: string): LodashJoin1x1;
2016 (separator: lodash.__, array: lodash.List<any> | null | undefined): LodashJoin1x2;
2017 (separator: string, array: lodash.List<any> | null | undefined): string;
2018 }
2019 type LodashJoin1x1 = (array: lodash.List<any> | null | undefined) => string;
2020 type LodashJoin1x2 = (separator: string) => string;
2021 type LodashOver = <TResult>(iteratees: lodash.Many<(...args: any[]) => TResult>) => (...args: any[]) => TResult[];
2022 type LodashKebabCase = (string: string) => string;
2023 type LodashKeys = (object: any) => string[];
2024 type LodashKeysIn = (object: any) => string[];
2025 type LodashLast = <T>(array: lodash.List<T> | null | undefined) => T | undefined;
2026 interface LodashLastIndexOf {
2027 <T>(value: T): LodashLastIndexOf1x1<T>;
2028 <T>(value: lodash.__, array: lodash.List<T> | null | undefined): LodashLastIndexOf1x2<T>;
2029 <T>(value: T, array: lodash.List<T> | null | undefined): number;
2030 }
2031 type LodashLastIndexOf1x1<T> = (array: lodash.List<T> | null | undefined) => number;
2032 type LodashLastIndexOf1x2<T> = (value: T) => number;
2033 interface LodashLastIndexOfFrom {
2034 <T>(value: T): LodashLastIndexOfFrom1x1<T>;
2035 (value: lodash.__, fromIndex: true|number): LodashLastIndexOfFrom1x2;
2036 <T>(value: T, fromIndex: true|number): LodashLastIndexOfFrom1x3<T>;
2037 <T>(value: lodash.__, fromIndex: lodash.__, array: lodash.List<T> | null | undefined): LodashLastIndexOfFrom1x4<T>;
2038 <T>(value: T, fromIndex: lodash.__, array: lodash.List<T> | null | undefined): LodashLastIndexOfFrom1x5;
2039 <T>(value: lodash.__, fromIndex: true|number, array: lodash.List<T> | null | undefined): LodashLastIndexOfFrom1x6<T>;
2040 <T>(value: T, fromIndex: true|number, array: lodash.List<T> | null | undefined): number;
2041 }
2042 interface LodashLastIndexOfFrom1x1<T> {
2043 (fromIndex: true|number): LodashLastIndexOfFrom1x3<T>;
2044 (fromIndex: lodash.__, array: lodash.List<T> | null | undefined): LodashLastIndexOfFrom1x5;
2045 (fromIndex: true|number, array: lodash.List<T> | null | undefined): number;
2046 }
2047 interface LodashLastIndexOfFrom1x2 {
2048 <T>(value: T): LodashLastIndexOfFrom1x3<T>;
2049 <T>(value: lodash.__, array: lodash.List<T> | null | undefined): LodashLastIndexOfFrom1x6<T>;
2050 <T>(value: T, array: lodash.List<T> | null | undefined): number;
2051 }
2052 type LodashLastIndexOfFrom1x3<T> = (array: lodash.List<T> | null | undefined) => number;
2053 interface LodashLastIndexOfFrom1x4<T> {
2054 (value: T): LodashLastIndexOfFrom1x5;
2055 (value: lodash.__, fromIndex: true|number): LodashLastIndexOfFrom1x6<T>;
2056 (value: T, fromIndex: true|number): number;
2057 }
2058 type LodashLastIndexOfFrom1x5 = (fromIndex: true|number) => number;
2059 type LodashLastIndexOfFrom1x6<T> = (value: T) => number;
2060 type LodashLowerCase = (string: string) => string;
2061 type LodashLowerFirst = (string: string) => string;
2062 interface LodashLt {
2063 (value: any): LodashLt1x1;
2064 (value: lodash.__, other: any): LodashLt1x2;
2065 (value: any, other: any): boolean;
2066 }
2067 type LodashLt1x1 = (other: any) => boolean;
2068 type LodashLt1x2 = (value: any) => boolean;
2069 interface LodashLte {
2070 (value: any): LodashLte1x1;
2071 (value: lodash.__, other: any): LodashLte1x2;
2072 (value: any, other: any): boolean;
2073 }
2074 type LodashLte1x1 = (other: any) => boolean;
2075 type LodashLte1x2 = (value: any) => boolean;
2076 interface LodashMap {
2077 <T, TResult>(iteratee: (value: T) => TResult): LodashMap1x1<T, TResult>;
2078 <T>(iteratee: lodash.__, collection: T[] | null | undefined): LodashMap1x2<T>;
2079 <T, TResult>(iteratee: (value: T) => TResult, collection: T[] | lodash.List<T> | null | undefined): TResult[];
2080 <T>(iteratee: lodash.__, collection: lodash.List<T> | null | undefined): LodashMap2x2<T>;
2081 <T extends object, TResult>(iteratee: (value: T[keyof T]) => TResult): LodashMap3x1<T, TResult>;
2082 <T extends object>(iteratee: lodash.__, collection: T | null | undefined): LodashMap3x2<T>;
2083 <T extends object, TResult>(iteratee: (value: T[keyof T]) => TResult, collection: T | null | undefined): TResult[];
2084 <T, K extends keyof T>(iteratee: K): LodashMap4x1<T, K>;
2085 <T>(iteratee: lodash.__, collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): LodashMap4x2<T>;
2086 <T, K extends keyof T>(iteratee: K, collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): Array<T[K]>;
2087 (iteratee: string): LodashMap5x1;
2088 <T>(iteratee: string, collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): any[];
2089 (iteratee: object): LodashMap6x1;
2090 <T>(iteratee: object, collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): boolean[];
2091 }
2092 type LodashMap1x1<T, TResult> = (collection: T[] | lodash.List<T> | null | undefined) => TResult[];
2093 type LodashMap1x2<T> = <TResult>(iteratee: (value: T) => TResult) => TResult[];
2094 type LodashMap2x2<T> = <TResult>(iteratee: (value: T) => TResult) => TResult[];
2095 type LodashMap3x1<T, TResult> = (collection: T | null | undefined) => TResult[];
2096 type LodashMap3x2<T> = <TResult>(iteratee: (value: T[keyof T]) => TResult) => TResult[];
2097 type LodashMap4x1<T, K extends keyof T> = (collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined) => Array<T[K]>;
2098 interface LodashMap4x2<T> {
2099 <K extends keyof T>(iteratee: K): Array<T[K]>;
2100 (iteratee: string): any[];
2101 (iteratee: object): boolean[];
2102 }
2103 type LodashMap5x1 = <T>(collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined) => any[];
2104 type LodashMap6x1 = <T>(collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined) => boolean[];
2105 interface LodashMapKeys {
2106 (iteratee: lodash.ValueIteratee<number>): LodashMapKeys1x1;
2107 <T>(iteratee: lodash.__, object: lodash.List<T> | null | undefined): LodashMapKeys1x2<T>;
2108 <T>(iteratee: lodash.ValueIteratee<number>, object: lodash.List<T> | null | undefined): lodash.Dictionary<T>;
2109 (iteratee: lodash.ValueIteratee<string>): LodashMapKeys2x1;
2110 <T extends object>(iteratee: lodash.__, object: T | null | undefined): LodashMapKeys2x2<T>;
2111 <T extends object>(iteratee: lodash.ValueIteratee<string>, object: T | null | undefined): lodash.Dictionary<T[keyof T]>;
2112 }
2113 type LodashMapKeys1x1 = <T>(object: lodash.List<T> | null | undefined) => lodash.Dictionary<T>;
2114 type LodashMapKeys1x2<T> = (iteratee: lodash.ValueIteratee<number>) => lodash.Dictionary<T>;
2115 type LodashMapKeys2x1 = <T extends object>(object: T | null | undefined) => lodash.Dictionary<T[keyof T]>;
2116 type LodashMapKeys2x2<T> = (iteratee: lodash.ValueIteratee<string>) => lodash.Dictionary<T[keyof T]>;
2117 interface LodashMapValues {
2118 <T, TResult>(callback: (value: T) => TResult): LodashMapValues1x1<T, TResult>;
2119 <T>(callbackOrIterateeOrIterateeOrIteratee: lodash.__, obj: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): LodashMapValues1x2<T>;
2120 <T, TResult>(callback: (value: T) => TResult, obj: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): lodash.Dictionary<TResult>;
2121 <T extends object, TResult>(callback: (value: T[keyof T]) => TResult): LodashMapValues2x1<T, TResult>;
2122 <T extends object>(callbackOrIterateeOrIteratee: lodash.__, obj: T | null | undefined): LodashMapValues2x2<T>;
2123 <T extends object, TResult>(callback: (value: T[keyof T]) => TResult, obj: T | null | undefined): { [P in keyof T]: TResult };
2124 (iteratee: object): LodashMapValues3x1;
2125 <T>(iteratee: object, obj: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): lodash.Dictionary<boolean>;
2126 <T extends object>(iteratee: object, obj: T | null | undefined): { [P in keyof T]: boolean };
2127 <T, TKey extends keyof T>(iteratee: TKey): LodashMapValues5x1<T, TKey>;
2128 <T, TKey extends keyof T>(iteratee: TKey, obj: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): lodash.Dictionary<T[TKey]>;
2129 (iteratee: string): LodashMapValues6x1;
2130 <T>(iteratee: string, obj: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): lodash.Dictionary<any>;
2131 <T extends object>(iteratee: string, obj: T | null | undefined): { [P in keyof T]: any };
2132 }
2133 type LodashMapValues1x1<T, TResult> = (obj: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined) => lodash.Dictionary<TResult>;
2134 interface LodashMapValues1x2<T> {
2135 <TResult>(callback: (value: T) => TResult): lodash.Dictionary<TResult>;
2136 (iteratee: object): lodash.Dictionary<boolean>;
2137 <TKey extends keyof T>(iteratee: TKey): lodash.Dictionary<T[TKey]>;
2138 (iteratee: string): lodash.Dictionary<any>;
2139 }
2140 type LodashMapValues2x1<T, TResult> = (obj: T | null | undefined) => { [P in keyof T]: TResult };
2141 interface LodashMapValues2x2<T> {
2142 <TResult>(callback: (value: T[keyof T]) => TResult): { [P in keyof T]: TResult };
2143 (iteratee: object): { [P in keyof T]: boolean };
2144 (iteratee: string): { [P in keyof T]: any };
2145 }
2146 interface LodashMapValues3x1 {
2147 <T>(obj: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): lodash.Dictionary<boolean>;
2148 <T extends object>(obj: T | null | undefined): { [P in keyof T]: boolean };
2149 }
2150 type LodashMapValues5x1<T, TKey extends keyof T> = (obj: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined) => lodash.Dictionary<T[TKey]>;
2151 interface LodashMapValues6x1 {
2152 <T>(obj: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): lodash.Dictionary<any>;
2153 <T extends object>(obj: T | null | undefined): { [P in keyof T]: any };
2154 }
2155 interface LodashMatchesProperty {
2156 (path: lodash.PropertyPath): LodashMatchesProperty1x1;
2157 <T>(path: lodash.__, srcValue: T): LodashMatchesProperty1x2;
2158 <T>(path: lodash.PropertyPath, srcValue: T): (value: any) => boolean;
2159 }
2160 type LodashMatchesProperty1x1 = <T>(srcValue: T) => (value: any) => boolean;
2161 type LodashMatchesProperty1x2 = (path: lodash.PropertyPath) => (value: any) => boolean;
2162 type LodashMax = <T>(collection: lodash.List<T> | null | undefined) => T | undefined;
2163 interface LodashMaxBy {
2164 <T>(iteratee: lodash.ValueIteratee<T>): LodashMaxBy1x1<T>;
2165 <T>(iteratee: lodash.__, collection: lodash.List<T> | null | undefined): LodashMaxBy1x2<T>;
2166 <T>(iteratee: lodash.ValueIteratee<T>, collection: lodash.List<T> | null | undefined): T | undefined;
2167 }
2168 type LodashMaxBy1x1<T> = (collection: lodash.List<T> | null | undefined) => T | undefined;
2169 type LodashMaxBy1x2<T> = (iteratee: lodash.ValueIteratee<T>) => T | undefined;
2170 type LodashMean = (collection: lodash.List<any> | null | undefined) => number;
2171 interface LodashMeanBy {
2172 <T>(iteratee: lodash.ValueIteratee<T>): LodashMeanBy1x1<T>;
2173 <T>(iteratee: lodash.__, collection: lodash.List<T> | null | undefined): LodashMeanBy1x2<T>;
2174 <T>(iteratee: lodash.ValueIteratee<T>, collection: lodash.List<T> | null | undefined): number;
2175 }
2176 type LodashMeanBy1x1<T> = (collection: lodash.List<T> | null | undefined) => number;
2177 type LodashMeanBy1x2<T> = (iteratee: lodash.ValueIteratee<T>) => number;
2178 type LodashMemoize = <T extends (...args: any) => any>(func: T) => T & lodash.MemoizedFunction;
2179 interface LodashMerge {
2180 <TObject>(object: TObject): LodashMerge1x1<TObject>;
2181 <TSource>(object: lodash.__, source: TSource): LodashMerge1x2<TSource>;
2182 <TObject, TSource>(object: TObject, source: TSource): TObject & TSource;
2183 }
2184 type LodashMerge1x1<TObject> = <TSource>(source: TSource) => TObject & TSource;
2185 type LodashMerge1x2<TSource> = <TObject>(object: TObject) => TObject & TSource;
2186 interface LodashMergeAll {
2187 <TObject, TSource>(object: [TObject, TSource]): TObject & TSource;
2188 <TObject, TSource1, TSource2>(object: [TObject, TSource1, TSource2]): TObject & TSource1 & TSource2;
2189 <TObject, TSource1, TSource2, TSource3>(object: [TObject, TSource1, TSource2, TSource3]): TObject & TSource1 & TSource2 & TSource3;
2190 <TObject, TSource1, TSource2, TSource3, TSource4>(object: [TObject, TSource1, TSource2, TSource3, TSource4]): TObject & TSource1 & TSource2 & TSource3 & TSource4;
2191 (object: ReadonlyArray<any>): any;
2192 }
2193 interface LodashMergeAllWith {
2194 (customizer: lodash.MergeWithCustomizer): LodashMergeAllWith1x1;
2195 (customizer: lodash.__, args: ReadonlyArray<any>): LodashMergeAllWith1x2;
2196 (customizer: lodash.MergeWithCustomizer, args: ReadonlyArray<any>): any;
2197 }
2198 type LodashMergeAllWith1x1 = (args: ReadonlyArray<any>) => any;
2199 type LodashMergeAllWith1x2 = (customizer: lodash.MergeWithCustomizer) => any;
2200 interface LodashMergeWith {
2201 (customizer: lodash.MergeWithCustomizer): LodashMergeWith1x1;
2202 <TObject>(customizer: lodash.__, object: TObject): LodashMergeWith1x2<TObject>;
2203 <TObject>(customizer: lodash.MergeWithCustomizer, object: TObject): LodashMergeWith1x3<TObject>;
2204 <TSource>(customizer: lodash.__, object: lodash.__, source: TSource): LodashMergeWith1x4<TSource>;
2205 <TSource>(customizer: lodash.MergeWithCustomizer, object: lodash.__, source: TSource): LodashMergeWith1x5<TSource>;
2206 <TObject, TSource>(customizer: lodash.__, object: TObject, source: TSource): LodashMergeWith1x6<TObject, TSource>;
2207 <TObject, TSource>(customizer: lodash.MergeWithCustomizer, object: TObject, source: TSource): TObject & TSource;
2208 }
2209 interface LodashMergeWith1x1 {
2210 <TObject>(object: TObject): LodashMergeWith1x3<TObject>;
2211 <TSource>(object: lodash.__, source: TSource): LodashMergeWith1x5<TSource>;
2212 <TObject, TSource>(object: TObject, source: TSource): TObject & TSource;
2213 }
2214 interface LodashMergeWith1x2<TObject> {
2215 (customizer: lodash.MergeWithCustomizer): LodashMergeWith1x3<TObject>;
2216 <TSource>(customizer: lodash.__, source: TSource): LodashMergeWith1x6<TObject, TSource>;
2217 <TSource>(customizer: lodash.MergeWithCustomizer, source: TSource): TObject & TSource;
2218 }
2219 type LodashMergeWith1x3<TObject> = <TSource>(source: TSource) => TObject & TSource;
2220 interface LodashMergeWith1x4<TSource> {
2221 (customizer: lodash.MergeWithCustomizer): LodashMergeWith1x5<TSource>;
2222 <TObject>(customizer: lodash.__, object: TObject): LodashMergeWith1x6<TObject, TSource>;
2223 <TObject>(customizer: lodash.MergeWithCustomizer, object: TObject): TObject & TSource;
2224 }
2225 type LodashMergeWith1x5<TSource> = <TObject>(object: TObject) => TObject & TSource;
2226 type LodashMergeWith1x6<TObject, TSource> = (customizer: lodash.MergeWithCustomizer) => TObject & TSource;
2227 type LodashMethod = (path: lodash.PropertyPath) => (object: any) => any;
2228 type LodashMethodOf = (object: object) => (path: lodash.PropertyPath) => any;
2229 type LodashMin = <T>(collection: lodash.List<T> | null | undefined) => T | undefined;
2230 interface LodashMinBy {
2231 <T>(iteratee: lodash.ValueIteratee<T>): LodashMinBy1x1<T>;
2232 <T>(iteratee: lodash.__, collection: lodash.List<T> | null | undefined): LodashMinBy1x2<T>;
2233 <T>(iteratee: lodash.ValueIteratee<T>, collection: lodash.List<T> | null | undefined): T | undefined;
2234 }
2235 type LodashMinBy1x1<T> = (collection: lodash.List<T> | null | undefined) => T | undefined;
2236 type LodashMinBy1x2<T> = (iteratee: lodash.ValueIteratee<T>) => T | undefined;
2237 interface LodashMultiply {
2238 (multiplier: number): LodashMultiply1x1;
2239 (multiplier: lodash.__, multiplicand: number): LodashMultiply1x2;
2240 (multiplier: number, multiplicand: number): number;
2241 }
2242 type LodashMultiply1x1 = (multiplicand: number) => number;
2243 type LodashMultiply1x2 = (multiplier: number) => number;
2244 type LodashNoConflict = () => typeof _;
2245 type LodashNoop = (...args: any[]) => void;
2246 type LodashNow = () => number;
2247 interface LodashNth {
2248 (n: number): LodashNth1x1;
2249 <T>(n: lodash.__, array: lodash.List<T> | null | undefined): LodashNth1x2<T>;
2250 <T>(n: number, array: lodash.List<T> | null | undefined): T | undefined;
2251 }
2252 type LodashNth1x1 = <T>(array: lodash.List<T> | null | undefined) => T | undefined;
2253 type LodashNth1x2<T> = (n: number) => T | undefined;
2254 type LodashNthArg = (n: number) => (...args: any[]) => any;
2255 interface LodashOmit {
2256 <T extends object, K extends keyof T>(paths: lodash.Many<K>): LodashOmit1x1<T, K>;
2257 <T extends object>(paths: lodash.__, object: T | null | undefined): LodashOmit1x2<T>;
2258 <T extends object, K extends keyof T>(paths: lodash.Many<K>, object: T | null | undefined): lodash.Omit<T, K>;
2259 (paths: lodash.Many<lodash.PropertyName>): LodashOmit2x1;
2260 <T extends object>(paths: lodash.Many<lodash.PropertyName>, object: T | null | undefined): lodash.PartialObject<T>;
2261 }
2262 type LodashOmit1x1<T, K extends keyof T> = (object: T | null | undefined) => lodash.Omit<T, K>;
2263 interface LodashOmit1x2<T> {
2264 <K extends keyof T>(paths: lodash.Many<K>): lodash.Omit<T, K>;
2265 (paths: lodash.Many<lodash.PropertyName>): lodash.PartialObject<T>;
2266 }
2267 type LodashOmit2x1 = <T extends object>(object: T | null | undefined) => lodash.PartialObject<T>;
2268 interface LodashOmitBy {
2269 <T>(predicate: lodash.ValueKeyIteratee<T>): LodashOmitBy1x1<T>;
2270 <T>(predicate: lodash.__, object: lodash.Dictionary<T> | null | undefined): LodashOmitBy1x2<T>;
2271 <T>(predicate: lodash.ValueKeyIteratee<T>, object: lodash.Dictionary<T> | null | undefined): lodash.Dictionary<T>;
2272 <T>(predicate: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashOmitBy2x2<T>;
2273 <T>(predicate: lodash.ValueKeyIteratee<T>, object: lodash.NumericDictionary<T> | null | undefined): lodash.NumericDictionary<T>;
2274 <T extends object>(predicate: lodash.__, object: T | null | undefined): LodashOmitBy3x2<T>;
2275 <T extends object>(predicate: lodash.ValueKeyIteratee<T[keyof T]>, object: T | null | undefined): lodash.PartialObject<T>;
2276 }
2277 interface LodashOmitBy1x1<T> {
2278 (object: lodash.Dictionary<T> | null | undefined): lodash.Dictionary<T>;
2279 (object: lodash.NumericDictionary<T> | null | undefined): lodash.NumericDictionary<T>;
2280 <T1 extends object>(object: T1 | null | undefined): lodash.PartialObject<T1>;
2281 }
2282 type LodashOmitBy1x2<T> = (predicate: lodash.ValueKeyIteratee<T>) => lodash.Dictionary<T>;
2283 type LodashOmitBy2x2<T> = (predicate: lodash.ValueKeyIteratee<T>) => lodash.NumericDictionary<T>;
2284 type LodashOmitBy3x2<T> = (predicate: lodash.ValueKeyIteratee<T[keyof T]>) => lodash.PartialObject<T>;
2285 type LodashOnce = <T extends (...args: any) => any>(func: T) => T;
2286 interface LodashOrderBy {
2287 <T>(iteratees: lodash.Many<(value: T) => lodash.NotVoid>): LodashOrderBy1x1<T>;
2288 (iteratees: lodash.__, orders: lodash.Many<boolean|"asc"|"desc">): LodashOrderBy1x2;
2289 <T>(iteratees: lodash.Many<(value: T) => lodash.NotVoid>, orders: lodash.Many<boolean|"asc"|"desc">): LodashOrderBy1x3<T>;
2290 <T>(iteratees: lodash.__, orders: lodash.__, collection: lodash.List<T> | null | undefined): LodashOrderBy1x4<T>;
2291 <T>(iteratees: lodash.Many<(value: T) => lodash.NotVoid>, orders: lodash.__, collection: lodash.List<T> | null | undefined): LodashOrderBy1x5<T>;
2292 <T>(iteratees: lodash.__, orders: lodash.Many<boolean|"asc"|"desc">, collection: lodash.List<T> | null | undefined): LodashOrderBy1x6<T>;
2293 <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[];
2294 <T>(iteratees: lodash.Many<lodash.ValueIteratee<T>>): LodashOrderBy2x1<T>;
2295 <T>(iteratees: lodash.Many<lodash.ValueIteratee<T>>, orders: lodash.Many<boolean|"asc"|"desc">): LodashOrderBy2x3<T>;
2296 <T>(iteratees: lodash.Many<lodash.ValueIteratee<T>>, orders: lodash.__, collection: lodash.List<T> | null | undefined): LodashOrderBy2x5<T>;
2297 <T extends object>(iteratees: lodash.__, orders: lodash.__, collection: T | null | undefined): LodashOrderBy3x4<T>;
2298 <T extends object>(iteratees: lodash.Many<(value: T[keyof T]) => lodash.NotVoid>, orders: lodash.__, collection: T | null | undefined): LodashOrderBy3x5<T>;
2299 <T extends object>(iteratees: lodash.__, orders: lodash.Many<boolean|"asc"|"desc">, collection: T | null | undefined): LodashOrderBy3x6<T>;
2300 <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]>;
2301 <T extends object>(iteratees: lodash.Many<lodash.ValueIteratee<T[keyof T]>>, orders: lodash.__, collection: T | null | undefined): LodashOrderBy4x5<T>;
2302 }
2303 interface LodashOrderBy1x1<T> {
2304 (orders: lodash.Many<boolean | "asc" | "desc">): LodashOrderBy1x3<T>;
2305 (orders: lodash.__, collection: lodash.List<T> | null | undefined): LodashOrderBy1x5<T>;
2306 (orders: lodash.Many<boolean | "asc" | "desc">, collection: lodash.List<T> | object | null | undefined): T[];
2307 <T1 extends object>(orders: lodash.__, collection: T1 | null | undefined): LodashOrderBy3x5<T>;
2308 }
2309 interface LodashOrderBy1x2 {
2310 <T>(iteratees: lodash.Many<(value: T) => lodash.NotVoid>): LodashOrderBy1x3<T>;
2311 <T>(iteratees: lodash.__, collection: lodash.List<T> | null | undefined): LodashOrderBy1x6<T>;
2312 <T>(iteratees: lodash.Many<(value: T) => lodash.NotVoid> | lodash.Many<lodash.ValueIteratee<T>>, collection: lodash.List<T> | null | undefined): T[];
2313 <T>(iteratees: lodash.Many<lodash.ValueIteratee<T>>): LodashOrderBy2x3<T>;
2314 <T extends object>(iteratees: lodash.__, collection: T | null | undefined): LodashOrderBy3x6<T>;
2315 <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]>;
2316 }
2317 interface LodashOrderBy1x3<T> {
2318 (collection: lodash.List<T> | null | undefined): T[];
2319 (collection: object | null | undefined): object[];
2320 }
2321 interface LodashOrderBy1x4<T> {
2322 (iteratees: lodash.Many<(value: T) => lodash.NotVoid>): LodashOrderBy1x5<T>;
2323 (iteratees: lodash.__, orders: lodash.Many<boolean | "asc" | "desc">): LodashOrderBy1x6<T>;
2324 (iteratees: lodash.Many<(value: T) => lodash.NotVoid> | lodash.Many<lodash.ValueIteratee<T>>, orders: lodash.Many<boolean | "asc" | "desc">): T[];
2325 (iteratees: lodash.Many<lodash.ValueIteratee<T>>): LodashOrderBy2x5<T>;
2326 }
2327 type LodashOrderBy1x5<T> = (orders: lodash.Many<boolean|"asc"|"desc">) => T[];
2328 type LodashOrderBy1x6<T> = (iteratees: lodash.Many<(value: T) => lodash.NotVoid> | lodash.Many<lodash.ValueIteratee<T>>) => T[];
2329 interface LodashOrderBy2x1<T> {
2330 (orders: lodash.Many<boolean | "asc" | "desc">): LodashOrderBy2x3<T>;
2331 (orders: lodash.__, collection: lodash.List<T> | null | undefined): LodashOrderBy2x5<T>;
2332 (orders: lodash.Many<boolean | "asc" | "desc">, collection: lodash.List<T> | object | null | undefined): T[];
2333 <T1 extends object>(orders: lodash.__, collection: T1 | null | undefined): LodashOrderBy4x5<T>;
2334 }
2335 interface LodashOrderBy2x3<T> {
2336 (collection: lodash.List<T> | null | undefined): T[];
2337 (collection: object | null | undefined): object[];
2338 }
2339 type LodashOrderBy2x5<T> = (orders: lodash.Many<boolean|"asc"|"desc">) => T[];
2340 interface LodashOrderBy3x4<T> {
2341 (iteratees: lodash.Many<(value: T[keyof T]) => lodash.NotVoid>): LodashOrderBy3x5<T>;
2342 (iteratees: lodash.__, orders: lodash.Many<boolean | "asc" | "desc">): LodashOrderBy3x6<T>;
2343 (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]>;
2344 (iteratees: lodash.Many<lodash.ValueIteratee<T[keyof T]>>): LodashOrderBy4x5<T>;
2345 }
2346 type LodashOrderBy3x5<T> = (orders: lodash.Many<boolean|"asc"|"desc">) => Array<T[keyof T]>;
2347 type LodashOrderBy3x6<T> = (iteratees: lodash.Many<(value: T[keyof T]) => lodash.NotVoid> | lodash.Many<lodash.ValueIteratee<T[keyof T]>>) => Array<T[keyof T]>;
2348 type LodashOrderBy4x5<T> = (orders: lodash.Many<boolean|"asc"|"desc">) => Array<T[keyof T]>;
2349 interface LodashOverArgs {
2350 (func: (...args: any[]) => any): LodashOverArgs1x1;
2351 (func: lodash.__, transforms: lodash.Many<(...args: any[]) => any>): LodashOverArgs1x2;
2352 (func: (...args: any[]) => any, transforms: lodash.Many<(...args: any[]) => any>): (...args: any[]) => any;
2353 }
2354 type LodashOverArgs1x1 = (transforms: lodash.Many<(...args: any[]) => any>) => (...args: any[]) => any;
2355 type LodashOverArgs1x2 = (func: (...args: any[]) => any) => (...args: any[]) => any;
2356 interface LodashPad {
2357 (length: number): LodashPad1x1;
2358 (length: lodash.__, string: string): LodashPad1x2;
2359 (length: number, string: string): string;
2360 }
2361 type LodashPad1x1 = (string: string) => string;
2362 type LodashPad1x2 = (length: number) => string;
2363 interface LodashPadChars {
2364 (chars: string): LodashPadChars1x1;
2365 (chars: lodash.__, length: number): LodashPadChars1x2;
2366 (chars: string, length: number): LodashPadChars1x3;
2367 (chars: lodash.__, length: lodash.__, string: string): LodashPadChars1x4;
2368 (chars: string, length: lodash.__, string: string): LodashPadChars1x5;
2369 (chars: lodash.__, length: number, string: string): LodashPadChars1x6;
2370 (chars: string, length: number, string: string): string;
2371 }
2372 interface LodashPadChars1x1 {
2373 (length: number): LodashPadChars1x3;
2374 (length: lodash.__, string: string): LodashPadChars1x5;
2375 (length: number, string: string): string;
2376 }
2377 interface LodashPadChars1x2 {
2378 (chars: string): LodashPadChars1x3;
2379 (chars: lodash.__, string: string): LodashPadChars1x6;
2380 (chars: string, string: string): string;
2381 }
2382 type LodashPadChars1x3 = (string: string) => string;
2383 interface LodashPadChars1x4 {
2384 (chars: string): LodashPadChars1x5;
2385 (chars: lodash.__, length: number): LodashPadChars1x6;
2386 (chars: string, length: number): string;
2387 }
2388 type LodashPadChars1x5 = (length: number) => string;
2389 type LodashPadChars1x6 = (chars: string) => string;
2390 interface LodashPadCharsEnd {
2391 (chars: string): LodashPadCharsEnd1x1;
2392 (chars: lodash.__, length: number): LodashPadCharsEnd1x2;
2393 (chars: string, length: number): LodashPadCharsEnd1x3;
2394 (chars: lodash.__, length: lodash.__, string: string): LodashPadCharsEnd1x4;
2395 (chars: string, length: lodash.__, string: string): LodashPadCharsEnd1x5;
2396 (chars: lodash.__, length: number, string: string): LodashPadCharsEnd1x6;
2397 (chars: string, length: number, string: string): string;
2398 }
2399 interface LodashPadCharsEnd1x1 {
2400 (length: number): LodashPadCharsEnd1x3;
2401 (length: lodash.__, string: string): LodashPadCharsEnd1x5;
2402 (length: number, string: string): string;
2403 }
2404 interface LodashPadCharsEnd1x2 {
2405 (chars: string): LodashPadCharsEnd1x3;
2406 (chars: lodash.__, string: string): LodashPadCharsEnd1x6;
2407 (chars: string, string: string): string;
2408 }
2409 type LodashPadCharsEnd1x3 = (string: string) => string;
2410 interface LodashPadCharsEnd1x4 {
2411 (chars: string): LodashPadCharsEnd1x5;
2412 (chars: lodash.__, length: number): LodashPadCharsEnd1x6;
2413 (chars: string, length: number): string;
2414 }
2415 type LodashPadCharsEnd1x5 = (length: number) => string;
2416 type LodashPadCharsEnd1x6 = (chars: string) => string;
2417 interface LodashPadCharsStart {
2418 (chars: string): LodashPadCharsStart1x1;
2419 (chars: lodash.__, length: number): LodashPadCharsStart1x2;
2420 (chars: string, length: number): LodashPadCharsStart1x3;
2421 (chars: lodash.__, length: lodash.__, string: string): LodashPadCharsStart1x4;
2422 (chars: string, length: lodash.__, string: string): LodashPadCharsStart1x5;
2423 (chars: lodash.__, length: number, string: string): LodashPadCharsStart1x6;
2424 (chars: string, length: number, string: string): string;
2425 }
2426 interface LodashPadCharsStart1x1 {
2427 (length: number): LodashPadCharsStart1x3;
2428 (length: lodash.__, string: string): LodashPadCharsStart1x5;
2429 (length: number, string: string): string;
2430 }
2431 interface LodashPadCharsStart1x2 {
2432 (chars: string): LodashPadCharsStart1x3;
2433 (chars: lodash.__, string: string): LodashPadCharsStart1x6;
2434 (chars: string, string: string): string;
2435 }
2436 type LodashPadCharsStart1x3 = (string: string) => string;
2437 interface LodashPadCharsStart1x4 {
2438 (chars: string): LodashPadCharsStart1x5;
2439 (chars: lodash.__, length: number): LodashPadCharsStart1x6;
2440 (chars: string, length: number): string;
2441 }
2442 type LodashPadCharsStart1x5 = (length: number) => string;
2443 type LodashPadCharsStart1x6 = (chars: string) => string;
2444 interface LodashPadEnd {
2445 (length: number): LodashPadEnd1x1;
2446 (length: lodash.__, string: string): LodashPadEnd1x2;
2447 (length: number, string: string): string;
2448 }
2449 type LodashPadEnd1x1 = (string: string) => string;
2450 type LodashPadEnd1x2 = (length: number) => string;
2451 interface LodashPadStart {
2452 (length: number): LodashPadStart1x1;
2453 (length: lodash.__, string: string): LodashPadStart1x2;
2454 (length: number, string: string): string;
2455 }
2456 type LodashPadStart1x1 = (string: string) => string;
2457 type LodashPadStart1x2 = (length: number) => string;
2458 interface LodashParseInt {
2459 (radix: number): LodashParseInt1x1;
2460 (radix: lodash.__, string: string): LodashParseInt1x2;
2461 (radix: number, string: string): number;
2462 }
2463 type LodashParseInt1x1 = (string: string) => number;
2464 type LodashParseInt1x2 = (radix: number) => number;
2465 interface LodashPartial {
2466 <T1, T2, R>(func: lodash.Function2<T1, T2, R>): LodashPartial1x1<T1, T2, R>;
2467 <T2>(func: lodash.__, plc1: [lodash.__, T2]): LodashPartial1x2<T2>;
2468 <T1, T2, R>(func: lodash.Function2<T1, T2, R>, plc1: [lodash.__, T2]): lodash.Function1<T1, R>;
2469 <T1, T2, T3, R>(func: lodash.Function3<T1, T2, T3, R>): LodashPartial2x1<T1, T2, T3, R>;
2470 <T1, T2, T3, R>(func: lodash.Function3<T1, T2, T3, R>, plc1: [lodash.__, T2]): lodash.Function2<T1, T3, R>;
2471 <T3>(func: lodash.__, plc1: [lodash.__, lodash.__, T3]): LodashPartial3x2<T3>;
2472 <T1, T2, T3, R>(func: lodash.Function3<T1, T2, T3, R>, plc1: [lodash.__, lodash.__, T3]): lodash.Function2<T1, T2, R>;
2473 <T1, T3>(func: lodash.__, arg1: [T1, lodash.__, T3]): LodashPartial4x2<T1, T3>;
2474 <T1, T2, T3, R>(func: lodash.Function3<T1, T2, T3, R>, arg1: [T1, lodash.__, T3]): lodash.Function1<T2, R>;
2475 <T2, T3>(func: lodash.__, plc1: [lodash.__, T2, T3]): LodashPartial5x2<T2, T3>;
2476 <T1, T2, T3, R>(func: lodash.Function3<T1, T2, T3, R>, plc1: [lodash.__, T2, T3]): lodash.Function1<T1, R>;
2477 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>): LodashPartial6x1<T1, T2, T3, T4, R>;
2478 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, plc1: [lodash.__, T2]): lodash.Function3<T1, T3, T4, R>;
2479 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, plc1: [lodash.__, lodash.__, T3]): lodash.Function3<T1, T2, T4, R>;
2480 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg1: [T1, lodash.__, T3]): lodash.Function2<T2, T4, R>;
2481 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, plc1: [lodash.__, T2, T3]): lodash.Function2<T1, T4, R>;
2482 <T1, T2, T3>(func: lodash.__, arg1OrT1: [T1, T2, T3]): LodashPartial10x2<T1, T2, T3>;
2483 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg1: [T1, T2, T3]): lodash.Function1<T4, R>;
2484 <T4>(func: lodash.__, plc1: [lodash.__, lodash.__, lodash.__, T4]): LodashPartial11x2<T4>;
2485 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, plc1: [lodash.__, lodash.__, lodash.__, T4]): lodash.Function3<T1, T2, T3, R>;
2486 <T1, T4>(func: lodash.__, arg1: [T1, lodash.__, lodash.__, T4]): LodashPartial12x2<T1, T4>;
2487 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg1: [T1, lodash.__, lodash.__, T4]): lodash.Function2<T2, T3, R>;
2488 <T2, T4>(func: lodash.__, plc1: [lodash.__, T2, lodash.__, T4]): LodashPartial13x2<T2, T4>;
2489 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, plc1: [lodash.__, T2, lodash.__, T4]): lodash.Function2<T1, T3, R>;
2490 <T1, T2, T4>(func: lodash.__, arg1: [T1, T2, lodash.__, T4]): LodashPartial14x2<T1, T2, T4>;
2491 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg1: [T1, T2, lodash.__, T4]): lodash.Function1<T3, R>;
2492 <T3, T4>(func: lodash.__, plc1: [lodash.__, lodash.__, T3, T4]): LodashPartial15x2<T3, T4>;
2493 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, plc1: [lodash.__, lodash.__, T3, T4]): lodash.Function2<T1, T2, R>;
2494 <T1, T3, T4>(func: lodash.__, arg1: [T1, lodash.__, T3, T4]): LodashPartial16x2<T1, T3, T4>;
2495 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg1: [T1, lodash.__, T3, T4]): lodash.Function1<T2, R>;
2496 <T2, T3, T4>(func: lodash.__, plc1: [lodash.__, T2, T3, T4]): LodashPartial17x2<T2, T3, T4>;
2497 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, plc1: [lodash.__, T2, T3, T4]): lodash.Function1<T1, R>;
2498 <TS extends any[], T1, R>(func: (t1: T1, ...ts: TS) => R): LodashPartial18x1<TS, T1, R>;
2499 <T1>(func: lodash.__, arg1: [T1]): LodashPartial18x2<T1>;
2500 <TS extends any[], T1, R>(func: (t1: T1, ...ts: TS) => R, arg1: [T1]): (...ts: TS) => R;
2501 <TS extends any[], T1, T2, R>(func: (t1: T1, t2: T2, ...ts: TS) => R): LodashPartial19x1<TS, T1, T2, R>;
2502 <T1, T2>(func: lodash.__, t1: [T1, T2]): LodashPartial19x2<T1, T2>;
2503 <TS extends any[], T1, T2, R>(func: (t1: T1, t2: T2, ...ts: TS) => R, t1: [T1, T2]): (...ts: TS) => R;
2504 <TS extends any[], T1, T2, T3, R>(func: (t1: T1, t2: T2, t3: T3, ...ts: TS) => R): LodashPartial20x1<TS, T1, T2, T3, R>;
2505 <TS extends any[], T1, T2, T3, R>(func: (t1: T1, t2: T2, t3: T3, ...ts: TS) => R, t1: [T1, T2, T3]): (...ts: TS) => R;
2506 <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>;
2507 <T1, T2, T3, T4>(func: lodash.__, t1: [T1, T2, T3, T4]): LodashPartial21x2<T1, T2, T3, T4>;
2508 <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;
2509 placeholder: lodash.__;
2510 }
2511 type LodashPartial1x1<T1, T2, R> = (plc1: [lodash.__, T2]) => lodash.Function1<T1, R>;
2512 interface LodashPartial1x2<T2> {
2513 <T1, R>(func: lodash.Function2<T1, T2, R>): lodash.Function1<T1, R>;
2514 <T1, T3, R>(func: lodash.Function3<T1, T2, T3, R>): lodash.Function2<T1, T3, R>;
2515 <T1, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>): lodash.Function3<T1, T3, T4, R>;
2516 }
2517 interface LodashPartial2x1<T1, T2, T3, R> {
2518 (plc1: [lodash.__, T2]): lodash.Function2<T1, T3, R>;
2519 (plc1: [lodash.__, lodash.__, T3]): lodash.Function2<T1, T2, R>;
2520 (arg1: [T1, lodash.__, T3]): lodash.Function1<T2, R>;
2521 (plc1: [lodash.__, T2, T3]): lodash.Function1<T1, R>;
2522 }
2523 interface LodashPartial3x2<T3> {
2524 <T1, T2, R>(func: lodash.Function3<T1, T2, T3, R>): lodash.Function2<T1, T2, R>;
2525 <T1, T2, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>): lodash.Function3<T1, T2, T4, R>;
2526 }
2527 interface LodashPartial4x2<T1, T3> {
2528 <T2, R>(func: lodash.Function3<T1, T2, T3, R>): lodash.Function1<T2, R>;
2529 <T2, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>): lodash.Function2<T2, T4, R>;
2530 }
2531 interface LodashPartial5x2<T2, T3> {
2532 <T1, R>(func: lodash.Function3<T1, T2, T3, R>): lodash.Function1<T1, R>;
2533 <T1, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>): lodash.Function2<T1, T4, R>;
2534 }
2535 interface LodashPartial6x1<T1, T2, T3, T4, R> {
2536 (plc1: [lodash.__, T2]): lodash.Function3<T1, T3, T4, R>;
2537 (plc1: [lodash.__, lodash.__, T3]): lodash.Function3<T1, T2, T4, R>;
2538 (arg1: [T1, lodash.__, T3]): lodash.Function2<T2, T4, R>;
2539 (plc1: [lodash.__, T2, T3]): lodash.Function2<T1, T4, R>;
2540 (arg1: [T1, T2, T3]): lodash.Function1<T4, R>;
2541 (plc1: [lodash.__, lodash.__, lodash.__, T4]): lodash.Function3<T1, T2, T3, R>;
2542 (arg1: [T1, lodash.__, lodash.__, T4]): lodash.Function2<T2, T3, R>;
2543 (plc1: [lodash.__, T2, lodash.__, T4]): lodash.Function2<T1, T3, R>;
2544 (arg1: [T1, T2, lodash.__, T4]): lodash.Function1<T3, R>;
2545 (plc1: [lodash.__, lodash.__, T3, T4]): lodash.Function2<T1, T2, R>;
2546 (arg1: [T1, lodash.__, T3, T4]): lodash.Function1<T2, R>;
2547 (plc1: [lodash.__, T2, T3, T4]): lodash.Function1<T1, R>;
2548 }
2549 interface LodashPartial10x2<T1, T2, T3> {
2550 <T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>): lodash.Function1<T4, R>;
2551 <TS extends any[], R>(func: (t1: T1, t2: T2, t3: T3, ...ts: TS) => R): (...ts: TS) => R;
2552 }
2553 type LodashPartial11x2<T4> = <T1, T2, T3, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function3<T1, T2, T3, R>;
2554 type LodashPartial12x2<T1, T4> = <T2, T3, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function2<T2, T3, R>;
2555 type LodashPartial13x2<T2, T4> = <T1, T3, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function2<T1, T3, R>;
2556 type LodashPartial14x2<T1, T2, T4> = <T3, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function1<T3, R>;
2557 type LodashPartial15x2<T3, T4> = <T1, T2, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function2<T1, T2, R>;
2558 type LodashPartial16x2<T1, T3, T4> = <T2, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function1<T2, R>;
2559 type LodashPartial17x2<T2, T3, T4> = <T1, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function1<T1, R>;
2560 type LodashPartial18x1<TS extends any[], T1, R> = (arg1: [T1]) => (...ts: TS) => R;
2561 type LodashPartial18x2<T1> = <TS extends any[], R>(func: (t1: T1, ...ts: TS) => R) => (...ts: TS) => R;
2562 type LodashPartial19x1<TS extends any[], T1, T2, R> = (t1: [T1, T2]) => (...ts: TS) => R;
2563 type LodashPartial19x2<T1, T2> = <TS extends any[], R>(func: (t1: T1, t2: T2, ...ts: TS) => R) => (...ts: TS) => R;
2564 type LodashPartial20x1<TS extends any[], T1, T2, T3, R> = (t1: [T1, T2, T3]) => (...ts: TS) => R;
2565 type LodashPartial21x1<TS extends any[], T1, T2, T3, T4, R> = (t1: [T1, T2, T3, T4]) => (...ts: TS) => R;
2566 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;
2567 interface LodashPartialRight {
2568 <T1, R>(func: lodash.Function1<T1, R>): LodashPartialRight1x1<T1, R>;
2569 <T1>(func: lodash.__, arg1: [T1]): LodashPartialRight1x2<T1>;
2570 <T1, R>(func: lodash.Function1<T1, R>, arg1: [T1]): lodash.Function0<R>;
2571 <T1, T2, R>(func: lodash.Function2<T1, T2, R>): LodashPartialRight2x1<T1, T2, R>;
2572 <T1>(func: lodash.__, arg1: [T1, lodash.__]): LodashPartialRight2x2<T1>;
2573 <T1, T2, R>(func: lodash.Function2<T1, T2, R>, arg1: [T1, lodash.__]): lodash.Function1<T2, R>;
2574 <T2>(func: lodash.__, arg2: [T2]): LodashPartialRight3x2<T2>;
2575 <T1, T2, R>(func: lodash.Function2<T1, T2, R>, arg2: [T2]): lodash.Function1<T1, R>;
2576 <T1, T2>(func: lodash.__, arg1: [T1, T2]): LodashPartialRight4x2<T1, T2>;
2577 <T1, T2, R>(func: lodash.Function2<T1, T2, R>, arg1: [T1, T2]): lodash.Function0<R>;
2578 <T1, T2, T3, R>(func: lodash.Function3<T1, T2, T3, R>): LodashPartialRight5x1<T1, T2, T3, R>;
2579 <T1>(func: lodash.__, arg1: [T1, lodash.__, lodash.__]): LodashPartialRight5x2<T1>;
2580 <T1, T2, T3, R>(func: lodash.Function3<T1, T2, T3, R>, arg1: [T1, lodash.__, lodash.__]): lodash.Function2<T2, T3, R>;
2581 <T2>(func: lodash.__, arg2: [T2, lodash.__]): LodashPartialRight6x2<T2>;
2582 <T1, T2, T3, R>(func: lodash.Function3<T1, T2, T3, R>, arg2: [T2, lodash.__]): lodash.Function2<T1, T3, R>;
2583 <T1, T2>(func: lodash.__, arg1: [T1, T2, lodash.__]): LodashPartialRight7x2<T1, T2>;
2584 <T1, T2, T3, R>(func: lodash.Function3<T1, T2, T3, R>, arg1: [T1, T2, lodash.__]): lodash.Function1<T3, R>;
2585 <T3>(func: lodash.__, arg3: [T3]): LodashPartialRight8x2<T3>;
2586 <T1, T2, T3, R>(func: lodash.Function3<T1, T2, T3, R>, arg3: [T3]): lodash.Function2<T1, T2, R>;
2587 <T1, T3>(func: lodash.__, arg1: [T1, lodash.__, T3]): LodashPartialRight9x2<T1, T3>;
2588 <T1, T2, T3, R>(func: lodash.Function3<T1, T2, T3, R>, arg1: [T1, lodash.__, T3]): lodash.Function1<T2, R>;
2589 <T2, T3>(func: lodash.__, arg2: [T2, T3]): LodashPartialRight10x2<T2, T3>;
2590 <T1, T2, T3, R>(func: lodash.Function3<T1, T2, T3, R>, arg2: [T2, T3]): lodash.Function1<T1, R>;
2591 <T1, T2, T3>(func: lodash.__, arg1: [T1, T2, T3]): LodashPartialRight11x2<T1, T2, T3>;
2592 <T1, T2, T3, R>(func: lodash.Function3<T1, T2, T3, R>, arg1: [T1, T2, T3]): lodash.Function0<R>;
2593 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>): LodashPartialRight12x1<T1, T2, T3, T4, R>;
2594 <T1>(func: lodash.__, arg1: [T1, lodash.__, lodash.__, lodash.__]): LodashPartialRight12x2<T1>;
2595 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg1: [T1, lodash.__, lodash.__, lodash.__]): lodash.Function3<T2, T3, T4, R>;
2596 <T2>(func: lodash.__, arg2: [T2, lodash.__, lodash.__]): LodashPartialRight13x2<T2>;
2597 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg2: [T2, lodash.__, lodash.__]): lodash.Function3<T1, T3, T4, R>;
2598 <T1, T2>(func: lodash.__, arg1: [T1, T2, lodash.__, lodash.__]): LodashPartialRight14x2<T1, T2>;
2599 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg1: [T1, T2, lodash.__, lodash.__]): lodash.Function2<T3, T4, R>;
2600 <T3>(func: lodash.__, arg3: [T3, lodash.__]): LodashPartialRight15x2<T3>;
2601 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg3: [T3, lodash.__]): lodash.Function3<T1, T2, T4, R>;
2602 <T1, T3>(func: lodash.__, arg1: [T1, lodash.__, T3, lodash.__]): LodashPartialRight16x2<T1, T3>;
2603 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg1: [T1, lodash.__, T3, lodash.__]): lodash.Function2<T2, T4, R>;
2604 <T2, T3>(func: lodash.__, arg2: [T2, T3, lodash.__]): LodashPartialRight17x2<T2, T3>;
2605 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg2: [T2, T3, lodash.__]): lodash.Function2<T1, T4, R>;
2606 <T1, T2, T3>(func: lodash.__, arg1: [T1, T2, T3, lodash.__]): LodashPartialRight18x2<T1, T2, T3>;
2607 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg1: [T1, T2, T3, lodash.__]): lodash.Function1<T4, R>;
2608 <T4>(func: lodash.__, arg4: [T4]): LodashPartialRight19x2<T4>;
2609 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg4: [T4]): lodash.Function3<T1, T2, T3, R>;
2610 <T1, T4>(func: lodash.__, arg1: [T1, lodash.__, lodash.__, T4]): LodashPartialRight20x2<T1, T4>;
2611 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg1: [T1, lodash.__, lodash.__, T4]): lodash.Function2<T2, T3, R>;
2612 <T2, T4>(func: lodash.__, arg2: [T2, lodash.__, T4]): LodashPartialRight21x2<T2, T4>;
2613 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg2: [T2, lodash.__, T4]): lodash.Function2<T1, T3, R>;
2614 <T1, T2, T4>(func: lodash.__, arg1: [T1, T2, lodash.__, T4]): LodashPartialRight22x2<T1, T2, T4>;
2615 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg1: [T1, T2, lodash.__, T4]): lodash.Function1<T3, R>;
2616 <T3, T4>(func: lodash.__, arg3: [T3, T4]): LodashPartialRight23x2<T3, T4>;
2617 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg3: [T3, T4]): lodash.Function2<T1, T2, R>;
2618 <T1, T3, T4>(func: lodash.__, arg1: [T1, lodash.__, T3, T4]): LodashPartialRight24x2<T1, T3, T4>;
2619 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg1: [T1, lodash.__, T3, T4]): lodash.Function1<T2, R>;
2620 <T2, T3, T4>(func: lodash.__, arg2: [T2, T3, T4]): LodashPartialRight25x2<T2, T3, T4>;
2621 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg2: [T2, T3, T4]): lodash.Function1<T1, R>;
2622 <T1, T2, T3, T4>(func: lodash.__, arg1: [T1, T2, T3, T4]): LodashPartialRight26x2<T1, T2, T3, T4>;
2623 <T1, T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>, arg1: [T1, T2, T3, T4]): lodash.Function0<R>;
2624 (func: (...args: any[]) => any): LodashPartialRight27x1;
2625 (func: lodash.__, args: ReadonlyArray<any>): LodashPartialRight27x2;
2626 (func: (...args: any[]) => any, args: ReadonlyArray<any>): (...args: any[]) => any;
2627 placeholder: lodash.__;
2628 }
2629 type LodashPartialRight1x1<T1, R> = (arg1: [T1]) => lodash.Function0<R>;
2630 type LodashPartialRight1x2<T1> = <R>(func: lodash.Function1<T1, R>) => lodash.Function0<R>;
2631 interface LodashPartialRight2x1<T1, T2, R> {
2632 (arg1: [T1, lodash.__]): lodash.Function1<T2, R>;
2633 (arg2: [T2]): lodash.Function1<T1, R>;
2634 (arg1: [T1, T2]): lodash.Function0<R>;
2635 }
2636 type LodashPartialRight2x2<T1> = <T2, R>(func: lodash.Function2<T1, T2, R>) => lodash.Function1<T2, R>;
2637 type LodashPartialRight3x2<T2> = <T1, R>(func: lodash.Function2<T1, T2, R>) => lodash.Function1<T1, R>;
2638 type LodashPartialRight4x2<T1, T2> = <R>(func: lodash.Function2<T1, T2, R>) => lodash.Function0<R>;
2639 interface LodashPartialRight5x1<T1, T2, T3, R> {
2640 (arg1: [T1, lodash.__, lodash.__]): lodash.Function2<T2, T3, R>;
2641 (arg2: [T2, lodash.__]): lodash.Function2<T1, T3, R>;
2642 (arg1: [T1, T2, lodash.__]): lodash.Function1<T3, R>;
2643 (arg3: [T3]): lodash.Function2<T1, T2, R>;
2644 (arg1: [T1, lodash.__, T3]): lodash.Function1<T2, R>;
2645 (arg2: [T2, T3]): lodash.Function1<T1, R>;
2646 (arg1: [T1, T2, T3]): lodash.Function0<R>;
2647 }
2648 type LodashPartialRight5x2<T1> = <T2, T3, R>(func: lodash.Function3<T1, T2, T3, R>) => lodash.Function2<T2, T3, R>;
2649 type LodashPartialRight6x2<T2> = <T1, T3, R>(func: lodash.Function3<T1, T2, T3, R>) => lodash.Function2<T1, T3, R>;
2650 type LodashPartialRight7x2<T1, T2> = <T3, R>(func: lodash.Function3<T1, T2, T3, R>) => lodash.Function1<T3, R>;
2651 type LodashPartialRight8x2<T3> = <T1, T2, R>(func: lodash.Function3<T1, T2, T3, R>) => lodash.Function2<T1, T2, R>;
2652 type LodashPartialRight9x2<T1, T3> = <T2, R>(func: lodash.Function3<T1, T2, T3, R>) => lodash.Function1<T2, R>;
2653 type LodashPartialRight10x2<T2, T3> = <T1, R>(func: lodash.Function3<T1, T2, T3, R>) => lodash.Function1<T1, R>;
2654 type LodashPartialRight11x2<T1, T2, T3> = <R>(func: lodash.Function3<T1, T2, T3, R>) => lodash.Function0<R>;
2655 interface LodashPartialRight12x1<T1, T2, T3, T4, R> {
2656 (arg1: [T1, lodash.__, lodash.__, lodash.__]): lodash.Function3<T2, T3, T4, R>;
2657 (arg2: [T2, lodash.__, lodash.__]): lodash.Function3<T1, T3, T4, R>;
2658 (arg1: [T1, T2, lodash.__, lodash.__]): lodash.Function2<T3, T4, R>;
2659 (arg3: [T3, lodash.__]): lodash.Function3<T1, T2, T4, R>;
2660 (arg1: [T1, lodash.__, T3, lodash.__]): lodash.Function2<T2, T4, R>;
2661 (arg2: [T2, T3, lodash.__]): lodash.Function2<T1, T4, R>;
2662 (arg1: [T1, T2, T3, lodash.__]): lodash.Function1<T4, R>;
2663 (arg4: [T4]): lodash.Function3<T1, T2, T3, R>;
2664 (arg1: [T1, lodash.__, lodash.__, T4]): lodash.Function2<T2, T3, R>;
2665 (arg2: [T2, lodash.__, T4]): lodash.Function2<T1, T3, R>;
2666 (arg1: [T1, T2, lodash.__, T4]): lodash.Function1<T3, R>;
2667 (arg3: [T3, T4]): lodash.Function2<T1, T2, R>;
2668 (arg1: [T1, lodash.__, T3, T4]): lodash.Function1<T2, R>;
2669 (arg2: [T2, T3, T4]): lodash.Function1<T1, R>;
2670 (arg1: [T1, T2, T3, T4]): lodash.Function0<R>;
2671 }
2672 type LodashPartialRight12x2<T1> = <T2, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function3<T2, T3, T4, R>;
2673 type LodashPartialRight13x2<T2> = <T1, T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function3<T1, T3, T4, R>;
2674 type LodashPartialRight14x2<T1, T2> = <T3, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function2<T3, T4, R>;
2675 type LodashPartialRight15x2<T3> = <T1, T2, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function3<T1, T2, T4, R>;
2676 type LodashPartialRight16x2<T1, T3> = <T2, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function2<T2, T4, R>;
2677 type LodashPartialRight17x2<T2, T3> = <T1, T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function2<T1, T4, R>;
2678 type LodashPartialRight18x2<T1, T2, T3> = <T4, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function1<T4, R>;
2679 type LodashPartialRight19x2<T4> = <T1, T2, T3, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function3<T1, T2, T3, R>;
2680 type LodashPartialRight20x2<T1, T4> = <T2, T3, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function2<T2, T3, R>;
2681 type LodashPartialRight21x2<T2, T4> = <T1, T3, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function2<T1, T3, R>;
2682 type LodashPartialRight22x2<T1, T2, T4> = <T3, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function1<T3, R>;
2683 type LodashPartialRight23x2<T3, T4> = <T1, T2, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function2<T1, T2, R>;
2684 type LodashPartialRight24x2<T1, T3, T4> = <T2, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function1<T2, R>;
2685 type LodashPartialRight25x2<T2, T3, T4> = <T1, R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function1<T1, R>;
2686 type LodashPartialRight26x2<T1, T2, T3, T4> = <R>(func: lodash.Function4<T1, T2, T3, T4, R>) => lodash.Function0<R>;
2687 type LodashPartialRight27x1 = (args: ReadonlyArray<any>) => (...args: any[]) => any;
2688 type LodashPartialRight27x2 = (func: (...args: any[]) => any) => (...args: any[]) => any;
2689 interface LodashPartition {
2690 <T, U extends T>(callback: lodash.ValueIteratorTypeGuard<T, U>): LodashPartition1x1<T, U>;
2691 <T>(callback: lodash.__, collection: lodash.List<T> | null | undefined): LodashPartition1x2<T>;
2692 <T, U extends T>(callback: lodash.ValueIteratorTypeGuard<T, U>, collection: lodash.List<T> | null | undefined): [U[], Array<Exclude<T, U>>];
2693 <T>(callback: lodash.ValueIteratee<T>): LodashPartition2x1<T>;
2694 <T>(callback: lodash.ValueIteratee<T>, collection: lodash.List<T> | null | undefined): [T[], T[]];
2695 <T extends object>(callback: lodash.__, collection: T | null | undefined): LodashPartition3x2<T>;
2696 <T extends object>(callback: lodash.ValueIteratee<T[keyof T]>, collection: T | null | undefined): [Array<T[keyof T]>, Array<T[keyof T]>];
2697 }
2698 type LodashPartition1x1<T, U> = (collection: lodash.List<T> | null | undefined) => [U[], Array<Exclude<T, U>>];
2699 interface LodashPartition1x2<T> {
2700 <U extends T>(callback: lodash.ValueIteratorTypeGuard<T, U>): [U[], Array<Exclude<T, U>>];
2701 (callback: lodash.ValueIteratee<T>): [T[], T[]];
2702 }
2703 type LodashPartition2x1<T> = (collection: lodash.List<T> | object | null | undefined) => [T[], T[]];
2704 type LodashPartition3x2<T> = (callback: lodash.ValueIteratee<T[keyof T]>) => [Array<T[keyof T]>, Array<T[keyof T]>];
2705 interface LodashPath {
2706 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey]): LodashPath1x1<TObject, TKey>;
2707 <TObject extends object>(path: lodash.__, object: TObject): LodashPath1x2<TObject>;
2708 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey], object: TObject): TObject[TKey];
2709 <TObject extends object>(path: lodash.__, object: TObject | null | undefined): LodashPath2x2<TObject>;
2710 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey], object: TObject | null | undefined): TObject[TKey] | undefined;
2711 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): LodashPath3x1<TObject, TKey1, TKey2>;
2712 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2], object: TObject): TObject[TKey1][TKey2];
2713 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2], object: TObject | null | undefined): TObject[TKey1][TKey2] | undefined;
2714 <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>;
2715 <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];
2716 <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;
2717 <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>;
2718 <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];
2719 <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;
2720 (path: number): LodashPath9x1;
2721 <T>(path: lodash.__, object: lodash.NumericDictionary<T>): LodashPath9x2<T>;
2722 <T>(path: number, object: lodash.NumericDictionary<T>): T;
2723 <T>(path: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashPath10x2<T>;
2724 <T>(path: number, object: lodash.NumericDictionary<T> | null | undefined): T | undefined;
2725 (path: lodash.PropertyPath): LodashPath11x1;
2726 (path: lodash.__, object: null | undefined): LodashPath11x2;
2727 (path: lodash.PropertyPath, object: null | undefined): undefined;
2728 (path: lodash.__, object: any): LodashPath12x2;
2729 (path: lodash.PropertyPath, object: any): any;
2730 }
2731 interface LodashPath1x1<TObject, TKey extends keyof TObject> {
2732 (object: TObject): TObject[TKey];
2733 (object: TObject | null | undefined): TObject[TKey] | undefined;
2734 }
2735 interface LodashPath1x2<TObject> {
2736 <TKey extends keyof TObject>(path: TKey | [TKey]): TObject[TKey];
2737 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): TObject[TKey1][TKey2];
2738 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3]): TObject[TKey1][TKey2][TKey3];
2739 <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];
2740 }
2741 interface LodashPath2x2<TObject> {
2742 <TKey extends keyof TObject>(path: TKey | [TKey]): TObject[TKey] | undefined;
2743 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): TObject[TKey1][TKey2] | undefined;
2744 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3]): TObject[TKey1][TKey2][TKey3] | undefined;
2745 <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;
2746 }
2747 interface LodashPath3x1<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]> {
2748 (object: TObject): TObject[TKey1][TKey2];
2749 (object: TObject | null | undefined): TObject[TKey1][TKey2] | undefined;
2750 }
2751 interface LodashPath5x1<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]> {
2752 (object: TObject): TObject[TKey1][TKey2][TKey3];
2753 (object: TObject | null | undefined): TObject[TKey1][TKey2][TKey3] | undefined;
2754 }
2755 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]> {
2756 (object: TObject): TObject[TKey1][TKey2][TKey3][TKey4];
2757 (object: TObject | null | undefined): TObject[TKey1][TKey2][TKey3][TKey4] | undefined;
2758 }
2759 interface LodashPath9x1 {
2760 <T>(object: lodash.NumericDictionary<T>): T;
2761 <T>(object: lodash.NumericDictionary<T> | null | undefined): T | undefined;
2762 }
2763 type LodashPath9x2<T> = (path: number) => T;
2764 type LodashPath10x2<T> = (path: number) => T | undefined;
2765 interface LodashPath11x1 {
2766 (object: null | undefined): undefined;
2767 (object: any): any;
2768 }
2769 type LodashPath11x2 = (path: lodash.PropertyPath) => undefined;
2770 type LodashPath12x2 = (path: lodash.PropertyPath) => any;
2771 interface LodashPathOr {
2772 <TDefault>(defaultValue: TDefault): LodashPathOr1x1<TDefault>;
2773 <TObject extends object, TKey extends keyof TObject>(defaultValue: lodash.__, path: TKey | [TKey]): LodashPathOr1x2<TObject, TKey>;
2774 <TObject extends object, TKey extends keyof TObject, TDefault>(defaultValue: TDefault, path: TKey | [TKey]): LodashPathOr1x3<TObject, TKey, TDefault>;
2775 <TObject extends object>(defaultValue: lodash.__, path: lodash.__, object: TObject | null | undefined): LodashPathOr1x4<TObject>;
2776 <TObject extends object, TDefault>(defaultValue: TDefault, path: lodash.__, object: TObject | null | undefined): LodashPathOr1x5<TObject, TDefault>;
2777 <TObject extends object, TKey extends keyof TObject>(defaultValue: lodash.__, path: TKey | [TKey], object: TObject | null | undefined): LodashPathOr1x6<TObject, TKey>;
2778 <TObject extends object, TKey extends keyof TObject, TDefault>(defaultValue: TDefault, path: TKey | [TKey], object: TObject | null | undefined): Exclude<TObject[TKey], undefined> | TDefault;
2779 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(defaultValue: lodash.__, path: [TKey1, TKey2]): LodashPathOr2x2<TObject, TKey1, TKey2>;
2780 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TDefault>(defaultValue: TDefault, path: [TKey1, TKey2]): LodashPathOr2x3<TObject, TKey1, TKey2, TDefault>;
2781 <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>;
2782 <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;
2783 <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>;
2784 <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>;
2785 <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>;
2786 <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;
2787 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(defaultValue: lodash.__, path: [TKey1, TKey2, TKey3, TKey4]): LodashPathOr4x2<TObject, TKey1, TKey2, TKey3, TKey4>;
2788 <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>;
2789 <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>;
2790 <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;
2791 (defaultValue: lodash.__, path: number): LodashPathOr5x2;
2792 <TDefault>(defaultValue: TDefault, path: number): LodashPathOr5x3<TDefault>;
2793 <T>(defaultValue: lodash.__, path: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashPathOr5x4<T>;
2794 <T, TDefault>(defaultValue: TDefault, path: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashPathOr5x5<T, TDefault>;
2795 <T>(defaultValue: lodash.__, path: number, object: lodash.NumericDictionary<T> | null | undefined): LodashPathOr5x6<T>;
2796 <T, TDefault>(defaultValue: TDefault, path: number, object: lodash.NumericDictionary<T> | null | undefined): T | TDefault;
2797 (defaultValue: lodash.__, path: lodash.PropertyPath): LodashPathOr6x2;
2798 <TDefault>(defaultValue: TDefault, path: lodash.PropertyPath): LodashPathOr6x3<TDefault>;
2799 (defaultValue: lodash.__, path: lodash.__, object: null | undefined): LodashPathOr6x4;
2800 <TDefault>(defaultValue: TDefault, path: lodash.__, object: null | undefined): LodashPathOr6x5<TDefault>;
2801 (defaultValue: lodash.__, path: lodash.PropertyPath, object: null | undefined): LodashPathOr6x6;
2802 <TDefault>(defaultValue: TDefault, path: lodash.PropertyPath, object: null | undefined): TDefault;
2803 (defaultValue: any): LodashPathOr7x1;
2804 (defaultValue: any, path: lodash.PropertyPath): LodashPathOr7x3;
2805 (defaultValue: lodash.__, path: lodash.__, object: any): LodashPathOr7x4;
2806 (defaultValue: any, path: lodash.__, object: any): LodashPathOr7x5;
2807 (defaultValue: lodash.__, path: lodash.PropertyPath, object: any): LodashPathOr7x6;
2808 (defaultValue: any, path: lodash.PropertyPath, object: any): any;
2809 }
2810 interface LodashPathOr1x1<TDefault> {
2811 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey]): LodashPathOr1x3<TObject, TKey, TDefault>;
2812 <TObject extends object>(path: lodash.__, object: TObject | null | undefined): LodashPathOr1x5<TObject, TDefault>;
2813 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey], object: TObject | null | undefined): Exclude<TObject[TKey], undefined> | TDefault;
2814 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): LodashPathOr2x3<TObject, TKey1, TKey2, TDefault>;
2815 <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;
2816 <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>;
2817 <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;
2818 <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>;
2819 <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;
2820 (path: number): LodashPathOr5x3<TDefault>;
2821 <T>(path: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashPathOr5x5<T, TDefault>;
2822 <T>(path: number, object: lodash.NumericDictionary<T> | null | undefined): T | TDefault;
2823 (path: lodash.PropertyPath): LodashPathOr6x3<TDefault>;
2824 (path: lodash.__, object: null | undefined): LodashPathOr6x5<TDefault>;
2825 (path: lodash.PropertyPath, object: null | undefined): TDefault;
2826 }
2827 interface LodashPathOr1x2<TObject, TKey extends keyof TObject> {
2828 <TDefault>(defaultValue: TDefault): LodashPathOr1x3<TObject, TKey, TDefault>;
2829 (defaultValue: lodash.__, object: TObject | null | undefined): LodashPathOr1x6<TObject, TKey>;
2830 <TDefault>(defaultValue: TDefault, object: TObject | null | undefined): Exclude<TObject[TKey], undefined> | TDefault;
2831 }
2832 type LodashPathOr1x3<TObject, TKey extends keyof TObject, TDefault> = (object: TObject | null | undefined) => Exclude<TObject[TKey], undefined> | TDefault;
2833 interface LodashPathOr1x4<TObject> {
2834 <TDefault>(defaultValue: TDefault): LodashPathOr1x5<TObject, TDefault>;
2835 <TKey extends keyof TObject>(defaultValue: lodash.__, path: TKey | [TKey]): LodashPathOr1x6<TObject, TKey>;
2836 <TKey extends keyof TObject, TDefault>(defaultValue: TDefault, path: TKey | [TKey]): Exclude<TObject[TKey], undefined> | TDefault;
2837 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(defaultValue: lodash.__, path: [TKey1, TKey2]): LodashPathOr2x6<TObject, TKey1, TKey2>;
2838 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TDefault>(defaultValue: TDefault, path: [TKey1, TKey2]): Exclude<TObject[TKey1][TKey2], undefined> | TDefault;
2839 <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>;
2840 <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;
2841 <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>;
2842 <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;
2843 }
2844 interface LodashPathOr1x5<TObject, TDefault> {
2845 <TKey extends keyof TObject>(path: TKey | [TKey]): Exclude<TObject[TKey], undefined> | TDefault;
2846 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(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]>(path: [TKey1, TKey2, TKey3]): Exclude<TObject[TKey1][TKey2][TKey3], undefined> | TDefault;
2848 <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;
2849 }
2850 type LodashPathOr1x6<TObject, TKey extends keyof TObject> = <TDefault>(defaultValue: TDefault) => Exclude<TObject[TKey], undefined> | TDefault;
2851 interface LodashPathOr2x2<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]> {
2852 <TDefault>(defaultValue: TDefault): LodashPathOr2x3<TObject, TKey1, TKey2, TDefault>;
2853 (defaultValue: lodash.__, object: TObject | null | undefined): LodashPathOr2x6<TObject, TKey1, TKey2>;
2854 <TDefault>(defaultValue: TDefault, object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2], undefined> | TDefault;
2855 }
2856 type LodashPathOr2x3<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TDefault> = (object: TObject | null | undefined) => Exclude<TObject[TKey1][TKey2], undefined> | TDefault;
2857 type LodashPathOr2x6<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]> = <TDefault>(defaultValue: TDefault) => Exclude<TObject[TKey1][TKey2], undefined> | TDefault;
2858 interface LodashPathOr3x2<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]> {
2859 <TDefault>(defaultValue: TDefault): LodashPathOr3x3<TObject, TKey1, TKey2, TKey3, TDefault>;
2860 (defaultValue: lodash.__, object: TObject | null | undefined): LodashPathOr3x6<TObject, TKey1, TKey2, TKey3>;
2861 <TDefault>(defaultValue: TDefault, object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2][TKey3], undefined> | TDefault;
2862 }
2863 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;
2864 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;
2865 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]> {
2866 <TDefault>(defaultValue: TDefault): LodashPathOr4x3<TObject, TKey1, TKey2, TKey3, TKey4, TDefault>;
2867 (defaultValue: lodash.__, object: TObject | null | undefined): LodashPathOr4x6<TObject, TKey1, TKey2, TKey3, TKey4>;
2868 <TDefault>(defaultValue: TDefault, object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2][TKey3][TKey4], undefined> | TDefault;
2869 }
2870 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;
2871 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;
2872 interface LodashPathOr5x2 {
2873 <TDefault>(defaultValue: TDefault): LodashPathOr5x3<TDefault>;
2874 <T>(defaultValue: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashPathOr5x6<T>;
2875 <T, TDefault>(defaultValue: TDefault, object: lodash.NumericDictionary<T> | null | undefined): T | TDefault;
2876 }
2877 type LodashPathOr5x3<TDefault> = <T>(object: lodash.NumericDictionary<T> | null | undefined) => T | TDefault;
2878 interface LodashPathOr5x4<T> {
2879 <TDefault>(defaultValue: TDefault): LodashPathOr5x5<T, TDefault>;
2880 (defaultValue: lodash.__, path: number): LodashPathOr5x6<T>;
2881 <TDefault>(defaultValue: TDefault, path: number): T | TDefault;
2882 }
2883 type LodashPathOr5x5<T, TDefault> = (path: number) => T | TDefault;
2884 type LodashPathOr5x6<T> = <TDefault>(defaultValue: TDefault) => T | TDefault;
2885 interface LodashPathOr6x2 {
2886 <TDefault>(defaultValue: TDefault): LodashPathOr6x3<TDefault>;
2887 (defaultValue: lodash.__, object: null | undefined): LodashPathOr6x6;
2888 <TDefault>(defaultValue: TDefault, object: null | undefined): TDefault;
2889 (defaultValue: any): LodashPathOr7x3;
2890 (defaultValue: lodash.__, object: any): LodashPathOr7x6;
2891 (defaultValue: any, object: any): any;
2892 }
2893 type LodashPathOr6x3<TDefault> = (object: null | undefined) => TDefault;
2894 interface LodashPathOr6x4 {
2895 <TDefault>(defaultValue: TDefault): LodashPathOr6x5<TDefault>;
2896 (defaultValue: lodash.__, path: lodash.PropertyPath): LodashPathOr6x6;
2897 <TDefault>(defaultValue: TDefault, path: lodash.PropertyPath): TDefault;
2898 }
2899 type LodashPathOr6x5<TDefault> = (path: lodash.PropertyPath) => TDefault;
2900 type LodashPathOr6x6 = <TDefault>(defaultValue: TDefault) => TDefault;
2901 interface LodashPathOr7x1 {
2902 (path: lodash.PropertyPath): LodashPathOr7x3;
2903 (path: lodash.__, object: any): LodashPathOr7x5;
2904 (path: lodash.PropertyPath, object: any): any;
2905 }
2906 type LodashPathOr7x3 = (object: any) => any;
2907 interface LodashPathOr7x4 {
2908 (defaultValue: any): LodashPathOr7x5;
2909 (defaultValue: lodash.__, path: lodash.PropertyPath): LodashPathOr7x6;
2910 (defaultValue: any, path: lodash.PropertyPath): any;
2911 }
2912 type LodashPathOr7x5 = (path: lodash.PropertyPath) => any;
2913 type LodashPathOr7x6 = (defaultValue: any) => any;
2914 interface LodashPick {
2915 <T extends object, U extends keyof T>(props: lodash.Many<U>): LodashPick1x1<T, U>;
2916 <T extends object>(props: lodash.__, object: T): LodashPick1x2<T>;
2917 <T extends object, U extends keyof T>(props: lodash.Many<U>, object: T): Pick<T, U>;
2918 (props: lodash.PropertyPath): LodashPick2x1;
2919 <T>(props: lodash.__, object: T | null | undefined): LodashPick2x2<T>;
2920 <T>(props: lodash.PropertyPath, object: T | null | undefined): lodash.PartialObject<T>;
2921 }
2922 type LodashPick1x1<T, U extends keyof T> = (object: T) => Pick<T, U>;
2923 type LodashPick1x2<T> = <U extends keyof T>(props: lodash.Many<U>) => Pick<T, U>;
2924 type LodashPick2x1 = <T>(object: T | null | undefined) => lodash.PartialObject<T>;
2925 type LodashPick2x2<T> = (props: lodash.PropertyPath) => lodash.PartialObject<T>;
2926 interface LodashPickBy {
2927 <T, S extends T>(predicate: lodash.ValueKeyIterateeTypeGuard<T, S>): LodashPickBy1x1<T, S>;
2928 <T>(predicate: lodash.__, object: lodash.Dictionary<T> | null | undefined): LodashPickBy1x2<T>;
2929 <T, S extends T>(predicate: lodash.ValueKeyIterateeTypeGuard<T, S>, object: lodash.Dictionary<T> | null | undefined): lodash.Dictionary<S>;
2930 <T>(predicate: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashPickBy2x2<T>;
2931 <T, S extends T>(predicate: lodash.ValueKeyIterateeTypeGuard<T, S>, object: lodash.NumericDictionary<T> | null | undefined): lodash.NumericDictionary<S>;
2932 <T>(predicate: lodash.ValueKeyIteratee<T>): LodashPickBy3x1<T>;
2933 <T>(predicate: lodash.ValueKeyIteratee<T>, object: lodash.Dictionary<T> | null | undefined): lodash.Dictionary<T>;
2934 <T>(predicate: lodash.ValueKeyIteratee<T>, object: lodash.NumericDictionary<T> | null | undefined): lodash.NumericDictionary<T>;
2935 <T extends object>(predicate: lodash.__, object: T | null | undefined): LodashPickBy5x2<T>;
2936 <T extends object>(predicate: lodash.ValueKeyIteratee<T[keyof T]>, object: T | null | undefined): lodash.PartialObject<T>;
2937 }
2938 interface LodashPickBy1x1<T, S> {
2939 (object: lodash.Dictionary<T> | null | undefined): lodash.Dictionary<S>;
2940 (object: lodash.NumericDictionary<T> | null | undefined): lodash.NumericDictionary<S>;
2941 }
2942 interface LodashPickBy1x2<T> {
2943 <S extends T>(predicate: lodash.ValueKeyIterateeTypeGuard<T, S>): lodash.Dictionary<S>;
2944 (predicate: lodash.ValueKeyIteratee<T>): lodash.Dictionary<T>;
2945 }
2946 interface LodashPickBy2x2<T> {
2947 <S extends T>(predicate: lodash.ValueKeyIterateeTypeGuard<T, S>): lodash.NumericDictionary<S>;
2948 (predicate: lodash.ValueKeyIteratee<T>): lodash.NumericDictionary<T>;
2949 }
2950 interface LodashPickBy3x1<T> {
2951 (object: lodash.Dictionary<T> | null | undefined): lodash.Dictionary<T>;
2952 (object: lodash.NumericDictionary<T> | null | undefined): lodash.NumericDictionary<T>;
2953 <T1 extends object>(object: T1 | null | undefined): lodash.PartialObject<T1>;
2954 }
2955 type LodashPickBy5x2<T> = (predicate: lodash.ValueKeyIteratee<T[keyof T]>) => lodash.PartialObject<T>;
2956 interface LodashProp {
2957 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey]): LodashProp1x1<TObject, TKey>;
2958 <TObject extends object>(path: lodash.__, object: TObject): LodashProp1x2<TObject>;
2959 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey], object: TObject): TObject[TKey];
2960 <TObject extends object>(path: lodash.__, object: TObject | null | undefined): LodashProp2x2<TObject>;
2961 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey], object: TObject | null | undefined): TObject[TKey] | undefined;
2962 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): LodashProp3x1<TObject, TKey1, TKey2>;
2963 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2], object: TObject): TObject[TKey1][TKey2];
2964 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2], object: TObject | null | undefined): TObject[TKey1][TKey2] | undefined;
2965 <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>;
2966 <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];
2967 <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;
2968 <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>;
2969 <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];
2970 <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;
2971 (path: number): LodashProp9x1;
2972 <T>(path: lodash.__, object: lodash.NumericDictionary<T>): LodashProp9x2<T>;
2973 <T>(path: number, object: lodash.NumericDictionary<T>): T;
2974 <T>(path: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashProp10x2<T>;
2975 <T>(path: number, object: lodash.NumericDictionary<T> | null | undefined): T | undefined;
2976 (path: lodash.PropertyPath): LodashProp11x1;
2977 (path: lodash.__, object: null | undefined): LodashProp11x2;
2978 (path: lodash.PropertyPath, object: null | undefined): undefined;
2979 (path: lodash.__, object: any): LodashProp12x2;
2980 (path: lodash.PropertyPath, object: any): any;
2981 }
2982 interface LodashProp1x1<TObject, TKey extends keyof TObject> {
2983 (object: TObject): TObject[TKey];
2984 (object: TObject | null | undefined): TObject[TKey] | undefined;
2985 }
2986 interface LodashProp1x2<TObject> {
2987 <TKey extends keyof TObject>(path: TKey | [TKey]): TObject[TKey];
2988 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): TObject[TKey1][TKey2];
2989 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3]): TObject[TKey1][TKey2][TKey3];
2990 <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];
2991 }
2992 interface LodashProp2x2<TObject> {
2993 <TKey extends keyof TObject>(path: TKey | [TKey]): TObject[TKey] | undefined;
2994 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): TObject[TKey1][TKey2] | undefined;
2995 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3]): TObject[TKey1][TKey2][TKey3] | undefined;
2996 <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;
2997 }
2998 interface LodashProp3x1<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]> {
2999 (object: TObject): TObject[TKey1][TKey2];
3000 (object: TObject | null | undefined): TObject[TKey1][TKey2] | undefined;
3001 }
3002 interface LodashProp5x1<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]> {
3003 (object: TObject): TObject[TKey1][TKey2][TKey3];
3004 (object: TObject | null | undefined): TObject[TKey1][TKey2][TKey3] | undefined;
3005 }
3006 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]> {
3007 (object: TObject): TObject[TKey1][TKey2][TKey3][TKey4];
3008 (object: TObject | null | undefined): TObject[TKey1][TKey2][TKey3][TKey4] | undefined;
3009 }
3010 interface LodashProp9x1 {
3011 <T>(object: lodash.NumericDictionary<T>): T;
3012 <T>(object: lodash.NumericDictionary<T> | null | undefined): T | undefined;
3013 }
3014 type LodashProp9x2<T> = (path: number) => T;
3015 type LodashProp10x2<T> = (path: number) => T | undefined;
3016 interface LodashProp11x1 {
3017 (object: null | undefined): undefined;
3018 (object: any): any;
3019 }
3020 type LodashProp11x2 = (path: lodash.PropertyPath) => undefined;
3021 type LodashProp12x2 = (path: lodash.PropertyPath) => any;
3022 interface LodashProperty {
3023 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey]): LodashProperty1x1<TObject, TKey>;
3024 <TObject extends object>(path: lodash.__, object: TObject): LodashProperty1x2<TObject>;
3025 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey], object: TObject): TObject[TKey];
3026 <TObject extends object>(path: lodash.__, object: TObject | null | undefined): LodashProperty2x2<TObject>;
3027 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey], object: TObject | null | undefined): TObject[TKey] | undefined;
3028 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): LodashProperty3x1<TObject, TKey1, TKey2>;
3029 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2], object: TObject): TObject[TKey1][TKey2];
3030 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2], object: TObject | null | undefined): TObject[TKey1][TKey2] | undefined;
3031 <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>;
3032 <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];
3033 <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;
3034 <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>;
3035 <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];
3036 <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;
3037 (path: number): LodashProperty9x1;
3038 <T>(path: lodash.__, object: lodash.NumericDictionary<T>): LodashProperty9x2<T>;
3039 <T>(path: number, object: lodash.NumericDictionary<T>): T;
3040 <T>(path: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashProperty10x2<T>;
3041 <T>(path: number, object: lodash.NumericDictionary<T> | null | undefined): T | undefined;
3042 (path: lodash.PropertyPath): LodashProperty11x1;
3043 (path: lodash.__, object: null | undefined): LodashProperty11x2;
3044 (path: lodash.PropertyPath, object: null | undefined): undefined;
3045 (path: lodash.__, object: any): LodashProperty12x2;
3046 (path: lodash.PropertyPath, object: any): any;
3047 }
3048 interface LodashProperty1x1<TObject, TKey extends keyof TObject> {
3049 (object: TObject): TObject[TKey];
3050 (object: TObject | null | undefined): TObject[TKey] | undefined;
3051 }
3052 interface LodashProperty1x2<TObject> {
3053 <TKey extends keyof TObject>(path: TKey | [TKey]): TObject[TKey];
3054 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): TObject[TKey1][TKey2];
3055 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3]): TObject[TKey1][TKey2][TKey3];
3056 <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];
3057 }
3058 interface LodashProperty2x2<TObject> {
3059 <TKey extends keyof TObject>(path: TKey | [TKey]): TObject[TKey] | undefined;
3060 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): TObject[TKey1][TKey2] | undefined;
3061 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3]): TObject[TKey1][TKey2][TKey3] | undefined;
3062 <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;
3063 }
3064 interface LodashProperty3x1<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]> {
3065 (object: TObject): TObject[TKey1][TKey2];
3066 (object: TObject | null | undefined): TObject[TKey1][TKey2] | undefined;
3067 }
3068 interface LodashProperty5x1<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]> {
3069 (object: TObject): TObject[TKey1][TKey2][TKey3];
3070 (object: TObject | null | undefined): TObject[TKey1][TKey2][TKey3] | undefined;
3071 }
3072 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]> {
3073 (object: TObject): TObject[TKey1][TKey2][TKey3][TKey4];
3074 (object: TObject | null | undefined): TObject[TKey1][TKey2][TKey3][TKey4] | undefined;
3075 }
3076 interface LodashProperty9x1 {
3077 <T>(object: lodash.NumericDictionary<T>): T;
3078 <T>(object: lodash.NumericDictionary<T> | null | undefined): T | undefined;
3079 }
3080 type LodashProperty9x2<T> = (path: number) => T;
3081 type LodashProperty10x2<T> = (path: number) => T | undefined;
3082 interface LodashProperty11x1 {
3083 (object: null | undefined): undefined;
3084 (object: any): any;
3085 }
3086 type LodashProperty11x2 = (path: lodash.PropertyPath) => undefined;
3087 type LodashProperty12x2 = (path: lodash.PropertyPath) => any;
3088 interface LodashPropertyOf {
3089 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey]): LodashPropertyOf1x1<TObject, TKey>;
3090 <TObject extends object>(path: lodash.__, object: TObject): LodashPropertyOf1x2<TObject>;
3091 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey], object: TObject): TObject[TKey];
3092 <TObject extends object>(path: lodash.__, object: TObject | null | undefined): LodashPropertyOf2x2<TObject>;
3093 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey], object: TObject | null | undefined): TObject[TKey] | undefined;
3094 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): LodashPropertyOf3x1<TObject, TKey1, TKey2>;
3095 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2], object: TObject): TObject[TKey1][TKey2];
3096 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2], object: TObject | null | undefined): TObject[TKey1][TKey2] | undefined;
3097 <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>;
3098 <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];
3099 <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;
3100 <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>;
3101 <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];
3102 <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;
3103 (path: number): LodashPropertyOf9x1;
3104 <T>(path: lodash.__, object: lodash.NumericDictionary<T>): LodashPropertyOf9x2<T>;
3105 <T>(path: number, object: lodash.NumericDictionary<T>): T;
3106 <T>(path: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashPropertyOf10x2<T>;
3107 <T>(path: number, object: lodash.NumericDictionary<T> | null | undefined): T | undefined;
3108 (path: lodash.PropertyPath): LodashPropertyOf11x1;
3109 (path: lodash.__, object: null | undefined): LodashPropertyOf11x2;
3110 (path: lodash.PropertyPath, object: null | undefined): undefined;
3111 (path: lodash.__, object: any): LodashPropertyOf12x2;
3112 (path: lodash.PropertyPath, object: any): any;
3113 }
3114 interface LodashPropertyOf1x1<TObject, TKey extends keyof TObject> {
3115 (object: TObject): TObject[TKey];
3116 (object: TObject | null | undefined): TObject[TKey] | undefined;
3117 }
3118 interface LodashPropertyOf1x2<TObject> {
3119 <TKey extends keyof TObject>(path: TKey | [TKey]): TObject[TKey];
3120 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): TObject[TKey1][TKey2];
3121 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3]): TObject[TKey1][TKey2][TKey3];
3122 <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];
3123 }
3124 interface LodashPropertyOf2x2<TObject> {
3125 <TKey extends keyof TObject>(path: TKey | [TKey]): TObject[TKey] | undefined;
3126 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): TObject[TKey1][TKey2] | undefined;
3127 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(path: [TKey1, TKey2, TKey3]): TObject[TKey1][TKey2][TKey3] | undefined;
3128 <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;
3129 }
3130 interface LodashPropertyOf3x1<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]> {
3131 (object: TObject): TObject[TKey1][TKey2];
3132 (object: TObject | null | undefined): TObject[TKey1][TKey2] | undefined;
3133 }
3134 interface LodashPropertyOf5x1<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]> {
3135 (object: TObject): TObject[TKey1][TKey2][TKey3];
3136 (object: TObject | null | undefined): TObject[TKey1][TKey2][TKey3] | undefined;
3137 }
3138 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]> {
3139 (object: TObject): TObject[TKey1][TKey2][TKey3][TKey4];
3140 (object: TObject | null | undefined): TObject[TKey1][TKey2][TKey3][TKey4] | undefined;
3141 }
3142 interface LodashPropertyOf9x1 {
3143 <T>(object: lodash.NumericDictionary<T>): T;
3144 <T>(object: lodash.NumericDictionary<T> | null | undefined): T | undefined;
3145 }
3146 type LodashPropertyOf9x2<T> = (path: number) => T;
3147 type LodashPropertyOf10x2<T> = (path: number) => T | undefined;
3148 interface LodashPropertyOf11x1 {
3149 (object: null | undefined): undefined;
3150 (object: any): any;
3151 }
3152 type LodashPropertyOf11x2 = (path: lodash.PropertyPath) => undefined;
3153 type LodashPropertyOf12x2 = (path: lodash.PropertyPath) => any;
3154 interface LodashPropOr {
3155 <TDefault>(defaultValue: TDefault): LodashPropOr1x1<TDefault>;
3156 <TObject extends object, TKey extends keyof TObject>(defaultValue: lodash.__, path: TKey | [TKey]): LodashPropOr1x2<TObject, TKey>;
3157 <TObject extends object, TKey extends keyof TObject, TDefault>(defaultValue: TDefault, path: TKey | [TKey]): LodashPropOr1x3<TObject, TKey, TDefault>;
3158 <TObject extends object>(defaultValue: lodash.__, path: lodash.__, object: TObject | null | undefined): LodashPropOr1x4<TObject>;
3159 <TObject extends object, TDefault>(defaultValue: TDefault, path: lodash.__, object: TObject | null | undefined): LodashPropOr1x5<TObject, TDefault>;
3160 <TObject extends object, TKey extends keyof TObject>(defaultValue: lodash.__, path: TKey | [TKey], object: TObject | null | undefined): LodashPropOr1x6<TObject, TKey>;
3161 <TObject extends object, TKey extends keyof TObject, TDefault>(defaultValue: TDefault, path: TKey | [TKey], object: TObject | null | undefined): Exclude<TObject[TKey], undefined> | TDefault;
3162 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(defaultValue: lodash.__, path: [TKey1, TKey2]): LodashPropOr2x2<TObject, TKey1, TKey2>;
3163 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TDefault>(defaultValue: TDefault, path: [TKey1, TKey2]): LodashPropOr2x3<TObject, TKey1, TKey2, TDefault>;
3164 <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>;
3165 <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;
3166 <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>;
3167 <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>;
3168 <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>;
3169 <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;
3170 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(defaultValue: lodash.__, path: [TKey1, TKey2, TKey3, TKey4]): LodashPropOr4x2<TObject, TKey1, TKey2, TKey3, TKey4>;
3171 <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>;
3172 <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>;
3173 <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;
3174 (defaultValue: lodash.__, path: number): LodashPropOr5x2;
3175 <TDefault>(defaultValue: TDefault, path: number): LodashPropOr5x3<TDefault>;
3176 <T>(defaultValue: lodash.__, path: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashPropOr5x4<T>;
3177 <T, TDefault>(defaultValue: TDefault, path: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashPropOr5x5<T, TDefault>;
3178 <T>(defaultValue: lodash.__, path: number, object: lodash.NumericDictionary<T> | null | undefined): LodashPropOr5x6<T>;
3179 <T, TDefault>(defaultValue: TDefault, path: number, object: lodash.NumericDictionary<T> | null | undefined): T | TDefault;
3180 (defaultValue: lodash.__, path: lodash.PropertyPath): LodashPropOr6x2;
3181 <TDefault>(defaultValue: TDefault, path: lodash.PropertyPath): LodashPropOr6x3<TDefault>;
3182 (defaultValue: lodash.__, path: lodash.__, object: null | undefined): LodashPropOr6x4;
3183 <TDefault>(defaultValue: TDefault, path: lodash.__, object: null | undefined): LodashPropOr6x5<TDefault>;
3184 (defaultValue: lodash.__, path: lodash.PropertyPath, object: null | undefined): LodashPropOr6x6;
3185 <TDefault>(defaultValue: TDefault, path: lodash.PropertyPath, object: null | undefined): TDefault;
3186 (defaultValue: any): LodashPropOr7x1;
3187 (defaultValue: any, path: lodash.PropertyPath): LodashPropOr7x3;
3188 (defaultValue: lodash.__, path: lodash.__, object: any): LodashPropOr7x4;
3189 (defaultValue: any, path: lodash.__, object: any): LodashPropOr7x5;
3190 (defaultValue: lodash.__, path: lodash.PropertyPath, object: any): LodashPropOr7x6;
3191 (defaultValue: any, path: lodash.PropertyPath, object: any): any;
3192 }
3193 interface LodashPropOr1x1<TDefault> {
3194 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey]): LodashPropOr1x3<TObject, TKey, TDefault>;
3195 <TObject extends object>(path: lodash.__, object: TObject | null | undefined): LodashPropOr1x5<TObject, TDefault>;
3196 <TObject extends object, TKey extends keyof TObject>(path: TKey | [TKey], object: TObject | null | undefined): Exclude<TObject[TKey], undefined> | TDefault;
3197 <TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(path: [TKey1, TKey2]): LodashPropOr2x3<TObject, TKey1, TKey2, TDefault>;
3198 <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;
3199 <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>;
3200 <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;
3201 <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>;
3202 <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;
3203 (path: number): LodashPropOr5x3<TDefault>;
3204 <T>(path: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashPropOr5x5<T, TDefault>;
3205 <T>(path: number, object: lodash.NumericDictionary<T> | null | undefined): T | TDefault;
3206 (path: lodash.PropertyPath): LodashPropOr6x3<TDefault>;
3207 (path: lodash.__, object: null | undefined): LodashPropOr6x5<TDefault>;
3208 (path: lodash.PropertyPath, object: null | undefined): TDefault;
3209 }
3210 interface LodashPropOr1x2<TObject, TKey extends keyof TObject> {
3211 <TDefault>(defaultValue: TDefault): LodashPropOr1x3<TObject, TKey, TDefault>;
3212 (defaultValue: lodash.__, object: TObject | null | undefined): LodashPropOr1x6<TObject, TKey>;
3213 <TDefault>(defaultValue: TDefault, object: TObject | null | undefined): Exclude<TObject[TKey], undefined> | TDefault;
3214 }
3215 type LodashPropOr1x3<TObject, TKey extends keyof TObject, TDefault> = (object: TObject | null | undefined) => Exclude<TObject[TKey], undefined> | TDefault;
3216 interface LodashPropOr1x4<TObject> {
3217 <TDefault>(defaultValue: TDefault): LodashPropOr1x5<TObject, TDefault>;
3218 <TKey extends keyof TObject>(defaultValue: lodash.__, path: TKey | [TKey]): LodashPropOr1x6<TObject, TKey>;
3219 <TKey extends keyof TObject, TDefault>(defaultValue: TDefault, path: TKey | [TKey]): Exclude<TObject[TKey], undefined> | TDefault;
3220 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(defaultValue: lodash.__, path: [TKey1, TKey2]): LodashPropOr2x6<TObject, TKey1, TKey2>;
3221 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TDefault>(defaultValue: TDefault, path: [TKey1, TKey2]): Exclude<TObject[TKey1][TKey2], undefined> | TDefault;
3222 <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>;
3223 <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;
3224 <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>;
3225 <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;
3226 }
3227 interface LodashPropOr1x5<TObject, TDefault> {
3228 <TKey extends keyof TObject>(path: TKey | [TKey]): Exclude<TObject[TKey], undefined> | TDefault;
3229 <TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(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]>(path: [TKey1, TKey2, TKey3]): Exclude<TObject[TKey1][TKey2][TKey3], undefined> | TDefault;
3231 <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;
3232 }
3233 type LodashPropOr1x6<TObject, TKey extends keyof TObject> = <TDefault>(defaultValue: TDefault) => Exclude<TObject[TKey], undefined> | TDefault;
3234 interface LodashPropOr2x2<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]> {
3235 <TDefault>(defaultValue: TDefault): LodashPropOr2x3<TObject, TKey1, TKey2, TDefault>;
3236 (defaultValue: lodash.__, object: TObject | null | undefined): LodashPropOr2x6<TObject, TKey1, TKey2>;
3237 <TDefault>(defaultValue: TDefault, object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2], undefined> | TDefault;
3238 }
3239 type LodashPropOr2x3<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TDefault> = (object: TObject | null | undefined) => Exclude<TObject[TKey1][TKey2], undefined> | TDefault;
3240 type LodashPropOr2x6<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]> = <TDefault>(defaultValue: TDefault) => Exclude<TObject[TKey1][TKey2], undefined> | TDefault;
3241 interface LodashPropOr3x2<TObject, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]> {
3242 <TDefault>(defaultValue: TDefault): LodashPropOr3x3<TObject, TKey1, TKey2, TKey3, TDefault>;
3243 (defaultValue: lodash.__, object: TObject | null | undefined): LodashPropOr3x6<TObject, TKey1, TKey2, TKey3>;
3244 <TDefault>(defaultValue: TDefault, object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2][TKey3], undefined> | TDefault;
3245 }
3246 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;
3247 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;
3248 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]> {
3249 <TDefault>(defaultValue: TDefault): LodashPropOr4x3<TObject, TKey1, TKey2, TKey3, TKey4, TDefault>;
3250 (defaultValue: lodash.__, object: TObject | null | undefined): LodashPropOr4x6<TObject, TKey1, TKey2, TKey3, TKey4>;
3251 <TDefault>(defaultValue: TDefault, object: TObject | null | undefined): Exclude<TObject[TKey1][TKey2][TKey3][TKey4], undefined> | TDefault;
3252 }
3253 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;
3254 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;
3255 interface LodashPropOr5x2 {
3256 <TDefault>(defaultValue: TDefault): LodashPropOr5x3<TDefault>;
3257 <T>(defaultValue: lodash.__, object: lodash.NumericDictionary<T> | null | undefined): LodashPropOr5x6<T>;
3258 <T, TDefault>(defaultValue: TDefault, object: lodash.NumericDictionary<T> | null | undefined): T | TDefault;
3259 }
3260 type LodashPropOr5x3<TDefault> = <T>(object: lodash.NumericDictionary<T> | null | undefined) => T | TDefault;
3261 interface LodashPropOr5x4<T> {
3262 <TDefault>(defaultValue: TDefault): LodashPropOr5x5<T, TDefault>;
3263 (defaultValue: lodash.__, path: number): LodashPropOr5x6<T>;
3264 <TDefault>(defaultValue: TDefault, path: number): T | TDefault;
3265 }
3266 type LodashPropOr5x5<T, TDefault> = (path: number) => T | TDefault;
3267 type LodashPropOr5x6<T> = <TDefault>(defaultValue: TDefault) => T | TDefault;
3268 interface LodashPropOr6x2 {
3269 <TDefault>(defaultValue: TDefault): LodashPropOr6x3<TDefault>;
3270 (defaultValue: lodash.__, object: null | undefined): LodashPropOr6x6;
3271 <TDefault>(defaultValue: TDefault, object: null | undefined): TDefault;
3272 (defaultValue: any): LodashPropOr7x3;
3273 (defaultValue: lodash.__, object: any): LodashPropOr7x6;
3274 (defaultValue: any, object: any): any;
3275 }
3276 type LodashPropOr6x3<TDefault> = (object: null | undefined) => TDefault;
3277 interface LodashPropOr6x4 {
3278 <TDefault>(defaultValue: TDefault): LodashPropOr6x5<TDefault>;
3279 (defaultValue: lodash.__, path: lodash.PropertyPath): LodashPropOr6x6;
3280 <TDefault>(defaultValue: TDefault, path: lodash.PropertyPath): TDefault;
3281 }
3282 type LodashPropOr6x5<TDefault> = (path: lodash.PropertyPath) => TDefault;
3283 type LodashPropOr6x6 = <TDefault>(defaultValue: TDefault) => TDefault;
3284 interface LodashPropOr7x1 {
3285 (path: lodash.PropertyPath): LodashPropOr7x3;
3286 (path: lodash.__, object: any): LodashPropOr7x5;
3287 (path: lodash.PropertyPath, object: any): any;
3288 }
3289 type LodashPropOr7x3 = (object: any) => any;
3290 interface LodashPropOr7x4 {
3291 (defaultValue: any): LodashPropOr7x5;
3292 (defaultValue: lodash.__, path: lodash.PropertyPath): LodashPropOr7x6;
3293 (defaultValue: any, path: lodash.PropertyPath): any;
3294 }
3295 type LodashPropOr7x5 = (path: lodash.PropertyPath) => any;
3296 type LodashPropOr7x6 = (defaultValue: any) => any;
3297 interface LodashPull {
3298 <T>(values: T): LodashPull1x1<T>;
3299 <T>(values: lodash.__, array: ReadonlyArray<T>): LodashPull1x2<T>;
3300 <T>(values: T, array: ReadonlyArray<T>): T[];
3301 <T>(values: lodash.__, array: lodash.List<T>): LodashPull2x2<T>;
3302 <T>(values: T, array: lodash.List<T>): lodash.List<T>;
3303 }
3304 interface LodashPull1x1<T> {
3305 (array: ReadonlyArray<T>): T[];
3306 (array: lodash.List<T>): lodash.List<T>;
3307 }
3308 type LodashPull1x2<T> = (values: T) => T[];
3309 type LodashPull2x2<T> = (values: T) => lodash.List<T>;
3310 interface LodashPullAll {
3311 <T>(values: lodash.List<T>): LodashPullAll1x1<T>;
3312 <T>(values: lodash.__, array: ReadonlyArray<T>): LodashPullAll1x2<T>;
3313 <T>(values: lodash.List<T>, array: ReadonlyArray<T>): T[];
3314 <T>(values: lodash.__, array: lodash.List<T>): LodashPullAll2x2<T>;
3315 <T>(values: lodash.List<T>, array: lodash.List<T>): lodash.List<T>;
3316 }
3317 interface LodashPullAll1x1<T> {
3318 (array: ReadonlyArray<T>): T[];
3319 (array: lodash.List<T>): lodash.List<T>;
3320 }
3321 type LodashPullAll1x2<T> = (values: lodash.List<T>) => T[];
3322 type LodashPullAll2x2<T> = (values: lodash.List<T>) => lodash.List<T>;
3323 interface LodashPullAllBy {
3324 <T>(iteratee: lodash.ValueIteratee<T>): LodashPullAllBy1x1<T>;
3325 <T>(iteratee: lodash.__, values: lodash.List<T>): LodashPullAllBy1x2<T>;
3326 <T>(iteratee: lodash.ValueIteratee<T>, values: lodash.List<T>): LodashPullAllBy1x3<T>;
3327 <T>(iteratee: lodash.__, values: lodash.__, array: ReadonlyArray<T>): LodashPullAllBy1x4<T>;
3328 <T>(iteratee: lodash.ValueIteratee<T>, values: lodash.__, array: ReadonlyArray<T>): LodashPullAllBy1x5<T>;
3329 <T>(iteratee: lodash.__, values: lodash.List<T>, array: ReadonlyArray<T>): LodashPullAllBy1x6<T>;
3330 <T>(iteratee: lodash.ValueIteratee<T>, values: lodash.List<T>, array: ReadonlyArray<T>): T[];
3331 <T>(iteratee: lodash.__, values: lodash.__, array: lodash.List<T>): LodashPullAllBy2x4<T>;
3332 <T>(iteratee: lodash.ValueIteratee<T>, values: lodash.__, array: lodash.List<T>): LodashPullAllBy2x5<T>;
3333 <T>(iteratee: lodash.__, values: lodash.List<T>, array: lodash.List<T>): LodashPullAllBy2x6<T>;
3334 <T>(iteratee: lodash.ValueIteratee<T>, values: lodash.List<T>, array: lodash.List<T>): lodash.List<T>;
3335 <T1, T2>(iteratee: lodash.ValueIteratee<T1 | T2>): LodashPullAllBy3x1<T1, T2>;
3336 <T2>(iteratee: lodash.__, values: lodash.List<T2>): LodashPullAllBy3x2<T2>;
3337 <T1, T2>(iteratee: lodash.ValueIteratee<T1 | T2>, values: lodash.List<T2>): LodashPullAllBy3x3<T1>;
3338 <T1>(iteratee: lodash.__, values: lodash.__, array: ReadonlyArray<T1>): LodashPullAllBy3x4<T1>;
3339 <T1, T2>(iteratee: lodash.ValueIteratee<T1 | T2>, values: lodash.__, array: ReadonlyArray<T1>): LodashPullAllBy3x5<T1, T2>;
3340 <T1, T2>(iteratee: lodash.__, values: lodash.List<T2>, array: ReadonlyArray<T1>): LodashPullAllBy3x6<T1, T2>;
3341 <T1, T2>(iteratee: lodash.ValueIteratee<T1 | T2>, values: lodash.List<T2>, array: ReadonlyArray<T1>): T1[];
3342 <T1>(iteratee: lodash.__, values: lodash.__, array: lodash.List<T1>): LodashPullAllBy4x4<T1>;
3343 <T1, T2>(iteratee: lodash.ValueIteratee<T1 | T2>, values: lodash.__, array: lodash.List<T1>): LodashPullAllBy4x5<T1, T2>;
3344 <T1, T2>(iteratee: lodash.__, values: lodash.List<T2>, array: lodash.List<T1>): LodashPullAllBy4x6<T1, T2>;
3345 <T1, T2>(iteratee: lodash.ValueIteratee<T1 | T2>, values: lodash.List<T2>, array: lodash.List<T1>): lodash.List<T1>;
3346 }
3347 interface LodashPullAllBy1x1<T> {
3348 (values: lodash.List<T>): LodashPullAllBy1x3<T>;
3349 (values: lodash.__, array: ReadonlyArray<T>): LodashPullAllBy1x5<T>;
3350 (values: lodash.List<T>, array: ReadonlyArray<T>): T[];
3351 (values: lodash.__, array: lodash.List<T>): LodashPullAllBy2x5<T>;
3352 (values: lodash.List<T>, array: lodash.List<T>): lodash.List<T>;
3353 }
3354 interface LodashPullAllBy1x2<T> {
3355 (iteratee: lodash.ValueIteratee<T>): LodashPullAllBy1x3<T>;
3356 (iteratee: lodash.__, array: ReadonlyArray<T>): LodashPullAllBy1x6<T>;
3357 (iteratee: lodash.ValueIteratee<T>, array: ReadonlyArray<T>): T[];
3358 (iteratee: lodash.__, array: lodash.List<T>): LodashPullAllBy2x6<T>;
3359 (iteratee: lodash.ValueIteratee<T>, array: lodash.List<T>): lodash.List<T>;
3360 }
3361 interface LodashPullAllBy1x3<T> {
3362 (array: ReadonlyArray<T>): T[];
3363 (array: lodash.List<T>): lodash.List<T>;
3364 }
3365 interface LodashPullAllBy1x4<T> {
3366 (iteratee: lodash.ValueIteratee<T>): LodashPullAllBy1x5<T>;
3367 (iteratee: lodash.__, values: lodash.List<T>): LodashPullAllBy1x6<T>;
3368 (iteratee: lodash.ValueIteratee<T>, values: lodash.List<T>): T[];
3369 }
3370 type LodashPullAllBy1x5<T> = (values: lodash.List<T>) => T[];
3371 type LodashPullAllBy1x6<T> = (iteratee: lodash.ValueIteratee<T>) => T[];
3372 interface LodashPullAllBy2x4<T> {
3373 (iteratee: lodash.ValueIteratee<T>): LodashPullAllBy2x5<T>;
3374 (iteratee: lodash.__, values: lodash.List<T>): LodashPullAllBy2x6<T>;
3375 (iteratee: lodash.ValueIteratee<T>, values: lodash.List<T>): lodash.List<T>;
3376 }
3377 type LodashPullAllBy2x5<T> = (values: lodash.List<T>) => lodash.List<T>;
3378 type LodashPullAllBy2x6<T> = (iteratee: lodash.ValueIteratee<T>) => lodash.List<T>;
3379 interface LodashPullAllBy3x1<T1, T2> {
3380 (values: lodash.List<T2>): LodashPullAllBy3x3<T1>;
3381 (values: lodash.__, array: ReadonlyArray<T1>): LodashPullAllBy3x5<T1, T2>;
3382 (values: lodash.List<T2>, array: ReadonlyArray<T1>): T1[];
3383 (values: lodash.__, array: lodash.List<T1>): LodashPullAllBy4x5<T1, T2>;
3384 (values: lodash.List<T2>, array: lodash.List<T1>): lodash.List<T1>;
3385 }
3386 interface LodashPullAllBy3x2<T2> {
3387 <T1>(iteratee: lodash.ValueIteratee<T1 | T2>): LodashPullAllBy3x3<T1>;
3388 <T1>(iteratee: lodash.__, array: ReadonlyArray<T1>): LodashPullAllBy3x6<T1, T2>;
3389 <T1>(iteratee: lodash.ValueIteratee<T1 | T2>, array: ReadonlyArray<T1>): T1[];
3390 <T1>(iteratee: lodash.__, array: lodash.List<T1>): LodashPullAllBy4x6<T1, T2>;
3391 <T1>(iteratee: lodash.ValueIteratee<T1 | T2>, array: lodash.List<T1>): lodash.List<T1>;
3392 }
3393 interface LodashPullAllBy3x3<T1> {
3394 (array: ReadonlyArray<T1>): T1[];
3395 (array: lodash.List<T1>): lodash.List<T1>;
3396 }
3397 interface LodashPullAllBy3x4<T1> {
3398 <T2>(iteratee: lodash.ValueIteratee<T1 | T2>): LodashPullAllBy3x5<T1, T2>;
3399 <T2>(iteratee: lodash.__, values: lodash.List<T2>): LodashPullAllBy3x6<T1, T2>;
3400 <T2>(iteratee: lodash.ValueIteratee<T1 | T2>, values: lodash.List<T2>): T1[];
3401 }
3402 type LodashPullAllBy3x5<T1, T2> = (values: lodash.List<T2>) => T1[];
3403 type LodashPullAllBy3x6<T1, T2> = (iteratee: lodash.ValueIteratee<T1 | T2>) => T1[];
3404 interface LodashPullAllBy4x4<T1> {
3405 <T2>(iteratee: lodash.ValueIteratee<T1 | T2>): LodashPullAllBy4x5<T1, T2>;
3406 <T2>(iteratee: lodash.__, values: lodash.List<T2>): LodashPullAllBy4x6<T1, T2>;
3407 <T2>(iteratee: lodash.ValueIteratee<T1 | T2>, values: lodash.List<T2>): lodash.List<T1>;
3408 }
3409 type LodashPullAllBy4x5<T1, T2> = (values: lodash.List<T2>) => lodash.List<T1>;
3410 type LodashPullAllBy4x6<T1, T2> = (iteratee: lodash.ValueIteratee<T1 | T2>) => lodash.List<T1>;
3411 interface LodashPullAllWith {
3412 <T>(comparator: lodash.Comparator<T>): LodashPullAllWith1x1<T>;
3413 <T>(comparator: lodash.__, values: lodash.List<T>): LodashPullAllWith1x2<T>;
3414 <T>(comparator: lodash.Comparator<T>, values: lodash.List<T>): LodashPullAllWith1x3<T>;
3415 <T>(comparator: lodash.__, values: lodash.__, array: ReadonlyArray<T>): LodashPullAllWith1x4<T>;
3416 <T>(comparator: lodash.Comparator<T>, values: lodash.__, array: ReadonlyArray<T>): LodashPullAllWith1x5<T>;
3417 <T>(comparator: lodash.__, values: lodash.List<T>, array: ReadonlyArray<T>): LodashPullAllWith1x6<T>;
3418 <T>(comparator: lodash.Comparator<T>, values: lodash.List<T>, array: ReadonlyArray<T>): T[];
3419 <T>(comparator: lodash.__, values: lodash.__, array: lodash.List<T>): LodashPullAllWith2x4<T>;
3420 <T>(comparator: lodash.Comparator<T>, values: lodash.__, array: lodash.List<T>): LodashPullAllWith2x5<T>;
3421 <T>(comparator: lodash.__, values: lodash.List<T>, array: lodash.List<T>): LodashPullAllWith2x6<T>;
3422 <T>(comparator: lodash.Comparator<T>, values: lodash.List<T>, array: lodash.List<T>): lodash.List<T>;
3423 <T1, T2>(comparator: lodash.Comparator2<T1, T2>): LodashPullAllWith3x1<T1, T2>;
3424 <T2>(comparator: lodash.__, values: lodash.List<T2>): LodashPullAllWith3x2<T2>;
3425 <T1, T2>(comparator: lodash.Comparator2<T1, T2>, values: lodash.List<T2>): LodashPullAllWith3x3<T1>;
3426 <T1>(comparator: lodash.__, values: lodash.__, array: ReadonlyArray<T1>): LodashPullAllWith3x4<T1>;
3427 <T1, T2>(comparator: lodash.Comparator2<T1, T2>, values: lodash.__, array: ReadonlyArray<T1>): LodashPullAllWith3x5<T1, T2>;
3428 <T1, T2>(comparator: lodash.__, values: lodash.List<T2>, array: ReadonlyArray<T1>): LodashPullAllWith3x6<T1, T2>;
3429 <T1, T2>(comparator: lodash.Comparator2<T1, T2>, values: lodash.List<T2>, array: ReadonlyArray<T1>): T1[];
3430 <T1>(comparator: lodash.__, values: lodash.__, array: lodash.List<T1>): LodashPullAllWith4x4<T1>;
3431 <T1, T2>(comparator: lodash.Comparator2<T1, T2>, values: lodash.__, array: lodash.List<T1>): LodashPullAllWith4x5<T1, T2>;
3432 <T1, T2>(comparator: lodash.__, values: lodash.List<T2>, array: lodash.List<T1>): LodashPullAllWith4x6<T1, T2>;
3433 <T1, T2>(comparator: lodash.Comparator2<T1, T2>, values: lodash.List<T2>, array: lodash.List<T1>): lodash.List<T1>;
3434 }
3435 interface LodashPullAllWith1x1<T> {
3436 (values: lodash.List<T>): LodashPullAllWith1x3<T>;
3437 (values: lodash.__, array: ReadonlyArray<T>): LodashPullAllWith1x5<T>;
3438 (values: lodash.List<T>, array: ReadonlyArray<T>): T[];
3439 (values: lodash.__, array: lodash.List<T>): LodashPullAllWith2x5<T>;
3440 (values: lodash.List<T>, array: lodash.List<T>): lodash.List<T>;
3441 }
3442 interface LodashPullAllWith1x2<T> {
3443 (comparator: lodash.Comparator<T>): LodashPullAllWith1x3<T>;
3444 (comparator: lodash.__, array: ReadonlyArray<T>): LodashPullAllWith1x6<T>;
3445 (comparator: lodash.Comparator<T>, array: ReadonlyArray<T>): T[];
3446 (comparator: lodash.__, array: lodash.List<T>): LodashPullAllWith2x6<T>;
3447 (comparator: lodash.Comparator<T>, array: lodash.List<T>): lodash.List<T>;
3448 }
3449 interface LodashPullAllWith1x3<T> {
3450 (array: ReadonlyArray<T>): T[];
3451 (array: lodash.List<T>): lodash.List<T>;
3452 }
3453 interface LodashPullAllWith1x4<T> {
3454 (comparator: lodash.Comparator<T>): LodashPullAllWith1x5<T>;
3455 (comparator: lodash.__, values: lodash.List<T>): LodashPullAllWith1x6<T>;
3456 (comparator: lodash.Comparator<T>, values: lodash.List<T>): T[];
3457 }
3458 type LodashPullAllWith1x5<T> = (values: lodash.List<T>) => T[];
3459 type LodashPullAllWith1x6<T> = (comparator: lodash.Comparator<T>) => T[];
3460 interface LodashPullAllWith2x4<T> {
3461 (comparator: lodash.Comparator<T>): LodashPullAllWith2x5<T>;
3462 (comparator: lodash.__, values: lodash.List<T>): LodashPullAllWith2x6<T>;
3463 (comparator: lodash.Comparator<T>, values: lodash.List<T>): lodash.List<T>;
3464 }
3465 type LodashPullAllWith2x5<T> = (values: lodash.List<T>) => lodash.List<T>;
3466 type LodashPullAllWith2x6<T> = (comparator: lodash.Comparator<T>) => lodash.List<T>;
3467 interface LodashPullAllWith3x1<T1, T2> {
3468 (values: lodash.List<T2>): LodashPullAllWith3x3<T1>;
3469 (values: lodash.__, array: ReadonlyArray<T1>): LodashPullAllWith3x5<T1, T2>;
3470 (values: lodash.List<T2>, array: ReadonlyArray<T1>): T1[];
3471 (values: lodash.__, array: lodash.List<T1>): LodashPullAllWith4x5<T1, T2>;
3472 (values: lodash.List<T2>, array: lodash.List<T1>): lodash.List<T1>;
3473 }
3474 interface LodashPullAllWith3x2<T2> {
3475 <T1>(comparator: lodash.Comparator2<T1, T2>): LodashPullAllWith3x3<T1>;
3476 <T1>(comparator: lodash.__, array: ReadonlyArray<T1>): LodashPullAllWith3x6<T1, T2>;
3477 <T1>(comparator: lodash.Comparator2<T1, T2>, array: ReadonlyArray<T1>): T1[];
3478 <T1>(comparator: lodash.__, array: lodash.List<T1>): LodashPullAllWith4x6<T1, T2>;
3479 <T1>(comparator: lodash.Comparator2<T1, T2>, array: lodash.List<T1>): lodash.List<T1>;
3480 }
3481 interface LodashPullAllWith3x3<T1> {
3482 (array: ReadonlyArray<T1>): T1[];
3483 (array: lodash.List<T1>): lodash.List<T1>;
3484 }
3485 interface LodashPullAllWith3x4<T1> {
3486 <T2>(comparator: lodash.Comparator2<T1, T2>): LodashPullAllWith3x5<T1, T2>;
3487 <T2>(comparator: lodash.__, values: lodash.List<T2>): LodashPullAllWith3x6<T1, T2>;
3488 <T2>(comparator: lodash.Comparator2<T1, T2>, values: lodash.List<T2>): T1[];
3489 }
3490 type LodashPullAllWith3x5<T1, T2> = (values: lodash.List<T2>) => T1[];
3491 type LodashPullAllWith3x6<T1, T2> = (comparator: lodash.Comparator2<T1, T2>) => T1[];
3492 interface LodashPullAllWith4x4<T1> {
3493 <T2>(comparator: lodash.Comparator2<T1, T2>): LodashPullAllWith4x5<T1, T2>;
3494 <T2>(comparator: lodash.__, values: lodash.List<T2>): LodashPullAllWith4x6<T1, T2>;
3495 <T2>(comparator: lodash.Comparator2<T1, T2>, values: lodash.List<T2>): lodash.List<T1>;
3496 }
3497 type LodashPullAllWith4x5<T1, T2> = (values: lodash.List<T2>) => lodash.List<T1>;
3498 type LodashPullAllWith4x6<T1, T2> = (comparator: lodash.Comparator2<T1, T2>) => lodash.List<T1>;
3499 interface LodashPullAt {
3500 (indexes: lodash.Many<number>): LodashPullAt1x1;
3501 <T>(indexes: lodash.__, array: ReadonlyArray<T>): LodashPullAt1x2<T>;
3502 <T>(indexes: lodash.Many<number>, array: ReadonlyArray<T>): T[];
3503 <T>(indexes: lodash.__, array: lodash.List<T>): LodashPullAt2x2<T>;
3504 <T>(indexes: lodash.Many<number>, array: lodash.List<T>): lodash.List<T>;
3505 }
3506 interface LodashPullAt1x1 {
3507 <T>(array: ReadonlyArray<T>): T[];
3508 <T>(array: lodash.List<T>): lodash.List<T>;
3509 }
3510 type LodashPullAt1x2<T> = (indexes: lodash.Many<number>) => T[];
3511 type LodashPullAt2x2<T> = (indexes: lodash.Many<number>) => lodash.List<T>;
3512 interface LodashRandom {
3513 (maxOrMin: number): LodashRandom1x1;
3514 (max: lodash.__, floating: boolean): LodashRandom1x2;
3515 (maxOrMin: number, floatingOrMax: boolean | number): number;
3516 (min: lodash.__, max: number): LodashRandom2x2;
3517 }
3518 type LodashRandom1x1 = (floatingOrMax: boolean | number) => number;
3519 type LodashRandom1x2 = (max: number) => number;
3520 type LodashRandom2x2 = (min: number) => number;
3521 interface LodashRange {
3522 (start: number): LodashRange1x1;
3523 (start: lodash.__, end: number): LodashRange1x2;
3524 (start: number, end: number): number[];
3525 }
3526 type LodashRange1x1 = (end: number) => number[];
3527 type LodashRange1x2 = (start: number) => number[];
3528 interface LodashRangeRight {
3529 (start: number): LodashRangeRight1x1;
3530 (start: lodash.__, end: number): LodashRangeRight1x2;
3531 (start: number, end: number): number[];
3532 }
3533 type LodashRangeRight1x1 = (end: number) => number[];
3534 type LodashRangeRight1x2 = (start: number) => number[];
3535 interface LodashRangeStep {
3536 (start: number): LodashRangeStep1x1;
3537 (start: lodash.__, end: number): LodashRangeStep1x2;
3538 (start: number, end: number): LodashRangeStep1x3;
3539 (start: lodash.__, end: lodash.__, step: number): LodashRangeStep1x4;
3540 (start: number, end: lodash.__, step: number): LodashRangeStep1x5;
3541 (start: lodash.__, end: number, step: number): LodashRangeStep1x6;
3542 (start: number, end: number, step: number): number[];
3543 }
3544 interface LodashRangeStep1x1 {
3545 (end: number): LodashRangeStep1x3;
3546 (end: lodash.__, step: number): LodashRangeStep1x5;
3547 (end: number, step: number): number[];
3548 }
3549 interface LodashRangeStep1x2 {
3550 (start: number): LodashRangeStep1x3;
3551 (start: lodash.__, step: number): LodashRangeStep1x6;
3552 (start: number, step: number): number[];
3553 }
3554 type LodashRangeStep1x3 = (step: number) => number[];
3555 interface LodashRangeStep1x4 {
3556 (start: number): LodashRangeStep1x5;
3557 (start: lodash.__, end: number): LodashRangeStep1x6;
3558 (start: number, end: number): number[];
3559 }
3560 type LodashRangeStep1x5 = (end: number) => number[];
3561 type LodashRangeStep1x6 = (start: number) => number[];
3562 interface LodashRangeStepRight {
3563 (start: number): LodashRangeStepRight1x1;
3564 (start: lodash.__, end: number): LodashRangeStepRight1x2;
3565 (start: number, end: number): LodashRangeStepRight1x3;
3566 (start: lodash.__, end: lodash.__, step: number): LodashRangeStepRight1x4;
3567 (start: number, end: lodash.__, step: number): LodashRangeStepRight1x5;
3568 (start: lodash.__, end: number, step: number): LodashRangeStepRight1x6;
3569 (start: number, end: number, step: number): number[];
3570 }
3571 interface LodashRangeStepRight1x1 {
3572 (end: number): LodashRangeStepRight1x3;
3573 (end: lodash.__, step: number): LodashRangeStepRight1x5;
3574 (end: number, step: number): number[];
3575 }
3576 interface LodashRangeStepRight1x2 {
3577 (start: number): LodashRangeStepRight1x3;
3578 (start: lodash.__, step: number): LodashRangeStepRight1x6;
3579 (start: number, step: number): number[];
3580 }
3581 type LodashRangeStepRight1x3 = (step: number) => number[];
3582 interface LodashRangeStepRight1x4 {
3583 (start: number): LodashRangeStepRight1x5;
3584 (start: lodash.__, end: number): LodashRangeStepRight1x6;
3585 (start: number, end: number): number[];
3586 }
3587 type LodashRangeStepRight1x5 = (end: number) => number[];
3588 type LodashRangeStepRight1x6 = (start: number) => number[];
3589 interface LodashRearg {
3590 (indexes: lodash.Many<number>): LodashRearg1x1;
3591 (indexes: lodash.__, func: (...args: any[]) => any): LodashRearg1x2;
3592 (indexes: lodash.Many<number>, func: (...args: any[]) => any): (...args: any[]) => any;
3593 }
3594 type LodashRearg1x1 = (func: (...args: any[]) => any) => (...args: any[]) => any;
3595 type LodashRearg1x2 = (indexes: lodash.Many<number>) => (...args: any[]) => any;
3596 interface LodashReduce {
3597 <T, TResult>(callback: lodash.MemoIteratorCapped<T, TResult>): LodashReduce1x1<T, TResult>;
3598 <TResult>(callback: lodash.__, accumulator: TResult): LodashReduce1x2<TResult>;
3599 <T, TResult>(callback: lodash.MemoIteratorCapped<T, TResult>, accumulator: TResult): LodashReduce1x3<T, TResult>;
3600 <T>(callback: lodash.__, accumulator: lodash.__, collection: T[] | null | undefined): LodashReduce1x4<T>;
3601 <T, TResult>(callback: lodash.MemoIteratorCapped<T, TResult>, accumulator: lodash.__, collection: T[] | null | undefined): LodashReduce1x5<TResult>;
3602 <T, TResult>(callback: lodash.__, accumulator: TResult, collection: T[] | null | undefined): LodashReduce1x6<T, TResult>;
3603 <T, TResult>(callback: lodash.MemoIteratorCapped<T, TResult>, accumulator: TResult, collection: T[] | lodash.List<T> | null | undefined): TResult;
3604 <T>(callback: lodash.__, accumulator: lodash.__, collection: lodash.List<T> | null | undefined): LodashReduce2x4<T>;
3605 <T, TResult>(callback: lodash.MemoIteratorCapped<T, TResult>, accumulator: lodash.__, collection: lodash.List<T> | null | undefined): LodashReduce2x5<TResult>;
3606 <T, TResult>(callback: lodash.__, accumulator: TResult, collection: lodash.List<T> | null | undefined): LodashReduce2x6<T, TResult>;
3607 <T extends object, TResult>(callback: lodash.MemoIteratorCapped<T[keyof T], TResult>): LodashReduce3x1<T, TResult>;
3608 <T extends object, TResult>(callback: lodash.MemoIteratorCapped<T[keyof T], TResult>, accumulator: TResult): LodashReduce3x3<T, TResult>;
3609 <T extends object>(callback: lodash.__, accumulator: lodash.__, collection: T | null | undefined): LodashReduce3x4<T>;
3610 <T extends object, TResult>(callback: lodash.MemoIteratorCapped<T[keyof T], TResult>, accumulator: lodash.__, collection: T | null | undefined): LodashReduce3x5<TResult>;
3611 <T extends object, TResult>(callback: lodash.__, accumulator: TResult, collection: T | null | undefined): LodashReduce3x6<T, TResult>;
3612 <T extends object, TResult>(callback: lodash.MemoIteratorCapped<T[keyof T], TResult>, accumulator: TResult, collection: T | null | undefined): TResult;
3613 }
3614 interface LodashReduce1x1<T, TResult> {
3615 (accumulator: TResult): LodashReduce1x3<T, TResult>;
3616 (accumulator: lodash.__, collection: T[] | null | undefined): LodashReduce1x5<TResult>;
3617 (accumulator: TResult, collection: T[] | lodash.List<T> | null | undefined): TResult;
3618 (accumulator: lodash.__, collection: lodash.List<T> | null | undefined): LodashReduce2x5<TResult>;
3619 }
3620 interface LodashReduce1x2<TResult> {
3621 <T>(callback: lodash.MemoIteratorCapped<T, TResult>): LodashReduce1x3<T, TResult>;
3622 <T>(callback: lodash.__, collection: T[] | null | undefined): LodashReduce1x6<T, TResult>;
3623 <T>(callback: lodash.MemoIteratorCapped<T, TResult>, collection: T[] | lodash.List<T> | null | undefined): TResult;
3624 <T>(callback: lodash.__, collection: lodash.List<T> | null | undefined): LodashReduce2x6<T, TResult>;
3625 <T extends object>(callback: lodash.MemoIteratorCapped<T[keyof T], TResult>): LodashReduce3x3<T, TResult>;
3626 <T extends object>(callback: lodash.__, collection: T | null | undefined): LodashReduce3x6<T, TResult>;
3627 <T extends object>(callback: lodash.MemoIteratorCapped<T[keyof T], TResult>, collection: T | null | undefined): TResult;
3628 }
3629 type LodashReduce1x3<T, TResult> = (collection: T[] | lodash.List<T> | null | undefined) => TResult;
3630 interface LodashReduce1x4<T> {
3631 <TResult>(callback: lodash.MemoIteratorCapped<T, TResult>): LodashReduce1x5<TResult>;
3632 <TResult>(callback: lodash.__, accumulator: TResult): LodashReduce1x6<T, TResult>;
3633 <TResult>(callback: lodash.MemoIteratorCapped<T, TResult>, accumulator: TResult): TResult;
3634 }
3635 type LodashReduce1x5<TResult> = (accumulator: TResult) => TResult;
3636 type LodashReduce1x6<T, TResult> = (callback: lodash.MemoIteratorCapped<T, TResult>) => TResult;
3637 interface LodashReduce2x4<T> {
3638 <TResult>(callback: lodash.MemoIteratorCapped<T, TResult>): LodashReduce2x5<TResult>;
3639 <TResult>(callback: lodash.__, accumulator: TResult): LodashReduce2x6<T, TResult>;
3640 <TResult>(callback: lodash.MemoIteratorCapped<T, TResult>, accumulator: TResult): TResult;
3641 }
3642 type LodashReduce2x5<TResult> = (accumulator: TResult) => TResult;
3643 type LodashReduce2x6<T, TResult> = (callback: lodash.MemoIteratorCapped<T, TResult>) => TResult;
3644 interface LodashReduce3x1<T, TResult> {
3645 (accumulator: TResult): LodashReduce3x3<T, TResult>;
3646 (accumulator: lodash.__, collection: T | null | undefined): LodashReduce3x5<TResult>;
3647 (accumulator: TResult, collection: T | null | undefined): TResult;
3648 }
3649 type LodashReduce3x3<T, TResult> = (collection: T | null | undefined) => TResult;
3650 interface LodashReduce3x4<T> {
3651 <TResult>(callback: lodash.MemoIteratorCapped<T[keyof T], TResult>): LodashReduce3x5<TResult>;
3652 <TResult>(callback: lodash.__, accumulator: TResult): LodashReduce3x6<T, TResult>;
3653 <TResult>(callback: lodash.MemoIteratorCapped<T[keyof T], TResult>, accumulator: TResult): TResult;
3654 }
3655 type LodashReduce3x5<TResult> = (accumulator: TResult) => TResult;
3656 type LodashReduce3x6<T, TResult> = (callback: lodash.MemoIteratorCapped<T[keyof T], TResult>) => TResult;
3657 interface LodashReduceRight {
3658 <T, TResult>(callback: lodash.MemoIteratorCappedRight<T, TResult>): LodashReduceRight1x1<T, TResult>;
3659 <TResult>(callback: lodash.__, accumulator: TResult): LodashReduceRight1x2<TResult>;
3660 <T, TResult>(callback: lodash.MemoIteratorCappedRight<T, TResult>, accumulator: TResult): LodashReduceRight1x3<T, TResult>;
3661 <T>(callback: lodash.__, accumulator: lodash.__, collection: T[] | null | undefined): LodashReduceRight1x4<T>;
3662 <T, TResult>(callback: lodash.MemoIteratorCappedRight<T, TResult>, accumulator: lodash.__, collection: T[] | null | undefined): LodashReduceRight1x5<TResult>;
3663 <T, TResult>(callback: lodash.__, accumulator: TResult, collection: T[] | null | undefined): LodashReduceRight1x6<T, TResult>;
3664 <T, TResult>(callback: lodash.MemoIteratorCappedRight<T, TResult>, accumulator: TResult, collection: T[] | lodash.List<T> | null | undefined): TResult;
3665 <T>(callback: lodash.__, accumulator: lodash.__, collection: lodash.List<T> | null | undefined): LodashReduceRight2x4<T>;
3666 <T, TResult>(callback: lodash.MemoIteratorCappedRight<T, TResult>, accumulator: lodash.__, collection: lodash.List<T> | null | undefined): LodashReduceRight2x5<TResult>;
3667 <T, TResult>(callback: lodash.__, accumulator: TResult, collection: lodash.List<T> | null | undefined): LodashReduceRight2x6<T, TResult>;
3668 <T extends object, TResult>(callback: lodash.MemoIteratorCappedRight<T[keyof T], TResult>): LodashReduceRight3x1<T, TResult>;
3669 <T extends object, TResult>(callback: lodash.MemoIteratorCappedRight<T[keyof T], TResult>, accumulator: TResult): LodashReduceRight3x3<T, TResult>;
3670 <T extends object>(callback: lodash.__, accumulator: lodash.__, collection: T | null | undefined): LodashReduceRight3x4<T>;
3671 <T extends object, TResult>(callback: lodash.MemoIteratorCappedRight<T[keyof T], TResult>, accumulator: lodash.__, collection: T | null | undefined): LodashReduceRight3x5<TResult>;
3672 <T extends object, TResult>(callback: lodash.__, accumulator: TResult, collection: T | null | undefined): LodashReduceRight3x6<T, TResult>;
3673 <T extends object, TResult>(callback: lodash.MemoIteratorCappedRight<T[keyof T], TResult>, accumulator: TResult, collection: T | null | undefined): TResult;
3674 }
3675 interface LodashReduceRight1x1<T, TResult> {
3676 (accumulator: TResult): LodashReduceRight1x3<T, TResult>;
3677 (accumulator: lodash.__, collection: T[] | null | undefined): LodashReduceRight1x5<TResult>;
3678 (accumulator: TResult, collection: T[] | lodash.List<T> | null | undefined): TResult;
3679 (accumulator: lodash.__, collection: lodash.List<T> | null | undefined): LodashReduceRight2x5<TResult>;
3680 }
3681 interface LodashReduceRight1x2<TResult> {
3682 <T>(callback: lodash.MemoIteratorCappedRight<T, TResult>): LodashReduceRight1x3<T, TResult>;
3683 <T>(callback: lodash.__, collection: T[] | null | undefined): LodashReduceRight1x6<T, TResult>;
3684 <T>(callback: lodash.MemoIteratorCappedRight<T, TResult>, collection: T[] | lodash.List<T> | null | undefined): TResult;
3685 <T>(callback: lodash.__, collection: lodash.List<T> | null | undefined): LodashReduceRight2x6<T, TResult>;
3686 <T extends object>(callback: lodash.MemoIteratorCappedRight<T[keyof T], TResult>): LodashReduceRight3x3<T, TResult>;
3687 <T extends object>(callback: lodash.__, collection: T | null | undefined): LodashReduceRight3x6<T, TResult>;
3688 <T extends object>(callback: lodash.MemoIteratorCappedRight<T[keyof T], TResult>, collection: T | null | undefined): TResult;
3689 }
3690 type LodashReduceRight1x3<T, TResult> = (collection: T[] | lodash.List<T> | null | undefined) => TResult;
3691 interface LodashReduceRight1x4<T> {
3692 <TResult>(callback: lodash.MemoIteratorCappedRight<T, TResult>): LodashReduceRight1x5<TResult>;
3693 <TResult>(callback: lodash.__, accumulator: TResult): LodashReduceRight1x6<T, TResult>;
3694 <TResult>(callback: lodash.MemoIteratorCappedRight<T, TResult>, accumulator: TResult): TResult;
3695 }
3696 type LodashReduceRight1x5<TResult> = (accumulator: TResult) => TResult;
3697 type LodashReduceRight1x6<T, TResult> = (callback: lodash.MemoIteratorCappedRight<T, TResult>) => TResult;
3698 interface LodashReduceRight2x4<T> {
3699 <TResult>(callback: lodash.MemoIteratorCappedRight<T, TResult>): LodashReduceRight2x5<TResult>;
3700 <TResult>(callback: lodash.__, accumulator: TResult): LodashReduceRight2x6<T, TResult>;
3701 <TResult>(callback: lodash.MemoIteratorCappedRight<T, TResult>, accumulator: TResult): TResult;
3702 }
3703 type LodashReduceRight2x5<TResult> = (accumulator: TResult) => TResult;
3704 type LodashReduceRight2x6<T, TResult> = (callback: lodash.MemoIteratorCappedRight<T, TResult>) => TResult;
3705 interface LodashReduceRight3x1<T, TResult> {
3706 (accumulator: TResult): LodashReduceRight3x3<T, TResult>;
3707 (accumulator: lodash.__, collection: T | null | undefined): LodashReduceRight3x5<TResult>;
3708 (accumulator: TResult, collection: T | null | undefined): TResult;
3709 }
3710 type LodashReduceRight3x3<T, TResult> = (collection: T | null | undefined) => TResult;
3711 interface LodashReduceRight3x4<T> {
3712 <TResult>(callback: lodash.MemoIteratorCappedRight<T[keyof T], TResult>): LodashReduceRight3x5<TResult>;
3713 <TResult>(callback: lodash.__, accumulator: TResult): LodashReduceRight3x6<T, TResult>;
3714 <TResult>(callback: lodash.MemoIteratorCappedRight<T[keyof T], TResult>, accumulator: TResult): TResult;
3715 }
3716 type LodashReduceRight3x5<TResult> = (accumulator: TResult) => TResult;
3717 type LodashReduceRight3x6<T, TResult> = (callback: lodash.MemoIteratorCappedRight<T[keyof T], TResult>) => TResult;
3718 interface LodashReject {
3719 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>): LodashReject1x1<T>;
3720 <T>(predicate: lodash.__, collection: lodash.List<T> | null | undefined): LodashReject1x2<T>;
3721 <T>(predicate: lodash.ValueIterateeCustom<T, boolean>, collection: lodash.List<T> | null | undefined): T[];
3722 <T extends object>(predicate: lodash.__, collection: T | null | undefined): LodashReject2x2<T>;
3723 <T extends object>(predicate: lodash.ValueIterateeCustom<T[keyof T], boolean>, collection: T | null | undefined): Array<T[keyof T]>;
3724 }
3725 type LodashReject1x1<T> = (collection: lodash.List<T> | object | null | undefined) => T[];
3726 type LodashReject1x2<T> = (predicate: lodash.ValueIterateeCustom<T, boolean>) => T[];
3727 type LodashReject2x2<T> = (predicate: lodash.ValueIterateeCustom<T[keyof T], boolean>) => Array<T[keyof T]>;
3728 interface LodashRemove {
3729 <T>(predicate: lodash.ValueIteratee<T>): LodashRemove1x1<T>;
3730 <T>(predicate: lodash.__, array: lodash.List<T>): LodashRemove1x2<T>;
3731 <T>(predicate: lodash.ValueIteratee<T>, array: lodash.List<T>): T[];
3732 }
3733 type LodashRemove1x1<T> = (array: lodash.List<T>) => T[];
3734 type LodashRemove1x2<T> = (predicate: lodash.ValueIteratee<T>) => T[];
3735 interface LodashRepeat {
3736 (n: number): LodashRepeat1x1;
3737 (n: lodash.__, string: string): LodashRepeat1x2;
3738 (n: number, string: string): string;
3739 }
3740 type LodashRepeat1x1 = (string: string) => string;
3741 type LodashRepeat1x2 = (n: number) => string;
3742 interface LodashReplace {
3743 (pattern: RegExp | string): LodashReplace1x1;
3744 (pattern: lodash.__, replacement: lodash.ReplaceFunction | string): LodashReplace1x2;
3745 (pattern: RegExp | string, replacement: lodash.ReplaceFunction | string): LodashReplace1x3;
3746 (pattern: lodash.__, replacement: lodash.__, string: string): LodashReplace1x4;
3747 (pattern: RegExp | string, replacement: lodash.__, string: string): LodashReplace1x5;
3748 (pattern: lodash.__, replacement: lodash.ReplaceFunction | string, string: string): LodashReplace1x6;
3749 (pattern: RegExp | string, replacement: lodash.ReplaceFunction | string, string: string): string;
3750 }
3751 interface LodashReplace1x1 {
3752 (replacement: lodash.ReplaceFunction | string): LodashReplace1x3;
3753 (replacement: lodash.__, string: string): LodashReplace1x5;
3754 (replacement: lodash.ReplaceFunction | string, string: string): string;
3755 }
3756 interface LodashReplace1x2 {
3757 (pattern: RegExp | string): LodashReplace1x3;
3758 (pattern: lodash.__, string: string): LodashReplace1x6;
3759 (pattern: RegExp | string, string: string): string;
3760 }
3761 type LodashReplace1x3 = (string: string) => string;
3762 interface LodashReplace1x4 {
3763 (pattern: RegExp | string): LodashReplace1x5;
3764 (pattern: lodash.__, replacement: lodash.ReplaceFunction | string): LodashReplace1x6;
3765 (pattern: RegExp | string, replacement: lodash.ReplaceFunction | string): string;
3766 }
3767 type LodashReplace1x5 = (replacement: lodash.ReplaceFunction | string) => string;
3768 type LodashReplace1x6 = (pattern: RegExp | string) => string;
3769 type LodashRest = (func: (...args: any[]) => any) => (...args: any[]) => any;
3770 interface LodashRestFrom {
3771 (start: number): LodashRestFrom1x1;
3772 (start: lodash.__, func: (...args: any[]) => any): LodashRestFrom1x2;
3773 (start: number, func: (...args: any[]) => any): (...args: any[]) => any;
3774 }
3775 type LodashRestFrom1x1 = (func: (...args: any[]) => any) => (...args: any[]) => any;
3776 type LodashRestFrom1x2 = (start: number) => (...args: any[]) => any;
3777 interface LodashResult {
3778 (path: lodash.PropertyPath): LodashResult1x1;
3779 (path: lodash.__, object: any): LodashResult1x2;
3780 <TResult>(path: lodash.PropertyPath, object: any): TResult;
3781 }
3782 type LodashResult1x1 = <TResult>(object: any) => TResult;
3783 type LodashResult1x2 = <TResult>(path: lodash.PropertyPath) => TResult;
3784 type LodashReverse = <TList extends lodash.List<any>>(array: TList) => TList;
3785 type LodashRound = (n: number) => number;
3786 type LodashRunInContext = (context: object) => lodash.LoDashStatic;
3787 interface LodashSample {
3788 <T>(collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): T | undefined;
3789 <T extends object>(collection: T | null | undefined): T[keyof T] | undefined;
3790 }
3791 interface LodashSampleSize {
3792 (n: number): LodashSampleSize1x1;
3793 <T>(n: lodash.__, collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): LodashSampleSize1x2<T>;
3794 <T>(n: number, collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): T[];
3795 <T extends object>(n: lodash.__, collection: T | null | undefined): LodashSampleSize2x2<T>;
3796 <T extends object>(n: number, collection: T | null | undefined): Array<T[keyof T]>;
3797 }
3798 interface LodashSampleSize1x1 {
3799 <T>(collection: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): T[];
3800 <T extends object>(collection: T | null | undefined): Array<T[keyof T]>;
3801 }
3802 type LodashSampleSize1x2<T> = (n: number) => T[];
3803 type LodashSampleSize2x2<T> = (n: number) => Array<T[keyof T]>;
3804 interface LodashSetWith {
3805 <T extends object>(customizer: lodash.SetWithCustomizer<T>): LodashSetWith1x1<T>;
3806 (customizer: lodash.__, path: lodash.PropertyPath): LodashSetWith1x2;
3807 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath): LodashSetWith1x3<T>;
3808 (customizer: lodash.__, path: lodash.__, value: any): LodashSetWith1x4;
3809 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.__, value: any): LodashSetWith1x5<T>;
3810 (customizer: lodash.__, path: lodash.PropertyPath, value: any): LodashSetWith1x6;
3811 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath, value: any): LodashSetWith1x7<T>;
3812 <T extends object>(customizer: lodash.__, path: lodash.__, value: lodash.__, object: T): LodashSetWith1x8<T>;
3813 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.__, value: lodash.__, object: T): LodashSetWith1x9<T>;
3814 <T extends object>(customizer: lodash.__, path: lodash.PropertyPath, value: lodash.__, object: T): LodashSetWith1x10<T>;
3815 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath, value: lodash.__, object: T): LodashSetWith1x11<T>;
3816 <T extends object>(customizer: lodash.__, path: lodash.__, value: any, object: T): LodashSetWith1x12<T>;
3817 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.__, value: any, object: T): LodashSetWith1x13<T>;
3818 <T extends object>(customizer: lodash.__, path: lodash.PropertyPath, value: any, object: T): LodashSetWith1x14<T>;
3819 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath, value: any, object: T): T;
3820 }
3821 interface LodashSetWith1x1<T> {
3822 (path: lodash.PropertyPath): LodashSetWith1x3<T>;
3823 (path: lodash.__, value: any): LodashSetWith1x5<T>;
3824 (path: lodash.PropertyPath, value: any): LodashSetWith1x7<T>;
3825 (path: lodash.__, value: lodash.__, object: T): LodashSetWith1x9<T>;
3826 (path: lodash.PropertyPath, value: lodash.__, object: T): LodashSetWith1x11<T>;
3827 (path: lodash.__, value: any, object: T): LodashSetWith1x13<T>;
3828 (path: lodash.PropertyPath, value: any, object: T): T;
3829 }
3830 interface LodashSetWith1x2 {
3831 <T extends object>(customizer: lodash.SetWithCustomizer<T>): LodashSetWith1x3<T>;
3832 (customizer: lodash.__, value: any): LodashSetWith1x6;
3833 <T extends object>(customizer: lodash.SetWithCustomizer<T>, value: any): LodashSetWith1x7<T>;
3834 <T extends object>(customizer: lodash.__, value: lodash.__, object: T): LodashSetWith1x10<T>;
3835 <T extends object>(customizer: lodash.SetWithCustomizer<T>, value: lodash.__, object: T): LodashSetWith1x11<T>;
3836 <T extends object>(customizer: lodash.__, value: any, object: T): LodashSetWith1x14<T>;
3837 <T extends object>(customizer: lodash.SetWithCustomizer<T>, value: any, object: T): T;
3838 }
3839 interface LodashSetWith1x3<T> {
3840 (value: any): LodashSetWith1x7<T>;
3841 (value: lodash.__, object: T): LodashSetWith1x11<T>;
3842 (value: any, object: T): T;
3843 }
3844 interface LodashSetWith1x4 {
3845 <T extends object>(customizer: lodash.SetWithCustomizer<T>): LodashSetWith1x5<T>;
3846 (customizer: lodash.__, path: lodash.PropertyPath): LodashSetWith1x6;
3847 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath): LodashSetWith1x7<T>;
3848 <T extends object>(customizer: lodash.__, path: lodash.__, object: T): LodashSetWith1x12<T>;
3849 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.__, object: T): LodashSetWith1x13<T>;
3850 <T extends object>(customizer: lodash.__, path: lodash.PropertyPath, object: T): LodashSetWith1x14<T>;
3851 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath, object: T): T;
3852 }
3853 interface LodashSetWith1x5<T> {
3854 (path: lodash.PropertyPath): LodashSetWith1x7<T>;
3855 (path: lodash.__, object: T): LodashSetWith1x13<T>;
3856 (path: lodash.PropertyPath, object: T): T;
3857 }
3858 interface LodashSetWith1x6 {
3859 <T extends object>(customizer: lodash.SetWithCustomizer<T>): LodashSetWith1x7<T>;
3860 <T extends object>(customizer: lodash.__, object: T): LodashSetWith1x14<T>;
3861 <T extends object>(customizer: lodash.SetWithCustomizer<T>, object: T): T;
3862 }
3863 type LodashSetWith1x7<T> = (object: T) => T;
3864 interface LodashSetWith1x8<T> {
3865 (customizer: lodash.SetWithCustomizer<T>): LodashSetWith1x9<T>;
3866 (customizer: lodash.__, path: lodash.PropertyPath): LodashSetWith1x10<T>;
3867 (customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath): LodashSetWith1x11<T>;
3868 (customizer: lodash.__, path: lodash.__, value: any): LodashSetWith1x12<T>;
3869 (customizer: lodash.SetWithCustomizer<T>, path: lodash.__, value: any): LodashSetWith1x13<T>;
3870 (customizer: lodash.__, path: lodash.PropertyPath, value: any): LodashSetWith1x14<T>;
3871 (customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath, value: any): T;
3872 }
3873 interface LodashSetWith1x9<T> {
3874 (path: lodash.PropertyPath): LodashSetWith1x11<T>;
3875 (path: lodash.__, value: any): LodashSetWith1x13<T>;
3876 (path: lodash.PropertyPath, value: any): T;
3877 }
3878 interface LodashSetWith1x10<T> {
3879 (customizer: lodash.SetWithCustomizer<T>): LodashSetWith1x11<T>;
3880 (customizer: lodash.__, value: any): LodashSetWith1x14<T>;
3881 (customizer: lodash.SetWithCustomizer<T>, value: any): T;
3882 }
3883 type LodashSetWith1x11<T> = (value: any) => T;
3884 interface LodashSetWith1x12<T> {
3885 (customizer: lodash.SetWithCustomizer<T>): LodashSetWith1x13<T>;
3886 (customizer: lodash.__, path: lodash.PropertyPath): LodashSetWith1x14<T>;
3887 (customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath): T;
3888 }
3889 type LodashSetWith1x13<T> = (path: lodash.PropertyPath) => T;
3890 type LodashSetWith1x14<T> = (customizer: lodash.SetWithCustomizer<T>) => T;
3891 interface LodashShuffle {
3892 <T>(collection: lodash.List<T> | null | undefined): T[];
3893 <T extends object>(collection: T | null | undefined): Array<T[keyof T]>;
3894 }
3895 type LodashSize = (collection: object | string | null | undefined) => number;
3896 interface LodashSlice {
3897 (start: number): LodashSlice1x1;
3898 (start: lodash.__, end: number): LodashSlice1x2;
3899 (start: number, end: number): LodashSlice1x3;
3900 <T>(start: lodash.__, end: lodash.__, array: lodash.List<T> | null | undefined): LodashSlice1x4<T>;
3901 <T>(start: number, end: lodash.__, array: lodash.List<T> | null | undefined): LodashSlice1x5<T>;
3902 <T>(start: lodash.__, end: number, array: lodash.List<T> | null | undefined): LodashSlice1x6<T>;
3903 <T>(start: number, end: number, array: lodash.List<T> | null | undefined): T[];
3904 }
3905 interface LodashSlice1x1 {
3906 (end: number): LodashSlice1x3;
3907 <T>(end: lodash.__, array: lodash.List<T> | null | undefined): LodashSlice1x5<T>;
3908 <T>(end: number, array: lodash.List<T> | null | undefined): T[];
3909 }
3910 interface LodashSlice1x2 {
3911 (start: number): LodashSlice1x3;
3912 <T>(start: lodash.__, array: lodash.List<T> | null | undefined): LodashSlice1x6<T>;
3913 <T>(start: number, array: lodash.List<T> | null | undefined): T[];
3914 }
3915 type LodashSlice1x3 = <T>(array: lodash.List<T> | null | undefined) => T[];
3916 interface LodashSlice1x4<T> {
3917 (start: number): LodashSlice1x5<T>;
3918 (start: lodash.__, end: number): LodashSlice1x6<T>;
3919 (start: number, end: number): T[];
3920 }
3921 type LodashSlice1x5<T> = (end: number) => T[];
3922 type LodashSlice1x6<T> = (start: number) => T[];
3923 type LodashSnakeCase = (string: string) => string;
3924 interface LodashSortBy {
3925 <T>(iteratees: lodash.Many<lodash.ValueIteratee<T>>): LodashSortBy1x1<T>;
3926 <T>(iteratees: lodash.__, collection: lodash.List<T> | null | undefined): LodashSortBy1x2<T>;
3927 <T>(iteratees: lodash.Many<lodash.ValueIteratee<T>>, collection: lodash.List<T> | null | undefined): T[];
3928 <T extends object>(iteratees: lodash.__, collection: T | null | undefined): LodashSortBy2x2<T>;
3929 <T extends object>(iteratees: lodash.Many<lodash.ValueIteratee<T[keyof T]>>, collection: T | null | undefined): Array<T[keyof T]>;
3930 }
3931 type LodashSortBy1x1<T> = (collection: lodash.List<T> | object | null | undefined) => T[];
3932 type LodashSortBy1x2<T> = (iteratees: lodash.Many<lodash.ValueIteratee<T>>) => T[];
3933 type LodashSortBy2x2<T> = (iteratees: lodash.Many<lodash.ValueIteratee<T[keyof T]>>) => Array<T[keyof T]>;
3934 interface LodashSortedIndex {
3935 <T>(value: T): LodashSortedIndex1x1<T>;
3936 <T>(value: lodash.__, array: lodash.List<T> | null | undefined): LodashSortedIndex1x2<T>;
3937 <T>(value: T, array: lodash.List<T> | null | undefined): number;
3938 }
3939 type LodashSortedIndex1x1<T> = (array: lodash.List<T> | null | undefined) => number;
3940 type LodashSortedIndex1x2<T> = (value: T) => number;
3941 interface LodashSortedIndexBy {
3942 <T>(iteratee: lodash.ValueIteratee<T>): LodashSortedIndexBy1x1<T>;
3943 <T>(iteratee: lodash.__, value: T): LodashSortedIndexBy1x2<T>;
3944 <T>(iteratee: lodash.ValueIteratee<T>, value: T): LodashSortedIndexBy1x3<T>;
3945 <T>(iteratee: lodash.__, value: lodash.__, array: lodash.List<T> | null | undefined): LodashSortedIndexBy1x4<T>;
3946 <T>(iteratee: lodash.ValueIteratee<T>, value: lodash.__, array: lodash.List<T> | null | undefined): LodashSortedIndexBy1x5<T>;
3947 <T>(iteratee: lodash.__, value: T, array: lodash.List<T> | null | undefined): LodashSortedIndexBy1x6<T>;
3948 <T>(iteratee: lodash.ValueIteratee<T>, value: T, array: lodash.List<T> | null | undefined): number;
3949 }
3950 interface LodashSortedIndexBy1x1<T> {
3951 (value: T): LodashSortedIndexBy1x3<T>;
3952 (value: lodash.__, array: lodash.List<T> | null | undefined): LodashSortedIndexBy1x5<T>;
3953 (value: T, array: lodash.List<T> | null | undefined): number;
3954 }
3955 interface LodashSortedIndexBy1x2<T> {
3956 (iteratee: lodash.ValueIteratee<T>): LodashSortedIndexBy1x3<T>;
3957 (iteratee: lodash.__, array: lodash.List<T> | null | undefined): LodashSortedIndexBy1x6<T>;
3958 (iteratee: lodash.ValueIteratee<T>, array: lodash.List<T> | null | undefined): number;
3959 }
3960 type LodashSortedIndexBy1x3<T> = (array: lodash.List<T> | null | undefined) => number;
3961 interface LodashSortedIndexBy1x4<T> {
3962 (iteratee: lodash.ValueIteratee<T>): LodashSortedIndexBy1x5<T>;
3963 (iteratee: lodash.__, value: T): LodashSortedIndexBy1x6<T>;
3964 (iteratee: lodash.ValueIteratee<T>, value: T): number;
3965 }
3966 type LodashSortedIndexBy1x5<T> = (value: T) => number;
3967 type LodashSortedIndexBy1x6<T> = (iteratee: lodash.ValueIteratee<T>) => number;
3968 interface LodashSortedIndexOf {
3969 <T>(value: T): LodashSortedIndexOf1x1<T>;
3970 <T>(value: lodash.__, array: lodash.List<T> | null | undefined): LodashSortedIndexOf1x2<T>;
3971 <T>(value: T, array: lodash.List<T> | null | undefined): number;
3972 }
3973 type LodashSortedIndexOf1x1<T> = (array: lodash.List<T> | null | undefined) => number;
3974 type LodashSortedIndexOf1x2<T> = (value: T) => number;
3975 interface LodashSortedLastIndex {
3976 <T>(value: T): LodashSortedLastIndex1x1<T>;
3977 <T>(value: lodash.__, array: lodash.List<T> | null | undefined): LodashSortedLastIndex1x2<T>;
3978 <T>(value: T, array: lodash.List<T> | null | undefined): number;
3979 }
3980 type LodashSortedLastIndex1x1<T> = (array: lodash.List<T> | null | undefined) => number;
3981 type LodashSortedLastIndex1x2<T> = (value: T) => number;
3982 interface LodashSortedLastIndexBy {
3983 <T>(iteratee: lodash.ValueIteratee<T>): LodashSortedLastIndexBy1x1<T>;
3984 <T>(iteratee: lodash.__, value: T): LodashSortedLastIndexBy1x2<T>;
3985 <T>(iteratee: lodash.ValueIteratee<T>, value: T): LodashSortedLastIndexBy1x3<T>;
3986 <T>(iteratee: lodash.__, value: lodash.__, array: lodash.List<T> | null | undefined): LodashSortedLastIndexBy1x4<T>;
3987 <T>(iteratee: lodash.ValueIteratee<T>, value: lodash.__, array: lodash.List<T> | null | undefined): LodashSortedLastIndexBy1x5<T>;
3988 <T>(iteratee: lodash.__, value: T, array: lodash.List<T> | null | undefined): LodashSortedLastIndexBy1x6<T>;
3989 <T>(iteratee: lodash.ValueIteratee<T>, value: T, array: lodash.List<T> | null | undefined): number;
3990 }
3991 interface LodashSortedLastIndexBy1x1<T> {
3992 (value: T): LodashSortedLastIndexBy1x3<T>;
3993 (value: lodash.__, array: lodash.List<T> | null | undefined): LodashSortedLastIndexBy1x5<T>;
3994 (value: T, array: lodash.List<T> | null | undefined): number;
3995 }
3996 interface LodashSortedLastIndexBy1x2<T> {
3997 (iteratee: lodash.ValueIteratee<T>): LodashSortedLastIndexBy1x3<T>;
3998 (iteratee: lodash.__, array: lodash.List<T> | null | undefined): LodashSortedLastIndexBy1x6<T>;
3999 (iteratee: lodash.ValueIteratee<T>, array: lodash.List<T> | null | undefined): number;
4000 }
4001 type LodashSortedLastIndexBy1x3<T> = (array: lodash.List<T> | null | undefined) => number;
4002 interface LodashSortedLastIndexBy1x4<T> {
4003 (iteratee: lodash.ValueIteratee<T>): LodashSortedLastIndexBy1x5<T>;
4004 (iteratee: lodash.__, value: T): LodashSortedLastIndexBy1x6<T>;
4005 (iteratee: lodash.ValueIteratee<T>, value: T): number;
4006 }
4007 type LodashSortedLastIndexBy1x5<T> = (value: T) => number;
4008 type LodashSortedLastIndexBy1x6<T> = (iteratee: lodash.ValueIteratee<T>) => number;
4009 interface LodashSortedLastIndexOf {
4010 <T>(value: T): LodashSortedLastIndexOf1x1<T>;
4011 <T>(value: lodash.__, array: lodash.List<T> | null | undefined): LodashSortedLastIndexOf1x2<T>;
4012 <T>(value: T, array: lodash.List<T> | null | undefined): number;
4013 }
4014 type LodashSortedLastIndexOf1x1<T> = (array: lodash.List<T> | null | undefined) => number;
4015 type LodashSortedLastIndexOf1x2<T> = (value: T) => number;
4016 type LodashSortedUniq = <T>(array: lodash.List<T> | null | undefined) => T[];
4017 interface LodashSortedUniqBy {
4018 <T>(iteratee: lodash.ValueIteratee<T>): LodashSortedUniqBy1x1<T>;
4019 <T>(iteratee: lodash.__, array: lodash.List<T> | null | undefined): LodashSortedUniqBy1x2<T>;
4020 <T>(iteratee: lodash.ValueIteratee<T>, array: lodash.List<T> | null | undefined): T[];
4021 }
4022 type LodashSortedUniqBy1x1<T> = (array: lodash.List<T> | null | undefined) => T[];
4023 type LodashSortedUniqBy1x2<T> = (iteratee: lodash.ValueIteratee<T>) => T[];
4024 interface LodashSplit {
4025 (separator: RegExp | string): LodashSplit1x1;
4026 (separator: lodash.__, string: string | null | undefined): LodashSplit1x2;
4027 (separator: RegExp | string, string: string | null | undefined): string[];
4028 }
4029 type LodashSplit1x1 = (string: string | null | undefined) => string[];
4030 type LodashSplit1x2 = (separator: RegExp | string) => string[];
4031 type LodashSpread = <TResult>(func: (...args: any[]) => TResult) => (...args: any[]) => TResult;
4032 interface LodashSpreadFrom {
4033 (start: number): LodashSpreadFrom1x1;
4034 <TResult>(start: lodash.__, func: (...args: any[]) => TResult): LodashSpreadFrom1x2<TResult>;
4035 <TResult>(start: number, func: (...args: any[]) => TResult): (...args: any[]) => TResult;
4036 }
4037 type LodashSpreadFrom1x1 = <TResult>(func: (...args: any[]) => TResult) => (...args: any[]) => TResult;
4038 type LodashSpreadFrom1x2<TResult> = (start: number) => (...args: any[]) => TResult;
4039 type LodashStartCase = (string: string) => string;
4040 interface LodashStartsWith {
4041 (target: string): LodashStartsWith1x1;
4042 (target: lodash.__, string: string): LodashStartsWith1x2;
4043 (target: string, string: string): boolean;
4044 }
4045 type LodashStartsWith1x1 = (string: string) => boolean;
4046 type LodashStartsWith1x2 = (target: string) => boolean;
4047 type LodashStubArray = () => any[];
4048 type LodashStubObject = () => any;
4049 type LodashStubString = () => string;
4050 type LodashStubTrue = () => true;
4051 interface LodashSubtract {
4052 (minuend: number): LodashSubtract1x1;
4053 (minuend: lodash.__, subtrahend: number): LodashSubtract1x2;
4054 (minuend: number, subtrahend: number): number;
4055 }
4056 type LodashSubtract1x1 = (subtrahend: number) => number;
4057 type LodashSubtract1x2 = (minuend: number) => number;
4058 type LodashSum = (collection: lodash.List<any> | null | undefined) => number;
4059 interface LodashSumBy {
4060 <T>(iteratee: ((value: T) => number) | string): LodashSumBy1x1<T>;
4061 <T>(iteratee: lodash.__, collection: lodash.List<T> | null | undefined): LodashSumBy1x2<T>;
4062 <T>(iteratee: ((value: T) => number) | string, collection: lodash.List<T> | null | undefined): number;
4063 }
4064 type LodashSumBy1x1<T> = (collection: lodash.List<T> | null | undefined) => number;
4065 type LodashSumBy1x2<T> = (iteratee: ((value: T) => number) | string) => number;
4066 interface LodashXor {
4067 <T>(arrays2: lodash.List<T> | null | undefined): LodashXor1x1<T>;
4068 <T>(arrays2: lodash.__, arrays: lodash.List<T> | null | undefined): LodashXor1x2<T>;
4069 <T>(arrays2: lodash.List<T> | null | undefined, arrays: lodash.List<T> | null | undefined): T[];
4070 }
4071 type LodashXor1x1<T> = (arrays: lodash.List<T> | null | undefined) => T[];
4072 type LodashXor1x2<T> = (arrays2: lodash.List<T> | null | undefined) => T[];
4073 interface LodashXorBy {
4074 <T>(iteratee: lodash.ValueIteratee<T>): LodashXorBy1x1<T>;
4075 <T>(iteratee: lodash.__, arrays: lodash.List<T> | null | undefined): LodashXorBy1x2<T>;
4076 <T>(iteratee: lodash.ValueIteratee<T>, arrays: lodash.List<T> | null | undefined): LodashXorBy1x3<T>;
4077 <T>(iteratee: lodash.__, arrays: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashXorBy1x4<T>;
4078 <T>(iteratee: lodash.ValueIteratee<T>, arrays: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashXorBy1x5<T>;
4079 <T>(iteratee: lodash.__, arrays: lodash.List<T> | null | undefined, arrays2: lodash.List<T> | null | undefined): LodashXorBy1x6<T>;
4080 <T>(iteratee: lodash.ValueIteratee<T>, arrays: lodash.List<T> | null | undefined, arrays2: lodash.List<T> | null | undefined): T[];
4081 }
4082 interface LodashXorBy1x1<T> {
4083 (arrays: lodash.List<T> | null | undefined): LodashXorBy1x3<T>;
4084 (arrays: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashXorBy1x5<T>;
4085 (arrays: lodash.List<T> | null | undefined, arrays2: lodash.List<T> | null | undefined): T[];
4086 }
4087 interface LodashXorBy1x2<T> {
4088 (iteratee: lodash.ValueIteratee<T>): LodashXorBy1x3<T>;
4089 (iteratee: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashXorBy1x6<T>;
4090 (iteratee: lodash.ValueIteratee<T>, arrays2: lodash.List<T> | null | undefined): T[];
4091 }
4092 type LodashXorBy1x3<T> = (arrays2: lodash.List<T> | null | undefined) => T[];
4093 interface LodashXorBy1x4<T> {
4094 (iteratee: lodash.ValueIteratee<T>): LodashXorBy1x5<T>;
4095 (iteratee: lodash.__, arrays: lodash.List<T> | null | undefined): LodashXorBy1x6<T>;
4096 (iteratee: lodash.ValueIteratee<T>, arrays: lodash.List<T> | null | undefined): T[];
4097 }
4098 type LodashXorBy1x5<T> = (arrays: lodash.List<T> | null | undefined) => T[];
4099 type LodashXorBy1x6<T> = (iteratee: lodash.ValueIteratee<T>) => T[];
4100 interface LodashXorWith {
4101 <T>(comparator: lodash.Comparator<T>): LodashXorWith1x1<T>;
4102 <T>(comparator: lodash.__, arrays: lodash.List<T> | null | undefined): LodashXorWith1x2<T>;
4103 <T>(comparator: lodash.Comparator<T>, arrays: lodash.List<T> | null | undefined): LodashXorWith1x3<T>;
4104 <T>(comparator: lodash.__, arrays: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashXorWith1x4<T>;
4105 <T>(comparator: lodash.Comparator<T>, arrays: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashXorWith1x5<T>;
4106 <T>(comparator: lodash.__, arrays: lodash.List<T> | null | undefined, arrays2: lodash.List<T> | null | undefined): LodashXorWith1x6<T>;
4107 <T>(comparator: lodash.Comparator<T>, arrays: lodash.List<T> | null | undefined, arrays2: lodash.List<T> | null | undefined): T[];
4108 }
4109 interface LodashXorWith1x1<T> {
4110 (arrays: lodash.List<T> | null | undefined): LodashXorWith1x3<T>;
4111 (arrays: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashXorWith1x5<T>;
4112 (arrays: lodash.List<T> | null | undefined, arrays2: lodash.List<T> | null | undefined): T[];
4113 }
4114 interface LodashXorWith1x2<T> {
4115 (comparator: lodash.Comparator<T>): LodashXorWith1x3<T>;
4116 (comparator: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashXorWith1x6<T>;
4117 (comparator: lodash.Comparator<T>, arrays2: lodash.List<T> | null | undefined): T[];
4118 }
4119 type LodashXorWith1x3<T> = (arrays2: lodash.List<T> | null | undefined) => T[];
4120 interface LodashXorWith1x4<T> {
4121 (comparator: lodash.Comparator<T>): LodashXorWith1x5<T>;
4122 (comparator: lodash.__, arrays: lodash.List<T> | null | undefined): LodashXorWith1x6<T>;
4123 (comparator: lodash.Comparator<T>, arrays: lodash.List<T> | null | undefined): T[];
4124 }
4125 type LodashXorWith1x5<T> = (arrays: lodash.List<T> | null | undefined) => T[];
4126 type LodashXorWith1x6<T> = (comparator: lodash.Comparator<T>) => T[];
4127 type LodashTail = <T>(array: lodash.List<T> | null | undefined) => T[];
4128 interface LodashTake {
4129 (n: number): LodashTake1x1;
4130 <T>(n: lodash.__, array: lodash.List<T> | null | undefined): LodashTake1x2<T>;
4131 <T>(n: number, array: lodash.List<T> | null | undefined): T[];
4132 }
4133 type LodashTake1x1 = <T>(array: lodash.List<T> | null | undefined) => T[];
4134 type LodashTake1x2<T> = (n: number) => T[];
4135 interface LodashTakeRight {
4136 (n: number): LodashTakeRight1x1;
4137 <T>(n: lodash.__, array: lodash.List<T> | null | undefined): LodashTakeRight1x2<T>;
4138 <T>(n: number, array: lodash.List<T> | null | undefined): T[];
4139 }
4140 type LodashTakeRight1x1 = <T>(array: lodash.List<T> | null | undefined) => T[];
4141 type LodashTakeRight1x2<T> = (n: number) => T[];
4142 interface LodashTakeRightWhile {
4143 <T>(predicate: lodash.ValueIteratee<T>): LodashTakeRightWhile1x1<T>;
4144 <T>(predicate: lodash.__, array: lodash.List<T> | null | undefined): LodashTakeRightWhile1x2<T>;
4145 <T>(predicate: lodash.ValueIteratee<T>, array: lodash.List<T> | null | undefined): T[];
4146 }
4147 type LodashTakeRightWhile1x1<T> = (array: lodash.List<T> | null | undefined) => T[];
4148 type LodashTakeRightWhile1x2<T> = (predicate: lodash.ValueIteratee<T>) => T[];
4149 interface LodashTakeWhile {
4150 <T>(predicate: lodash.ValueIteratee<T>): LodashTakeWhile1x1<T>;
4151 <T>(predicate: lodash.__, array: lodash.List<T> | null | undefined): LodashTakeWhile1x2<T>;
4152 <T>(predicate: lodash.ValueIteratee<T>, array: lodash.List<T> | null | undefined): T[];
4153 }
4154 type LodashTakeWhile1x1<T> = (array: lodash.List<T> | null | undefined) => T[];
4155 type LodashTakeWhile1x2<T> = (predicate: lodash.ValueIteratee<T>) => T[];
4156 interface LodashTap {
4157 <T>(interceptor: (value: T) => void): LodashTap1x1<T>;
4158 <T>(interceptor: lodash.__, value: T): LodashTap1x2<T>;
4159 <T>(interceptor: (value: T) => void, value: T): T;
4160 }
4161 type LodashTap1x1<T> = (value: T) => T;
4162 type LodashTap1x2<T> = (interceptor: (value: T) => void) => T;
4163 type LodashTemplate = (string: string) => lodash.TemplateExecutor;
4164 interface LodashThrottle {
4165 (wait: number): LodashThrottle1x1;
4166 <T extends (...args: any) => any>(wait: lodash.__, func: T): LodashThrottle1x2<T>;
4167 <T extends (...args: any) => any>(wait: number, func: T): lodash.DebouncedFunc<T>;
4168 }
4169 type LodashThrottle1x1 = <T extends (...args: any) => any>(func: T) => lodash.DebouncedFunc<T>;
4170 type LodashThrottle1x2<T extends (...args: any) => any> = (wait: number) => lodash.DebouncedFunc<T>;
4171 interface LodashThru {
4172 <T, TResult>(interceptor: (value: T) => TResult): LodashThru1x1<T, TResult>;
4173 <T>(interceptor: lodash.__, value: T): LodashThru1x2<T>;
4174 <T, TResult>(interceptor: (value: T) => TResult, value: T): TResult;
4175 }
4176 type LodashThru1x1<T, TResult> = (value: T) => TResult;
4177 type LodashThru1x2<T> = <TResult>(interceptor: (value: T) => TResult) => TResult;
4178 interface LodashTimes {
4179 <TResult>(iteratee: (num: number) => TResult): LodashTimes1x1<TResult>;
4180 (iteratee: lodash.__, n: number): LodashTimes1x2;
4181 <TResult>(iteratee: (num: number) => TResult, n: number): TResult[];
4182 }
4183 type LodashTimes1x1<TResult> = (n: number) => TResult[];
4184 type LodashTimes1x2 = <TResult>(iteratee: (num: number) => TResult) => TResult[];
4185 interface LodashToArray {
4186 <T>(value: lodash.Dictionary<T> | lodash.NumericDictionary<T> | null | undefined): T[];
4187 <T>(value: T): Array<T[keyof T]>;
4188 (): any[];
4189 }
4190 type LodashToFinite = (value: any) => number;
4191 type LodashToInteger = (value: any) => number;
4192 type LodashToLength = (value: any) => number;
4193 type LodashToLower = (string: string) => string;
4194 type LodashToNumber = (value: any) => number;
4195 type LodashToPath = (value: any) => string[];
4196 type LodashToPlainObject = (value: any) => any;
4197 type LodashToSafeInteger = (value: any) => number;
4198 type LodashToString = (value: any) => string;
4199 type LodashToUpper = (string: string) => string;
4200 interface LodashTransform {
4201 <T, TResult>(iteratee: lodash.MemoVoidIteratorCapped<T, TResult>): LodashTransform1x1<T, TResult>;
4202 <TResult>(iteratee: lodash.__, accumulator: TResult): LodashTransform1x2<TResult>;
4203 <T, TResult>(iteratee: lodash.MemoVoidIteratorCapped<T, TResult>, accumulator: TResult): LodashTransform1x3<T, TResult>;
4204 <T>(iteratee: lodash.__, accumulator: lodash.__, object: ReadonlyArray<T>): LodashTransform1x4<T>;
4205 <T, TResult>(iteratee: lodash.MemoVoidIteratorCapped<T, TResult>, accumulator: lodash.__, object: ReadonlyArray<T>): LodashTransform1x5<TResult>;
4206 <T, TResult>(iteratee: lodash.__, accumulator: TResult, object: ReadonlyArray<T>): LodashTransform1x6<T, TResult>;
4207 <T, TResult>(iteratee: lodash.MemoVoidIteratorCapped<T, TResult>, accumulator: TResult, object: ReadonlyArray<T> | lodash.Dictionary<T>): TResult;
4208 <T>(iteratee: lodash.__, accumulator: lodash.__, object: lodash.Dictionary<T>): LodashTransform2x4<T>;
4209 <T, TResult>(iteratee: lodash.MemoVoidIteratorCapped<T, TResult>, accumulator: lodash.__, object: lodash.Dictionary<T>): LodashTransform2x5<TResult>;
4210 <T, TResult>(iteratee: lodash.__, accumulator: TResult, object: lodash.Dictionary<T>): LodashTransform2x6<T, TResult>;
4211 }
4212 interface LodashTransform1x1<T, TResult> {
4213 (accumulator: TResult): LodashTransform1x3<T, TResult>;
4214 (accumulator: lodash.__, object: ReadonlyArray<T>): LodashTransform1x5<TResult>;
4215 (accumulator: TResult, object: ReadonlyArray<T> | lodash.Dictionary<T>): TResult;
4216 (accumulator: lodash.__, object: lodash.Dictionary<T>): LodashTransform2x5<TResult>;
4217 }
4218 interface LodashTransform1x2<TResult> {
4219 <T>(iteratee: lodash.MemoVoidIteratorCapped<T, TResult>): LodashTransform1x3<T, TResult>;
4220 <T>(iteratee: lodash.__, object: ReadonlyArray<T>): LodashTransform1x6<T, TResult>;
4221 <T>(iteratee: lodash.MemoVoidIteratorCapped<T, TResult>, object: ReadonlyArray<T> | lodash.Dictionary<T>): TResult;
4222 <T>(iteratee: lodash.__, object: lodash.Dictionary<T>): LodashTransform2x6<T, TResult>;
4223 }
4224 type LodashTransform1x3<T, TResult> = (object: ReadonlyArray<T> | lodash.Dictionary<T>) => TResult;
4225 interface LodashTransform1x4<T> {
4226 <TResult>(iteratee: lodash.MemoVoidIteratorCapped<T, TResult>): LodashTransform1x5<TResult>;
4227 <TResult>(iteratee: lodash.__, accumulator: TResult): LodashTransform1x6<T, TResult>;
4228 <TResult>(iteratee: lodash.MemoVoidIteratorCapped<T, TResult>, accumulator: TResult): TResult;
4229 }
4230 type LodashTransform1x5<TResult> = (accumulator: TResult) => TResult;
4231 type LodashTransform1x6<T, TResult> = (iteratee: lodash.MemoVoidIteratorCapped<T, TResult>) => TResult;
4232 interface LodashTransform2x4<T> {
4233 <TResult>(iteratee: lodash.MemoVoidIteratorCapped<T, TResult>): LodashTransform2x5<TResult>;
4234 <TResult>(iteratee: lodash.__, accumulator: TResult): LodashTransform2x6<T, TResult>;
4235 <TResult>(iteratee: lodash.MemoVoidIteratorCapped<T, TResult>, accumulator: TResult): TResult;
4236 }
4237 type LodashTransform2x5<TResult> = (accumulator: TResult) => TResult;
4238 type LodashTransform2x6<T, TResult> = (iteratee: lodash.MemoVoidIteratorCapped<T, TResult>) => TResult;
4239 type LodashTrim = (string: string) => string;
4240 interface LodashTrimChars {
4241 (chars: string): LodashTrimChars1x1;
4242 (chars: lodash.__, string: string): LodashTrimChars1x2;
4243 (chars: string, string: string): string;
4244 }
4245 type LodashTrimChars1x1 = (string: string) => string;
4246 type LodashTrimChars1x2 = (chars: string) => string;
4247 interface LodashTrimCharsEnd {
4248 (chars: string): LodashTrimCharsEnd1x1;
4249 (chars: lodash.__, string: string): LodashTrimCharsEnd1x2;
4250 (chars: string, string: string): string;
4251 }
4252 type LodashTrimCharsEnd1x1 = (string: string) => string;
4253 type LodashTrimCharsEnd1x2 = (chars: string) => string;
4254 interface LodashTrimCharsStart {
4255 (chars: string): LodashTrimCharsStart1x1;
4256 (chars: lodash.__, string: string): LodashTrimCharsStart1x2;
4257 (chars: string, string: string): string;
4258 }
4259 type LodashTrimCharsStart1x1 = (string: string) => string;
4260 type LodashTrimCharsStart1x2 = (chars: string) => string;
4261 type LodashTrimEnd = (string: string) => string;
4262 type LodashTrimStart = (string: string) => string;
4263 interface LodashTruncate {
4264 (options: lodash.TruncateOptions): LodashTruncate1x1;
4265 (options: lodash.__, string: string): LodashTruncate1x2;
4266 (options: lodash.TruncateOptions, string: string): string;
4267 }
4268 type LodashTruncate1x1 = (string: string) => string;
4269 type LodashTruncate1x2 = (options: lodash.TruncateOptions) => string;
4270 type LodashUnapply = (func: (...args: any[]) => any) => (...args: any[]) => any;
4271 type LodashUnary = <T, TResult>(func: (arg1: T, ...args: any[]) => TResult) => (arg1: T) => TResult;
4272 type LodashUnescape = (string: string) => string;
4273 interface LodashUnion {
4274 <T>(arrays2: lodash.List<T> | null | undefined): LodashUnion1x1<T>;
4275 <T>(arrays2: lodash.__, arrays: lodash.List<T> | null | undefined): LodashUnion1x2<T>;
4276 <T>(arrays2: lodash.List<T> | null | undefined, arrays: lodash.List<T> | null | undefined): T[];
4277 }
4278 type LodashUnion1x1<T> = (arrays: lodash.List<T> | null | undefined) => T[];
4279 type LodashUnion1x2<T> = (arrays2: lodash.List<T> | null | undefined) => T[];
4280 interface LodashUnionBy {
4281 <T>(iteratee: lodash.ValueIteratee<T>): LodashUnionBy1x1<T>;
4282 <T>(iteratee: lodash.__, arrays1: lodash.List<T> | null | undefined): LodashUnionBy1x2<T>;
4283 <T>(iteratee: lodash.ValueIteratee<T>, arrays1: lodash.List<T> | null | undefined): LodashUnionBy1x3<T>;
4284 <T>(iteratee: lodash.__, arrays1: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashUnionBy1x4<T>;
4285 <T>(iteratee: lodash.ValueIteratee<T>, arrays1: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashUnionBy1x5<T>;
4286 <T>(iteratee: lodash.__, arrays1: lodash.List<T> | null | undefined, arrays2: lodash.List<T> | null | undefined): LodashUnionBy1x6<T>;
4287 <T>(iteratee: lodash.ValueIteratee<T>, arrays1: lodash.List<T> | null | undefined, arrays2: lodash.List<T> | null | undefined): T[];
4288 }
4289 interface LodashUnionBy1x1<T> {
4290 (arrays1: lodash.List<T> | null | undefined): LodashUnionBy1x3<T>;
4291 (arrays1: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashUnionBy1x5<T>;
4292 (arrays1: lodash.List<T> | null | undefined, arrays2: lodash.List<T> | null | undefined): T[];
4293 }
4294 interface LodashUnionBy1x2<T> {
4295 (iteratee: lodash.ValueIteratee<T>): LodashUnionBy1x3<T>;
4296 (iteratee: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashUnionBy1x6<T>;
4297 (iteratee: lodash.ValueIteratee<T>, arrays2: lodash.List<T> | null | undefined): T[];
4298 }
4299 type LodashUnionBy1x3<T> = (arrays2: lodash.List<T> | null | undefined) => T[];
4300 interface LodashUnionBy1x4<T> {
4301 (iteratee: lodash.ValueIteratee<T>): LodashUnionBy1x5<T>;
4302 (iteratee: lodash.__, arrays1: lodash.List<T> | null | undefined): LodashUnionBy1x6<T>;
4303 (iteratee: lodash.ValueIteratee<T>, arrays1: lodash.List<T> | null | undefined): T[];
4304 }
4305 type LodashUnionBy1x5<T> = (arrays1: lodash.List<T> | null | undefined) => T[];
4306 type LodashUnionBy1x6<T> = (iteratee: lodash.ValueIteratee<T>) => T[];
4307 interface LodashUnionWith {
4308 <T>(comparator: lodash.Comparator<T>): LodashUnionWith1x1<T>;
4309 <T>(comparator: lodash.__, arrays: lodash.List<T> | null | undefined): LodashUnionWith1x2<T>;
4310 <T>(comparator: lodash.Comparator<T>, arrays: lodash.List<T> | null | undefined): LodashUnionWith1x3<T>;
4311 <T>(comparator: lodash.__, arrays: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashUnionWith1x4<T>;
4312 <T>(comparator: lodash.Comparator<T>, arrays: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashUnionWith1x5<T>;
4313 <T>(comparator: lodash.__, arrays: lodash.List<T> | null | undefined, arrays2: lodash.List<T> | null | undefined): LodashUnionWith1x6<T>;
4314 <T>(comparator: lodash.Comparator<T>, arrays: lodash.List<T> | null | undefined, arrays2: lodash.List<T> | null | undefined): T[];
4315 }
4316 interface LodashUnionWith1x1<T> {
4317 (arrays: lodash.List<T> | null | undefined): LodashUnionWith1x3<T>;
4318 (arrays: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashUnionWith1x5<T>;
4319 (arrays: lodash.List<T> | null | undefined, arrays2: lodash.List<T> | null | undefined): T[];
4320 }
4321 interface LodashUnionWith1x2<T> {
4322 (comparator: lodash.Comparator<T>): LodashUnionWith1x3<T>;
4323 (comparator: lodash.__, arrays2: lodash.List<T> | null | undefined): LodashUnionWith1x6<T>;
4324 (comparator: lodash.Comparator<T>, arrays2: lodash.List<T> | null | undefined): T[];
4325 }
4326 type LodashUnionWith1x3<T> = (arrays2: lodash.List<T> | null | undefined) => T[];
4327 interface LodashUnionWith1x4<T> {
4328 (comparator: lodash.Comparator<T>): LodashUnionWith1x5<T>;
4329 (comparator: lodash.__, arrays: lodash.List<T> | null | undefined): LodashUnionWith1x6<T>;
4330 (comparator: lodash.Comparator<T>, arrays: lodash.List<T> | null | undefined): T[];
4331 }
4332 type LodashUnionWith1x5<T> = (arrays: lodash.List<T> | null | undefined) => T[];
4333 type LodashUnionWith1x6<T> = (comparator: lodash.Comparator<T>) => T[];
4334 type LodashUniq = <T>(array: lodash.List<T> | null | undefined) => T[];
4335 interface LodashUniqBy {
4336 <T>(iteratee: lodash.ValueIteratee<T>): LodashUniqBy1x1<T>;
4337 <T>(iteratee: lodash.__, array: lodash.List<T> | null | undefined): LodashUniqBy1x2<T>;
4338 <T>(iteratee: lodash.ValueIteratee<T>, array: lodash.List<T> | null | undefined): T[];
4339 }
4340 type LodashUniqBy1x1<T> = (array: lodash.List<T> | null | undefined) => T[];
4341 type LodashUniqBy1x2<T> = (iteratee: lodash.ValueIteratee<T>) => T[];
4342 type LodashUniqueId = (prefix: string) => string;
4343 interface LodashUniqWith {
4344 <T>(comparator: lodash.Comparator<T>): LodashUniqWith1x1<T>;
4345 <T>(comparator: lodash.__, array: lodash.List<T> | null | undefined): LodashUniqWith1x2<T>;
4346 <T>(comparator: lodash.Comparator<T>, array: lodash.List<T> | null | undefined): T[];
4347 }
4348 type LodashUniqWith1x1<T> = (array: lodash.List<T> | null | undefined) => T[];
4349 type LodashUniqWith1x2<T> = (comparator: lodash.Comparator<T>) => T[];
4350 type LodashUnzip = <T>(array: T[][] | lodash.List<lodash.List<T>> | null | undefined) => T[][];
4351 interface LodashUnzipWith {
4352 <T, TResult>(iteratee: (...values: T[]) => TResult): LodashUnzipWith1x1<T, TResult>;
4353 <T>(iteratee: lodash.__, array: lodash.List<lodash.List<T>> | null | undefined): LodashUnzipWith1x2<T>;
4354 <T, TResult>(iteratee: (...values: T[]) => TResult, array: lodash.List<lodash.List<T>> | null | undefined): TResult[];
4355 }
4356 type LodashUnzipWith1x1<T, TResult> = (array: lodash.List<lodash.List<T>> | null | undefined) => TResult[];
4357 type LodashUnzipWith1x2<T> = <TResult>(iteratee: (...values: T[]) => TResult) => TResult[];
4358 interface LodashUpdate {
4359 (path: lodash.PropertyPath): LodashUpdate1x1;
4360 (path: lodash.__, updater: (value: any) => any): LodashUpdate1x2;
4361 (path: lodash.PropertyPath, updater: (value: any) => any): LodashUpdate1x3;
4362 (path: lodash.__, updater: lodash.__, object: object): LodashUpdate1x4;
4363 (path: lodash.PropertyPath, updater: lodash.__, object: object): LodashUpdate1x5;
4364 (path: lodash.__, updater: (value: any) => any, object: object): LodashUpdate1x6;
4365 (path: lodash.PropertyPath, updater: (value: any) => any, object: object): any;
4366 }
4367 interface LodashUpdate1x1 {
4368 (updater: (value: any) => any): LodashUpdate1x3;
4369 (updater: lodash.__, object: object): LodashUpdate1x5;
4370 (updater: (value: any) => any, object: object): any;
4371 }
4372 interface LodashUpdate1x2 {
4373 (path: lodash.PropertyPath): LodashUpdate1x3;
4374 (path: lodash.__, object: object): LodashUpdate1x6;
4375 (path: lodash.PropertyPath, object: object): any;
4376 }
4377 type LodashUpdate1x3 = (object: object) => any;
4378 interface LodashUpdate1x4 {
4379 (path: lodash.PropertyPath): LodashUpdate1x5;
4380 (path: lodash.__, updater: (value: any) => any): LodashUpdate1x6;
4381 (path: lodash.PropertyPath, updater: (value: any) => any): any;
4382 }
4383 type LodashUpdate1x5 = (updater: (value: any) => any) => any;
4384 type LodashUpdate1x6 = (path: lodash.PropertyPath) => any;
4385 interface LodashUpdateWith {
4386 <T extends object>(customizer: lodash.SetWithCustomizer<T>): LodashUpdateWith1x1<T>;
4387 (customizer: lodash.__, path: lodash.PropertyPath): LodashUpdateWith1x2;
4388 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath): LodashUpdateWith1x3<T>;
4389 (customizer: lodash.__, path: lodash.__, updater: (oldValue: any) => any): LodashUpdateWith1x4;
4390 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.__, updater: (oldValue: any) => any): LodashUpdateWith1x5<T>;
4391 (customizer: lodash.__, path: lodash.PropertyPath, updater: (oldValue: any) => any): LodashUpdateWith1x6;
4392 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath, updater: (oldValue: any) => any): LodashUpdateWith1x7<T>;
4393 <T extends object>(customizer: lodash.__, path: lodash.__, updater: lodash.__, object: T): LodashUpdateWith1x8<T>;
4394 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.__, updater: lodash.__, object: T): LodashUpdateWith1x9<T>;
4395 <T extends object>(customizer: lodash.__, path: lodash.PropertyPath, updater: lodash.__, object: T): LodashUpdateWith1x10<T>;
4396 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath, updater: lodash.__, object: T): LodashUpdateWith1x11<T>;
4397 <T extends object>(customizer: lodash.__, path: lodash.__, updater: (oldValue: any) => any, object: T): LodashUpdateWith1x12<T>;
4398 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.__, updater: (oldValue: any) => any, object: T): LodashUpdateWith1x13<T>;
4399 <T extends object>(customizer: lodash.__, path: lodash.PropertyPath, updater: (oldValue: any) => any, object: T): LodashUpdateWith1x14<T>;
4400 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath, updater: (oldValue: any) => any, object: T): T;
4401 }
4402 interface LodashUpdateWith1x1<T> {
4403 (path: lodash.PropertyPath): LodashUpdateWith1x3<T>;
4404 (path: lodash.__, updater: (oldValue: any) => any): LodashUpdateWith1x5<T>;
4405 (path: lodash.PropertyPath, updater: (oldValue: any) => any): LodashUpdateWith1x7<T>;
4406 (path: lodash.__, updater: lodash.__, object: T): LodashUpdateWith1x9<T>;
4407 (path: lodash.PropertyPath, updater: lodash.__, object: T): LodashUpdateWith1x11<T>;
4408 (path: lodash.__, updater: (oldValue: any) => any, object: T): LodashUpdateWith1x13<T>;
4409 (path: lodash.PropertyPath, updater: (oldValue: any) => any, object: T): T;
4410 }
4411 interface LodashUpdateWith1x2 {
4412 <T extends object>(customizer: lodash.SetWithCustomizer<T>): LodashUpdateWith1x3<T>;
4413 (customizer: lodash.__, updater: (oldValue: any) => any): LodashUpdateWith1x6;
4414 <T extends object>(customizer: lodash.SetWithCustomizer<T>, updater: (oldValue: any) => any): LodashUpdateWith1x7<T>;
4415 <T extends object>(customizer: lodash.__, updater: lodash.__, object: T): LodashUpdateWith1x10<T>;
4416 <T extends object>(customizer: lodash.SetWithCustomizer<T>, updater: lodash.__, object: T): LodashUpdateWith1x11<T>;
4417 <T extends object>(customizer: lodash.__, updater: (oldValue: any) => any, object: T): LodashUpdateWith1x14<T>;
4418 <T extends object>(customizer: lodash.SetWithCustomizer<T>, updater: (oldValue: any) => any, object: T): T;
4419 }
4420 interface LodashUpdateWith1x3<T> {
4421 (updater: (oldValue: any) => any): LodashUpdateWith1x7<T>;
4422 (updater: lodash.__, object: T): LodashUpdateWith1x11<T>;
4423 (updater: (oldValue: any) => any, object: T): T;
4424 }
4425 interface LodashUpdateWith1x4 {
4426 <T extends object>(customizer: lodash.SetWithCustomizer<T>): LodashUpdateWith1x5<T>;
4427 (customizer: lodash.__, path: lodash.PropertyPath): LodashUpdateWith1x6;
4428 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath): LodashUpdateWith1x7<T>;
4429 <T extends object>(customizer: lodash.__, path: lodash.__, object: T): LodashUpdateWith1x12<T>;
4430 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.__, object: T): LodashUpdateWith1x13<T>;
4431 <T extends object>(customizer: lodash.__, path: lodash.PropertyPath, object: T): LodashUpdateWith1x14<T>;
4432 <T extends object>(customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath, object: T): T;
4433 }
4434 interface LodashUpdateWith1x5<T> {
4435 (path: lodash.PropertyPath): LodashUpdateWith1x7<T>;
4436 (path: lodash.__, object: T): LodashUpdateWith1x13<T>;
4437 (path: lodash.PropertyPath, object: T): T;
4438 }
4439 interface LodashUpdateWith1x6 {
4440 <T extends object>(customizer: lodash.SetWithCustomizer<T>): LodashUpdateWith1x7<T>;
4441 <T extends object>(customizer: lodash.__, object: T): LodashUpdateWith1x14<T>;
4442 <T extends object>(customizer: lodash.SetWithCustomizer<T>, object: T): T;
4443 }
4444 type LodashUpdateWith1x7<T> = (object: T) => T;
4445 interface LodashUpdateWith1x8<T> {
4446 (customizer: lodash.SetWithCustomizer<T>): LodashUpdateWith1x9<T>;
4447 (customizer: lodash.__, path: lodash.PropertyPath): LodashUpdateWith1x10<T>;
4448 (customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath): LodashUpdateWith1x11<T>;
4449 (customizer: lodash.__, path: lodash.__, updater: (oldValue: any) => any): LodashUpdateWith1x12<T>;
4450 (customizer: lodash.SetWithCustomizer<T>, path: lodash.__, updater: (oldValue: any) => any): LodashUpdateWith1x13<T>;
4451 (customizer: lodash.__, path: lodash.PropertyPath, updater: (oldValue: any) => any): LodashUpdateWith1x14<T>;
4452 (customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath, updater: (oldValue: any) => any): T;
4453 }
4454 interface LodashUpdateWith1x9<T> {
4455 (path: lodash.PropertyPath): LodashUpdateWith1x11<T>;
4456 (path: lodash.__, updater: (oldValue: any) => any): LodashUpdateWith1x13<T>;
4457 (path: lodash.PropertyPath, updater: (oldValue: any) => any): T;
4458 }
4459 interface LodashUpdateWith1x10<T> {
4460 (customizer: lodash.SetWithCustomizer<T>): LodashUpdateWith1x11<T>;
4461 (customizer: lodash.__, updater: (oldValue: any) => any): LodashUpdateWith1x14<T>;
4462 (customizer: lodash.SetWithCustomizer<T>, updater: (oldValue: any) => any): T;
4463 }
4464 type LodashUpdateWith1x11<T> = (updater: (oldValue: any) => any) => T;
4465 interface LodashUpdateWith1x12<T> {
4466 (customizer: lodash.SetWithCustomizer<T>): LodashUpdateWith1x13<T>;
4467 (customizer: lodash.__, path: lodash.PropertyPath): LodashUpdateWith1x14<T>;
4468 (customizer: lodash.SetWithCustomizer<T>, path: lodash.PropertyPath): T;
4469 }
4470 type LodashUpdateWith1x13<T> = (path: lodash.PropertyPath) => T;
4471 type LodashUpdateWith1x14<T> = (customizer: lodash.SetWithCustomizer<T>) => T;
4472 type LodashUpperCase = (string: string) => string;
4473 type LodashUpperFirst = (string: string) => string;
4474 interface LodashValues {
4475 <T>(object: lodash.Dictionary<T> | lodash.NumericDictionary<T> | lodash.List<T> | null | undefined): T[];
4476 <T extends object>(object: T | null | undefined): Array<T[keyof T]>;
4477 (object: any): any[];
4478 }
4479 interface LodashValuesIn {
4480 <T>(object: lodash.Dictionary<T> | lodash.NumericDictionary<T> | lodash.List<T> | null | undefined): T[];
4481 <T extends object>(object: T | null | undefined): Array<T[keyof T]>;
4482 }
4483 interface LodashWithout {
4484 <T>(values: ReadonlyArray<T>): LodashWithout1x1<T>;
4485 <T>(values: lodash.__, array: lodash.List<T> | null | undefined): LodashWithout1x2<T>;
4486 <T>(values: ReadonlyArray<T>, array: lodash.List<T> | null | undefined): T[];
4487 }
4488 type LodashWithout1x1<T> = (array: lodash.List<T> | null | undefined) => T[];
4489 type LodashWithout1x2<T> = (values: ReadonlyArray<T>) => T[];
4490 type LodashWords = (string: string) => string[];
4491 interface LodashWrap {
4492 <T, TArgs, TResult>(wrapper: (value: T, ...args: TArgs[]) => TResult): LodashWrap1x1<T, TArgs, TResult>;
4493 <T>(wrapper: lodash.__, value: T): LodashWrap1x2<T>;
4494 <T, TArgs, TResult>(wrapper: (value: T, ...args: TArgs[]) => TResult, value: T): (...args: TArgs[]) => TResult;
4495 }
4496 type LodashWrap1x1<T, TArgs, TResult> = (value: T) => (...args: TArgs[]) => TResult;
4497 type LodashWrap1x2<T> = <TArgs, TResult>(wrapper: (value: T, ...args: TArgs[]) => TResult) => (...args: TArgs[]) => TResult;
4498 interface LodashZip {
4499 <T1>(arrays1: lodash.List<T1>): LodashZip1x1<T1>;
4500 <T2>(arrays1: lodash.__, arrays2: lodash.List<T2>): LodashZip1x2<T2>;
4501 <T1, T2>(arrays1: lodash.List<T1>, arrays2: lodash.List<T2>): Array<[T1 | undefined, T2 | undefined]>;
4502 }
4503 type LodashZip1x1<T1> = <T2>(arrays2: lodash.List<T2>) => Array<[T1 | undefined, T2 | undefined]>;
4504 type LodashZip1x2<T2> = <T1>(arrays1: lodash.List<T1>) => Array<[T1 | undefined, T2 | undefined]>;
4505 interface LodashZipAll {
4506 <T1, T2>(arrays1: [lodash.List<T1>, lodash.List<T2>]): Array<[T1 | undefined, T2 | undefined]>;
4507 <T1, T2, T3>(arrays1: [lodash.List<T1>, lodash.List<T2>, lodash.List<T3>]): Array<[T1 | undefined, T2 | undefined, T3 | undefined]>;
4508 <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]>;
4509 <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]>;
4510 <T>(arrays: ReadonlyArray<lodash.List<T> | null | undefined>): Array<Array<T | undefined>>;
4511 }
4512 interface LodashZipObject {
4513 (props: lodash.List<lodash.PropertyName>): LodashZipObject1x1;
4514 <T>(props: lodash.__, values: lodash.List<T>): LodashZipObject1x2<T>;
4515 <T>(props: lodash.List<lodash.PropertyName>, values: lodash.List<T>): lodash.Dictionary<T>;
4516 }
4517 type LodashZipObject1x1 = <T>(values: lodash.List<T>) => lodash.Dictionary<T>;
4518 type LodashZipObject1x2<T> = (props: lodash.List<lodash.PropertyName>) => lodash.Dictionary<T>;
4519 interface LodashZipObjectDeep {
4520 (paths: lodash.List<lodash.PropertyPath>): LodashZipObjectDeep1x1;
4521 (paths: lodash.__, values: lodash.List<any>): LodashZipObjectDeep1x2;
4522 (paths: lodash.List<lodash.PropertyPath>, values: lodash.List<any>): object;
4523 }
4524 type LodashZipObjectDeep1x1 = (values: lodash.List<any>) => object;
4525 type LodashZipObjectDeep1x2 = (paths: lodash.List<lodash.PropertyPath>) => object;
4526 interface LodashZipWith {
4527 <T1, T2, TResult>(iteratee: (value1: T1, value2: T2) => TResult): LodashZipWith1x1<T1, T2, TResult>;
4528 <T1>(iteratee: lodash.__, arrays1: lodash.List<T1>): LodashZipWith1x2<T1>;
4529 <T1, T2, TResult>(iteratee: (value1: T1, value2: T2) => TResult, arrays1: lodash.List<T1>): LodashZipWith1x3<T2, TResult>;
4530 <T2>(iteratee: lodash.__, arrays1: lodash.__, arrays2: lodash.List<T2>): LodashZipWith1x4<T2>;
4531 <T1, T2, TResult>(iteratee: (value1: T1, value2: T2) => TResult, arrays1: lodash.__, arrays2: lodash.List<T2>): LodashZipWith1x5<T1, TResult>;
4532 <T1, T2>(iteratee: lodash.__, arrays1: lodash.List<T1>, arrays2: lodash.List<T2>): LodashZipWith1x6<T1, T2>;
4533 <T1, T2, TResult>(iteratee: (value1: T1, value2: T2) => TResult, arrays1: lodash.List<T1>, arrays2: lodash.List<T2>): TResult[];
4534 }
4535 interface LodashZipWith1x1<T1, T2, TResult> {
4536 (arrays1: lodash.List<T1>): LodashZipWith1x3<T2, TResult>;
4537 (arrays1: lodash.__, arrays2: lodash.List<T2>): LodashZipWith1x5<T1, TResult>;
4538 (arrays1: lodash.List<T1>, arrays2: lodash.List<T2>): TResult[];
4539 }
4540 interface LodashZipWith1x2<T1> {
4541 <T2, TResult>(iteratee: (value1: T1, value2: T2) => TResult): LodashZipWith1x3<T2, TResult>;
4542 <T2>(iteratee: lodash.__, arrays2: lodash.List<T2>): LodashZipWith1x6<T1, T2>;
4543 <T2, TResult>(iteratee: (value1: T1, value2: T2) => TResult, arrays2: lodash.List<T2>): TResult[];
4544 }
4545 type LodashZipWith1x3<T2, TResult> = (arrays2: lodash.List<T2>) => TResult[];
4546 interface LodashZipWith1x4<T2> {
4547 <T1, TResult>(iteratee: (value1: T1, value2: T2) => TResult): LodashZipWith1x5<T1, TResult>;
4548 <T1>(iteratee: lodash.__, arrays1: lodash.List<T1>): LodashZipWith1x6<T1, T2>;
4549 <T1, TResult>(iteratee: (value1: T1, value2: T2) => TResult, arrays1: lodash.List<T1>): TResult[];
4550 }
4551 type LodashZipWith1x5<T1, TResult> = (arrays1: lodash.List<T1>) => TResult[];
4552 type LodashZipWith1x6<T1, T2> = <TResult>(iteratee: (value1: T1, value2: T2) => TResult) => TResult[];
4553
4554 interface LoDashFp {
4555 add: LodashAdd;
4556 after: LodashAfter;
4557 all: LodashEvery;
4558 allPass: LodashOverEvery;
4559 always: LodashConstant;
4560 any: LodashSome;
4561 anyPass: LodashOverSome;
4562 apply: LodashApply;
4563 ary: LodashAry;
4564 assign: LodashAssign;
4565 assignAll: LodashAssignAll;
4566 assignAllWith: LodashAssignAllWith;
4567 assignIn: LodashAssignIn;
4568 assignInAll: LodashAssignInAll;
4569 assignInAllWith: LodashAssignInAllWith;
4570 assignInWith: LodashAssignInWith;
4571 assignWith: LodashAssignWith;
4572 assoc: LodashSet;
4573 assocPath: LodashSet;
4574 at: LodashAt;
4575 attempt: LodashAttempt;
4576 before: LodashBefore;
4577 bind: LodashBind;
4578 bindAll: LodashBindAll;
4579 bindKey: LodashBindKey;
4580 camelCase: LodashCamelCase;
4581 capitalize: LodashCapitalize;
4582 castArray: LodashCastArray;
4583 ceil: LodashCeil;
4584 chunk: LodashChunk;
4585 clamp: LodashClamp;
4586 clone: LodashClone;
4587 cloneDeep: LodashCloneDeep;
4588 cloneDeepWith: LodashCloneDeepWith;
4589 cloneWith: LodashCloneWith;
4590 compact: LodashCompact;
4591 complement: LodashNegate;
4592 compose: LodashFlowRight;
4593 concat: LodashConcat;
4594 cond: LodashCond;
4595 conforms: LodashConformsTo;
4596 conformsTo: LodashConformsTo;
4597 constant: LodashConstant;
4598 contains: LodashContains;
4599 countBy: LodashCountBy;
4600 create: LodashCreate;
4601 curry: LodashCurry;
4602 curryN: LodashCurryN;
4603 curryRight: LodashCurryRight;
4604 curryRightN: LodashCurryRightN;
4605 debounce: LodashDebounce;
4606 deburr: LodashDeburr;
4607 defaults: LodashDefaults;
4608 defaultsAll: LodashDefaultsAll;
4609 defaultsDeep: LodashDefaultsDeep;
4610 defaultsDeepAll: LodashDefaultsDeepAll;
4611 defaultTo: LodashDefaultTo;
4612 defer: LodashDefer;
4613 delay: LodashDelay;
4614 difference: LodashDifference;
4615 differenceBy: LodashDifferenceBy;
4616 differenceWith: LodashDifferenceWith;
4617 dissoc: LodashUnset;
4618 dissocPath: LodashUnset;
4619 divide: LodashDivide;
4620 drop: LodashDrop;
4621 dropLast: LodashDropRight;
4622 dropLastWhile: LodashDropRightWhile;
4623 dropRight: LodashDropRight;
4624 dropRightWhile: LodashDropRightWhile;
4625 dropWhile: LodashDropWhile;
4626 each: LodashForEach;
4627 eachRight: LodashForEachRight;
4628 endsWith: LodashEndsWith;
4629 entries: LodashToPairs;
4630 entriesIn: LodashToPairsIn;
4631 eq: LodashEq;
4632 equals: LodashIsEqual;
4633 escape: LodashEscape;
4634 escapeRegExp: LodashEscapeRegExp;
4635 every: LodashEvery;
4636 extend: LodashExtend;
4637 extendAll: LodashExtendAll;
4638 extendAllWith: LodashExtendAllWith;
4639 extendWith: LodashExtendWith;
4640 F: LodashStubFalse;
4641 fill: LodashFill;
4642 filter: LodashFilter;
4643 find: LodashFind;
4644 findFrom: LodashFindFrom;
4645 findIndex: LodashFindIndex;
4646 findIndexFrom: LodashFindIndexFrom;
4647 findKey: LodashFindKey;
4648 findLast: LodashFindLast;
4649 findLastFrom: LodashFindLastFrom;
4650 findLastIndex: LodashFindLastIndex;
4651 findLastIndexFrom: LodashFindLastIndexFrom;
4652 findLastKey: LodashFindLastKey;
4653 first: LodashHead;
4654 flatMap: LodashFlatMap;
4655 flatMapDeep: LodashFlatMapDeep;
4656 flatMapDepth: LodashFlatMapDepth;
4657 flatten: LodashFlatten;
4658 flattenDeep: LodashFlattenDeep;
4659 flattenDepth: LodashFlattenDepth;
4660 flip: LodashFlip;
4661 floor: LodashFloor;
4662 flow: LodashFlow;
4663 flowRight: LodashFlowRight;
4664 forEach: LodashForEach;
4665 forEachRight: LodashForEachRight;
4666 forIn: LodashForIn;
4667 forInRight: LodashForInRight;
4668 forOwn: LodashForOwn;
4669 forOwnRight: LodashForOwnRight;
4670 fromPairs: LodashFromPairs;
4671 functions: LodashFunctions;
4672 functionsIn: LodashFunctionsIn;
4673 get: LodashGet;
4674 getOr: LodashGetOr;
4675 groupBy: LodashGroupBy;
4676 gt: LodashGt;
4677 gte: LodashGte;
4678 has: LodashHas;
4679 hasIn: LodashHasIn;
4680 head: LodashHead;
4681 identical: LodashEq;
4682 identity: LodashIdentity;
4683 includes: LodashIncludes;
4684 includesFrom: LodashIncludesFrom;
4685 indexBy: LodashKeyBy;
4686 indexOf: LodashIndexOf;
4687 indexOfFrom: LodashIndexOfFrom;
4688 init: LodashInitial;
4689 initial: LodashInitial;
4690 inRange: LodashInRange;
4691 intersection: LodashIntersection;
4692 intersectionBy: LodashIntersectionBy;
4693 intersectionWith: LodashIntersectionWith;
4694 invert: LodashInvert;
4695 invertBy: LodashInvertBy;
4696 invertObj: LodashInvert;
4697 invoke: LodashInvoke;
4698 invokeArgs: LodashInvokeArgs;
4699 invokeArgsMap: LodashInvokeArgsMap;
4700 invokeMap: LodashInvokeMap;
4701 isArguments: LodashIsArguments;
4702 isArray: LodashIsArray;
4703 isArrayBuffer: LodashIsArrayBuffer;
4704 isArrayLike: LodashIsArrayLike;
4705 isArrayLikeObject: LodashIsArrayLikeObject;
4706 isBoolean: LodashIsBoolean;
4707 isBuffer: LodashIsBuffer;
4708 isDate: LodashIsDate;
4709 isElement: LodashIsElement;
4710 isEmpty: LodashIsEmpty;
4711 isEqual: LodashIsEqual;
4712 isEqualWith: LodashIsEqualWith;
4713 isError: LodashIsError;
4714 isFinite: LodashIsFinite;
4715 isFunction: LodashIsFunction;
4716 isInteger: LodashIsInteger;
4717 isLength: LodashIsLength;
4718 isMap: LodashIsMap;
4719 isMatch: LodashIsMatch;
4720 isMatchWith: LodashIsMatchWith;
4721 isNaN: LodashIsNaN;
4722 isNative: LodashIsNative;
4723 isNil: LodashIsNil;
4724 isNull: LodashIsNull;
4725 isNumber: LodashIsNumber;
4726 isObject: LodashIsObject;
4727 isObjectLike: LodashIsObjectLike;
4728 isPlainObject: LodashIsPlainObject;
4729 isRegExp: LodashIsRegExp;
4730 isSafeInteger: LodashIsSafeInteger;
4731 isSet: LodashIsSet;
4732 isString: LodashIsString;
4733 isSymbol: LodashIsSymbol;
4734 isTypedArray: LodashIsTypedArray;
4735 isUndefined: LodashIsUndefined;
4736 isWeakMap: LodashIsWeakMap;
4737 isWeakSet: LodashIsWeakSet;
4738 iteratee: LodashIteratee;
4739 join: LodashJoin;
4740 juxt: LodashOver;
4741 kebabCase: LodashKebabCase;
4742 keyBy: LodashKeyBy;
4743 keys: LodashKeys;
4744 keysIn: LodashKeysIn;
4745 last: LodashLast;
4746 lastIndexOf: LodashLastIndexOf;
4747 lastIndexOfFrom: LodashLastIndexOfFrom;
4748 lowerCase: LodashLowerCase;
4749 lowerFirst: LodashLowerFirst;
4750 lt: LodashLt;
4751 lte: LodashLte;
4752 map: LodashMap;
4753 mapKeys: LodashMapKeys;
4754 mapValues: LodashMapValues;
4755 matches: LodashIsMatch;
4756 matchesProperty: LodashMatchesProperty;
4757 max: LodashMax;
4758 maxBy: LodashMaxBy;
4759 mean: LodashMean;
4760 meanBy: LodashMeanBy;
4761 memoize: LodashMemoize;
4762 merge: LodashMerge;
4763 mergeAll: LodashMergeAll;
4764 mergeAllWith: LodashMergeAllWith;
4765 mergeWith: LodashMergeWith;
4766 method: LodashMethod;
4767 methodOf: LodashMethodOf;
4768 min: LodashMin;
4769 minBy: LodashMinBy;
4770 multiply: LodashMultiply;
4771 nAry: LodashAry;
4772 negate: LodashNegate;
4773 noConflict: LodashNoConflict;
4774 noop: LodashNoop;
4775 now: LodashNow;
4776 nth: LodashNth;
4777 nthArg: LodashNthArg;
4778 omit: LodashOmit;
4779 omitAll: LodashOmit;
4780 omitBy: LodashOmitBy;
4781 once: LodashOnce;
4782 orderBy: LodashOrderBy;
4783 over: LodashOver;
4784 overArgs: LodashOverArgs;
4785 overEvery: LodashOverEvery;
4786 overSome: LodashOverSome;
4787 pad: LodashPad;
4788 padChars: LodashPadChars;
4789 padCharsEnd: LodashPadCharsEnd;
4790 padCharsStart: LodashPadCharsStart;
4791 padEnd: LodashPadEnd;
4792 padStart: LodashPadStart;
4793 parseInt: LodashParseInt;
4794 partial: LodashPartial;
4795 partialRight: LodashPartialRight;
4796 partition: LodashPartition;
4797 path: LodashPath;
4798 pathEq: LodashMatchesProperty;
4799 pathOr: LodashPathOr;
4800 paths: LodashAt;
4801 pick: LodashPick;
4802 pickAll: LodashPick;
4803 pickBy: LodashPickBy;
4804 pipe: LodashFlow;
4805 pluck: LodashMap;
4806 prop: LodashProp;
4807 propEq: LodashMatchesProperty;
4808 property: LodashProperty;
4809 propertyOf: LodashPropertyOf;
4810 propOr: LodashPropOr;
4811 props: LodashAt;
4812 pull: LodashPull;
4813 pullAll: LodashPullAll;
4814 pullAllBy: LodashPullAllBy;
4815 pullAllWith: LodashPullAllWith;
4816 pullAt: LodashPullAt;
4817 random: LodashRandom;
4818 range: LodashRange;
4819 rangeRight: LodashRangeRight;
4820 rangeStep: LodashRangeStep;
4821 rangeStepRight: LodashRangeStepRight;
4822 rearg: LodashRearg;
4823 reduce: LodashReduce;
4824 reduceRight: LodashReduceRight;
4825 reject: LodashReject;
4826 remove: LodashRemove;
4827 repeat: LodashRepeat;
4828 replace: LodashReplace;
4829 rest: LodashRest;
4830 restFrom: LodashRestFrom;
4831 result: LodashResult;
4832 reverse: LodashReverse;
4833 round: LodashRound;
4834 runInContext: LodashRunInContext;
4835 sample: LodashSample;
4836 sampleSize: LodashSampleSize;
4837 set: LodashSet;
4838 setWith: LodashSetWith;
4839 shuffle: LodashShuffle;
4840 size: LodashSize;
4841 slice: LodashSlice;
4842 snakeCase: LodashSnakeCase;
4843 some: LodashSome;
4844 sortBy: LodashSortBy;
4845 sortedIndex: LodashSortedIndex;
4846 sortedIndexBy: LodashSortedIndexBy;
4847 sortedIndexOf: LodashSortedIndexOf;
4848 sortedLastIndex: LodashSortedLastIndex;
4849 sortedLastIndexBy: LodashSortedLastIndexBy;
4850 sortedLastIndexOf: LodashSortedLastIndexOf;
4851 sortedUniq: LodashSortedUniq;
4852 sortedUniqBy: LodashSortedUniqBy;
4853 split: LodashSplit;
4854 spread: LodashSpread;
4855 spreadFrom: LodashSpreadFrom;
4856 startCase: LodashStartCase;
4857 startsWith: LodashStartsWith;
4858 stubArray: LodashStubArray;
4859 stubFalse: LodashStubFalse;
4860 stubObject: LodashStubObject;
4861 stubString: LodashStubString;
4862 stubTrue: LodashStubTrue;
4863 subtract: LodashSubtract;
4864 sum: LodashSum;
4865 sumBy: LodashSumBy;
4866 symmetricDifference: LodashXor;
4867 symmetricDifferenceBy: LodashXorBy;
4868 symmetricDifferenceWith: LodashXorWith;
4869 T: LodashStubTrue;
4870 tail: LodashTail;
4871 take: LodashTake;
4872 takeLast: LodashTakeRight;
4873 takeLastWhile: LodashTakeRightWhile;
4874 takeRight: LodashTakeRight;
4875 takeRightWhile: LodashTakeRightWhile;
4876 takeWhile: LodashTakeWhile;
4877 tap: LodashTap;
4878 template: LodashTemplate;
4879 throttle: LodashThrottle;
4880 thru: LodashThru;
4881 times: LodashTimes;
4882 toArray: LodashToArray;
4883 toFinite: LodashToFinite;
4884 toInteger: LodashToInteger;
4885 toLength: LodashToLength;
4886 toLower: LodashToLower;
4887 toNumber: LodashToNumber;
4888 toPairs: LodashToPairs;
4889 toPairsIn: LodashToPairsIn;
4890 toPath: LodashToPath;
4891 toPlainObject: LodashToPlainObject;
4892 toSafeInteger: LodashToSafeInteger;
4893 toString: LodashToString;
4894 toUpper: LodashToUpper;
4895 transform: LodashTransform;
4896 trim: LodashTrim;
4897 trimChars: LodashTrimChars;
4898 trimCharsEnd: LodashTrimCharsEnd;
4899 trimCharsStart: LodashTrimCharsStart;
4900 trimEnd: LodashTrimEnd;
4901 trimStart: LodashTrimStart;
4902 truncate: LodashTruncate;
4903 unapply: LodashUnapply;
4904 unary: LodashUnary;
4905 unescape: LodashUnescape;
4906 union: LodashUnion;
4907 unionBy: LodashUnionBy;
4908 unionWith: LodashUnionWith;
4909 uniq: LodashUniq;
4910 uniqBy: LodashUniqBy;
4911 uniqueId: LodashUniqueId;
4912 uniqWith: LodashUniqWith;
4913 unnest: LodashFlatten;
4914 unset: LodashUnset;
4915 unzip: LodashUnzip;
4916 unzipWith: LodashUnzipWith;
4917 update: LodashUpdate;
4918 updateWith: LodashUpdateWith;
4919 upperCase: LodashUpperCase;
4920 upperFirst: LodashUpperFirst;
4921 useWith: LodashOverArgs;
4922 values: LodashValues;
4923 valuesIn: LodashValuesIn;
4924 where: LodashConformsTo;
4925 whereEq: LodashIsMatch;
4926 without: LodashWithout;
4927 words: LodashWords;
4928 wrap: LodashWrap;
4929 xor: LodashXor;
4930 xorBy: LodashXorBy;
4931 xorWith: LodashXorWith;
4932 zip: LodashZip;
4933 zipAll: LodashZipAll;
4934 zipObj: LodashZipObject;
4935 zipObject: LodashZipObject;
4936 zipObjectDeep: LodashZipObjectDeep;
4937 zipWith: LodashZipWith;
4938 __: lodash.__;
4939 placeholder: lodash.__;
4940 }
4941}