Amend a few tests and types for linting.

This commit is contained in:
Jamie Sykes
2019-03-05 22:51:45 +00:00
parent 9929fd321f
commit fa2d5d5e91
2 changed files with 5 additions and 11 deletions

View File

@@ -41,11 +41,7 @@ collection.last(); // $ExpectType { name: string; age: number; }
collection.map(stark => stark.name); // $ExpectType Collection<{ name: string; age: number; }>
collection.pluck('name'); // $ExpectType Collection<{ name: string; age: number; }>
collection.push({name: 'Robb Stark', age: 17}); // $ExpectType Collection<{ name: string; age: number; }>
const value = new Collection([1, 2, 3]).reduce(
(previous, current) => previous + current,
0
); // $ExpectType number
const value = new Collection([1, 2, 3]).reduce((previous, current) => previous + current, 0); // $ExpectType number
collection.reject(stark => stark.age < 14); // $ExpectType Collection<{ name: string; age: number; }>
collection.remove({name: 'Robb Stark', age: 17}); // $ExpectType boolean
collection.reverse(); // $ExpectType Collection<{ name: string; age: number; }>
@@ -56,9 +52,7 @@ collection.sortBy('name'); // $ExpectType Collection<{ name: string; age: number
collection.stringify(); // $ExpectType string
collection.sum('age'); // $ExpectType any
collection.take(2); // $ExpectType Collection<{ name: string; age: number; }>
// Collection.macro('addToMembers', (collection, n) => collection.map((collectionItem: any) => collectionItem + n));
// const collection2 = new Collection([1,2,3,4]).addToMembers(3);
Collection.macro('addToMembers', (collection, n) => collection.map((collectionItem: any) => collectionItem + n));
collection.unique(stark => stark.age); // $ExpectType Collection<{ name: string; age: number; }>
collection.values(); // $ExpectType Collection<{ name: string; age: number; }>

View File

@@ -36,12 +36,12 @@ export default class Collection<T> {
sort(compare?: () => boolean): Collection<T>;
sortBy(property: string, order?: string): Collection<T>;
stringify(): string;
sum(property: T extends object ? keyof T : never): number
sum(property: T extends object ? keyof T : never): number;
take(count: number): Collection<T>;
static macro(name: string, callback: (coll: Collection<unknown>, ...args: unknown[]) => unknown): void;
unique(callback?: string|null|((item: T) => any)): Collection<T>;
values(): Collection<T>;
where<K extends keyof T>(key: K, value: T[K]): Collection<T>
where(callback: (item: T) => boolean): Collection<T>
where<K extends keyof T>(key: K, value: T[K]): Collection<T>;
where(callback: (item: T) => boolean): Collection<T>;
zip(array: T[]|Collection<T>): Collection<T>;
}