Merge pull request #7883 from chrootsu/lodash-differenceBy

lodash: _.differenceBy changed
This commit is contained in:
Masahiro Wakame
2016-02-03 00:02:28 +09:00
2 changed files with 744 additions and 17 deletions
+187
View File
@@ -257,6 +257,193 @@ module TestDifference {
}
}
// _.differenceBy
module TestDifferenceBy {
let array: TResult[];
let list: _.List<TResult>;
let iteratee: (value: TResult) => any;
{
let result: TResult[];
result = _.differenceBy<TResult>(array, array);
result = _.differenceBy<TResult>(array, list, array);
result = _.differenceBy<TResult>(array, array, list, array);
result = _.differenceBy<TResult>(array, list, array, list, array);
result = _.differenceBy<TResult>(array, array, list, array, list, array);
result = _.differenceBy<TResult>(array, list, array, list, array, list, array);
result = _.differenceBy<TResult>(array, array, iteratee);
result = _.differenceBy<TResult>(array, list, array, iteratee);
result = _.differenceBy<TResult>(array, array, list, array, iteratee);
result = _.differenceBy<TResult>(array, list, array, list, array, iteratee);
result = _.differenceBy<TResult>(array, array, list, array, list, array, iteratee);
result = _.differenceBy<TResult>(array, list, array, list, array, list, array, iteratee);
result = _.differenceBy<TResult>(array, array, 'a');
result = _.differenceBy<TResult>(array, list, array, 'a');
result = _.differenceBy<TResult>(array, array, list, array, 'a');
result = _.differenceBy<TResult>(array, list, array, list, array, 'a');
result = _.differenceBy<TResult>(array, array, list, array, list, array, 'a');
result = _.differenceBy<TResult>(array, list, array, list, array, list, array, 'a');
result = _.differenceBy<TResult, {a: number}>(array, array, {a: 1});
result = _.differenceBy<TResult, {a: number}>(array, list, array, {a: 1});
result = _.differenceBy<TResult, {a: number}>(array, array, list, array, {a: 1});
result = _.differenceBy<TResult, {a: number}>(array, list, array, list, array, {a: 1});
result = _.differenceBy<TResult, {a: number}>(array, array, list, array, list, array, {a: 1});
result = _.differenceBy<TResult>(array, list, array, list, array, list, array, {a: 1});
result = _.differenceBy<TResult>(list, list);
result = _.differenceBy<TResult>(list, array, list);
result = _.differenceBy<TResult>(list, list, array, list);
result = _.differenceBy<TResult>(list, array, list, array, list);
result = _.differenceBy<TResult>(list, list, array, list, array, list);
result = _.differenceBy<TResult>(list, array, list, array, list, array, list);
result = _.differenceBy<TResult>(list, list, iteratee);
result = _.differenceBy<TResult>(list, array, list, iteratee);
result = _.differenceBy<TResult>(list, list, array, list, iteratee);
result = _.differenceBy<TResult>(list, array, list, array, list, iteratee);
result = _.differenceBy<TResult>(list, list, array, list, array, list, iteratee);
result = _.differenceBy<TResult>(list, array, list, array, list, array, list, iteratee);
result = _.differenceBy<TResult>(list, list, 'a');
result = _.differenceBy<TResult>(list, array, list, 'a');
result = _.differenceBy<TResult>(list, list, array, list, 'a');
result = _.differenceBy<TResult>(list, array, list, array, list, 'a');
result = _.differenceBy<TResult>(list, list, array, list, array, list, 'a');
result = _.differenceBy<TResult>(list, array, list, array, list, array, list, 'a');
result = _.differenceBy<TResult, {a: number}>(list, list, {a: 1});
result = _.differenceBy<TResult, {a: number}>(list, array, list, {a: 1});
result = _.differenceBy<TResult, {a: number}>(list, list, array, list, {a: 1});
result = _.differenceBy<TResult, {a: number}>(list, array, list, array, list, {a: 1});
result = _.differenceBy<TResult, {a: number}>(list, list, array, list, array, list, {a: 1});
result = _.differenceBy<TResult>(list, array, list, array, list, array, list, {a: 1});
}
{
let result: _.LoDashImplicitArrayWrapper<TResult>;
result = _(array).differenceBy<TResult>(array);
result = _(array).differenceBy<TResult>(list, array);
result = _(array).differenceBy<TResult>(array, list, array);
result = _(array).differenceBy<TResult>(list, array, list, array);
result = _(array).differenceBy<TResult>(array, list, array, list, array);
result = _(array).differenceBy<TResult>(list, array, list, array, list, array);
result = _(array).differenceBy<TResult>(array, iteratee);
result = _(array).differenceBy<TResult>(list, array, iteratee);
result = _(array).differenceBy<TResult>(array, list, array, iteratee);
result = _(array).differenceBy<TResult>(list, array, list, array, iteratee);
result = _(array).differenceBy<TResult>(array, list, array, list, array, iteratee);
result = _(array).differenceBy<TResult>(list, array, list, array, list, array, iteratee);
result = _(array).differenceBy<TResult>(array, 'a');
result = _(array).differenceBy<TResult>(list, array, 'a');
result = _(array).differenceBy<TResult>(array, list, array, 'a');
result = _(array).differenceBy<TResult>(list, array, list, array, 'a');
result = _(array).differenceBy<TResult>(array, list, array, list, array, 'a');
result = _(array).differenceBy<TResult>(list, array, list, array, list, array, 'a');
result = _(array).differenceBy<TResult, {a: number}>(array, {a: 1});
result = _(array).differenceBy<TResult, {a: number}>(list, array, {a: 1});
result = _(array).differenceBy<TResult, {a: number}>(array, list, array, {a: 1});
result = _(array).differenceBy<TResult, {a: number}>(list, array, list, array, {a: 1});
result = _(array).differenceBy<TResult, {a: number}>(array, list, array, list, array, {a: 1});
result = _(array).differenceBy<TResult>(list, array, list, array, list, array, {a: 1});
result = _(list).differenceBy<TResult>(list);
result = _(list).differenceBy<TResult>(array, list);
result = _(list).differenceBy<TResult>(list, array, list);
result = _(list).differenceBy<TResult>(array, list, array, list);
result = _(list).differenceBy<TResult>(list, array, list, array, list);
result = _(list).differenceBy<TResult>(array, list, array, list, array, list);
result = _(list).differenceBy<TResult>(list, iteratee);
result = _(list).differenceBy<TResult>(array, list, iteratee);
result = _(list).differenceBy<TResult>(list, array, list, iteratee);
result = _(list).differenceBy<TResult>(array, list, array, list, iteratee);
result = _(list).differenceBy<TResult>(list, array, list, array, list, iteratee);
result = _(list).differenceBy<TResult>(array, list, array, list, array, list, iteratee);
result = _(list).differenceBy<TResult>(list, 'a');
result = _(list).differenceBy<TResult>(array, list, 'a');
result = _(list).differenceBy<TResult>(list, array, list, 'a');
result = _(list).differenceBy<TResult>(array, list, array, list, 'a');
result = _(list).differenceBy<TResult>(list, array, list, array, list, 'a');
result = _(list).differenceBy<TResult>(array, list, array, list, array, list, 'a');
result = _(list).differenceBy<TResult, {a: number}>(list, {a: 1});
result = _(list).differenceBy<TResult, {a: number}>(array, list, {a: 1});
result = _(list).differenceBy<TResult, {a: number}>(list, array, list, {a: 1});
result = _(list).differenceBy<TResult, {a: number}>(array, list, array, list, {a: 1});
result = _(list).differenceBy<TResult, {a: number}>(list, array, list, array, list, {a: 1});
result = _(list).differenceBy<TResult>(array, list, array, list, array, list, {a: 1});
}
{
let result: _.LoDashExplicitArrayWrapper<TResult>;
result = _(array).chain().differenceBy<TResult>(array);
result = _(array).chain().differenceBy<TResult>(list, array);
result = _(array).chain().differenceBy<TResult>(array, list, array);
result = _(array).chain().differenceBy<TResult>(list, array, list, array);
result = _(array).chain().differenceBy<TResult>(array, list, array, list, array);
result = _(array).chain().differenceBy<TResult>(list, array, list, array, list, array);
result = _(array).chain().differenceBy<TResult>(array, iteratee);
result = _(array).chain().differenceBy<TResult>(list, array, iteratee);
result = _(array).chain().differenceBy<TResult>(array, list, array, iteratee);
result = _(array).chain().differenceBy<TResult>(list, array, list, array, iteratee);
result = _(array).chain().differenceBy<TResult>(array, list, array, list, array, iteratee);
result = _(array).chain().differenceBy<TResult>(list, array, list, array, list, array, iteratee);
result = _(array).chain().differenceBy<TResult>(array, 'a');
result = _(array).chain().differenceBy<TResult>(list, array, 'a');
result = _(array).chain().differenceBy<TResult>(array, list, array, 'a');
result = _(array).chain().differenceBy<TResult>(list, array, list, array, 'a');
result = _(array).chain().differenceBy<TResult>(array, list, array, list, array, 'a');
result = _(array).chain().differenceBy<TResult>(list, array, list, array, list, array, 'a');
result = _(array).chain().differenceBy<TResult, {a: number}>(array, {a: 1});
result = _(array).chain().differenceBy<TResult, {a: number}>(list, array, {a: 1});
result = _(array).chain().differenceBy<TResult, {a: number}>(array, list, array, {a: 1});
result = _(array).chain().differenceBy<TResult, {a: number}>(list, array, list, array, {a: 1});
result = _(array).chain().differenceBy<TResult, {a: number}>(array, list, array, list, array, {a: 1});
result = _(array).chain().differenceBy<TResult>(list, array, list, array, list, array, {a: 1});
result = _(list).chain().differenceBy<TResult>(list);
result = _(list).chain().differenceBy<TResult>(array, list);
result = _(list).chain().differenceBy<TResult>(list, array, list);
result = _(list).chain().differenceBy<TResult>(array, list, array, list);
result = _(list).chain().differenceBy<TResult>(list, array, list, array, list);
result = _(list).chain().differenceBy<TResult>(array, list, array, list, array, list);
result = _(list).chain().differenceBy<TResult>(list, iteratee);
result = _(list).chain().differenceBy<TResult>(array, list, iteratee);
result = _(list).chain().differenceBy<TResult>(list, array, list, iteratee);
result = _(list).chain().differenceBy<TResult>(array, list, array, list, iteratee);
result = _(list).chain().differenceBy<TResult>(list, array, list, array, list, iteratee);
result = _(list).chain().differenceBy<TResult>(array, list, array, list, array, list, iteratee);
result = _(list).chain().differenceBy<TResult>(list, 'a');
result = _(list).chain().differenceBy<TResult>(array, list, 'a');
result = _(list).chain().differenceBy<TResult>(list, array, list, 'a');
result = _(list).chain().differenceBy<TResult>(array, list, array, list, 'a');
result = _(list).chain().differenceBy<TResult>(list, array, list, array, list, 'a');
result = _(list).chain().differenceBy<TResult>(array, list, array, list, array, list, 'a');
result = _(list).chain().differenceBy<TResult, {a: number}>(list, {a: 1});
result = _(list).chain().differenceBy<TResult, {a: number}>(array, list, {a: 1});
result = _(list).chain().differenceBy<TResult, {a: number}>(list, array, list, {a: 1});
result = _(list).chain().differenceBy<TResult, {a: number}>(array, list, array, list, {a: 1});
result = _(list).chain().differenceBy<TResult, {a: number}>(list, array, list, array, list, {a: 1});
result = _(list).chain().differenceBy<TResult>(array, list, array, list, array, list, {a: 1});
}
}
// _.drop
{
let array: TResult[];
+557 -17
View File
@@ -548,28 +548,568 @@ declare module _ {
difference<TValue>(...values: (TValue[]|List<TValue>)[]): LoDashExplicitArrayWrapper<TValue>;
}
//_.differenceBy DUMMY
//_.differenceBy
interface LoDashStatic {
/**
* Creates an array of unique `array` values not included in the other
* provided arrays using [`SameValueZero`](http://ecma-international.org/ecma-262/6.0/#sec-samevaluezero)
* for equality comparisons.
* This method is like _.difference except that it accepts iteratee which is invoked for each element of array
* and values to generate the criterion by which uniqueness is computed. The iteratee is invoked with one
* argument: (value).
*
* @static
* @memberOf _
* @category Array
* @param {Array} array The array to inspect.
* @param {...Array} [values] The values to exclude.
* @returns {Array} Returns the new array of filtered values.
* @example
*
* _.difference([3, 2, 1], [4, 2]);
* // => [3, 1]
* @param array The array to inspect.
* @param values The values to exclude.
* @param iteratee The iteratee invoked per element.
* @returns Returns the new array of filtered values.
*/
differenceBy(
array: any[]|List<any>,
differenceBy<T>(
array: T[]|List<T>,
values?: T[]|List<T>,
iteratee?: ((value: T) => any)|string
): T[];
/**
* @see _.differenceBy
*/
differenceBy<T, W extends Object>(
array: T[]|List<T>,
values?: T[]|List<T>,
iteratee?: W
): T[];
/**
* @see _.differenceBy
*/
differenceBy<T>(
array: T[]|List<T>,
values1?: T[]|List<T>,
values2?: T[]|List<T>,
iteratee?: ((value: T) => any)|string
): T[];
/**
* @see _.differenceBy
*/
differenceBy<T, W extends Object>(
array: T[]|List<T>,
values1?: T[]|List<T>,
values2?: T[]|List<T>,
iteratee?: W
): T[];
/**
* @see _.differenceBy
*/
differenceBy<T>(
array: T[]|List<T>,
values1?: T[]|List<T>,
values2?: T[]|List<T>,
values3?: T[]|List<T>,
iteratee?: ((value: T) => any)|string
): T[];
/**
* @see _.differenceBy
*/
differenceBy<T, W extends Object>(
array: T[]|List<T>,
values1?: T[]|List<T>,
values2?: T[]|List<T>,
values3?: T[]|List<T>,
iteratee?: W
): T[];
/**
* @see _.differenceBy
*/
differenceBy<T, W extends Object>(
array: T[]|List<T>,
values1?: T[]|List<T>,
values2?: T[]|List<T>,
values3?: T[]|List<T>,
values4?: T[]|List<T>,
iteratee?: W
): T[];
/**
* @see _.differenceBy
*/
differenceBy<T>(
array: T[]|List<T>,
values1?: T[]|List<T>,
values2?: T[]|List<T>,
values3?: T[]|List<T>,
values4?: T[]|List<T>,
iteratee?: ((value: T) => any)|string
): T[];
/**
* @see _.differenceBy
*/
differenceBy<T>(
array: T[]|List<T>,
values1?: T[]|List<T>,
values2?: T[]|List<T>,
values3?: T[]|List<T>,
values4?: T[]|List<T>,
values5?: T[]|List<T>,
iteratee?: ((value: T) => any)|string
): T[];
/**
* @see _.differenceBy
*/
differenceBy<T, W extends Object>(
array: T[]|List<T>,
values1?: T[]|List<T>,
values2?: T[]|List<T>,
values3?: T[]|List<T>,
values4?: T[]|List<T>,
values5?: T[]|List<T>,
iteratee?: W
): T[];
/**
* @see _.differenceBy
*/
differenceBy<T>(
array: T[]|List<T>,
...values: any[]
): any[];
): T[];
}
interface LoDashImplicitArrayWrapper<T> {
/**
* @see _.differenceBy
*/
differenceBy<T>(
values?: T[]|List<T>,
iteratee?: ((value: T) => any)|string
): LoDashImplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T, W extends Object>(
values?: T[]|List<T>,
iteratee?: W
): LoDashImplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
iteratee?: ((value: T) => any)|string
): LoDashImplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T, W extends Object>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
iteratee?: W
): LoDashImplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
values3?: T[]|List<T>,
iteratee?: ((value: T) => any)|string
): LoDashImplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T, W extends Object>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
values3?: T[]|List<T>,
iteratee?: W
): LoDashImplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
values3?: T[]|List<T>,
values4?: T[]|List<T>,
iteratee?: ((value: T) => any)|string
): LoDashImplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T, W extends Object>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
values3?: T[]|List<T>,
values4?: T[]|List<T>,
iteratee?: W
): LoDashImplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
values3?: T[]|List<T>,
values4?: T[]|List<T>,
values5?: T[]|List<T>,
iteratee?: ((value: T) => any)|string
): LoDashImplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T, W extends Object>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
values3?: T[]|List<T>,
values4?: T[]|List<T>,
values5?: T[]|List<T>,
iteratee?: W
): LoDashImplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T>(
...values: any[]
): LoDashImplicitArrayWrapper<T>;
}
interface LoDashImplicitObjectWrapper<T> {
/**
* @see _.differenceBy
*/
differenceBy<T>(
values?: T[]|List<T>,
iteratee?: ((value: T) => any)|string
): LoDashImplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T, W extends Object>(
values?: T[]|List<T>,
iteratee?: W
): LoDashImplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
iteratee?: ((value: T) => any)|string
): LoDashImplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T, W extends Object>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
iteratee?: W
): LoDashImplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
values3?: T[]|List<T>,
iteratee?: ((value: T) => any)|string
): LoDashImplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T, W extends Object>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
values3?: T[]|List<T>,
iteratee?: W
): LoDashImplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
values3?: T[]|List<T>,
values4?: T[]|List<T>,
iteratee?: ((value: T) => any)|string
): LoDashImplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T, W extends Object>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
values3?: T[]|List<T>,
values4?: T[]|List<T>,
iteratee?: W
): LoDashImplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
values3?: T[]|List<T>,
values4?: T[]|List<T>,
values5?: T[]|List<T>,
iteratee?: ((value: T) => any)|string
): LoDashImplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T, W extends Object>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
values3?: T[]|List<T>,
values4?: T[]|List<T>,
values5?: T[]|List<T>,
iteratee?: W
): LoDashImplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T>(
...values: any[]
): LoDashImplicitArrayWrapper<T>;
}
interface LoDashExplicitArrayWrapper<T> {
/**
* @see _.differenceBy
*/
differenceBy<T>(
values?: T[]|List<T>,
iteratee?: ((value: T) => any)|string
): LoDashExplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T, W extends Object>(
values?: T[]|List<T>,
iteratee?: W
): LoDashExplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
iteratee?: ((value: T) => any)|string
): LoDashExplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T, W extends Object>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
iteratee?: W
): LoDashExplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
values3?: T[]|List<T>,
iteratee?: ((value: T) => any)|string
): LoDashExplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T, W extends Object>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
values3?: T[]|List<T>,
iteratee?: W
): LoDashExplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
values3?: T[]|List<T>,
values4?: T[]|List<T>,
iteratee?: ((value: T) => any)|string
): LoDashExplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T, W extends Object>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
values3?: T[]|List<T>,
values4?: T[]|List<T>,
iteratee?: W
): LoDashExplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
values3?: T[]|List<T>,
values4?: T[]|List<T>,
values5?: T[]|List<T>,
iteratee?: ((value: T) => any)|string
): LoDashExplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T, W extends Object>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
values3?: T[]|List<T>,
values4?: T[]|List<T>,
values5?: T[]|List<T>,
iteratee?: W
): LoDashExplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T>(
...values: any[]
): LoDashExplicitArrayWrapper<T>;
}
interface LoDashExplicitObjectWrapper<T> {
/**
* @see _.differenceBy
*/
differenceBy<T>(
values?: T[]|List<T>,
iteratee?: ((value: T) => any)|string
): LoDashExplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T, W extends Object>(
values?: T[]|List<T>,
iteratee?: W
): LoDashExplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
iteratee?: ((value: T) => any)|string
): LoDashExplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T, W extends Object>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
iteratee?: W
): LoDashExplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
values3?: T[]|List<T>,
iteratee?: ((value: T) => any)|string
): LoDashExplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T, W extends Object>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
values3?: T[]|List<T>,
iteratee?: W
): LoDashExplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
values3?: T[]|List<T>,
values4?: T[]|List<T>,
iteratee?: ((value: T) => any)|string
): LoDashExplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T, W extends Object>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
values3?: T[]|List<T>,
values4?: T[]|List<T>,
iteratee?: W
): LoDashExplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
values3?: T[]|List<T>,
values4?: T[]|List<T>,
values5?: T[]|List<T>,
iteratee?: ((value: T) => any)|string
): LoDashExplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T, W extends Object>(
values1?: T[]|List<T>,
values2?: T[]|List<T>,
values3?: T[]|List<T>,
values4?: T[]|List<T>,
values5?: T[]|List<T>,
iteratee?: W
): LoDashExplicitArrayWrapper<T>;
/**
* @see _.differenceBy
*/
differenceBy<T>(
...values: any[]
): LoDashExplicitArrayWrapper<T>;
}
//_.differenceWith DUMMY