mihaifm / linq

linq.js - LINQ for JavaScript

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Type inference for .toObject

sykire opened this issue · comments

From:

toObject(keySelector: (element: T) => any, elementSelector?: (element: T) => any): Object;

To:

toObject<TKey, TElement>(keySelector: (element: T) => TKey, elementSelector?: (element: T) => TElement): Record<TKey, TElement>;

Thanks, I will fix this in the next version.

I've forgot that keys can be only of PropertyKey, so TKey extends PropertyKey is necessary.

toObject<TKey extends PropertyKey, TElement>( keySelector: (element: T) => TKey, elementSelector?: (element: T) => TElement): Record<TKey, TElement>;

Fixed in version 4.0.0. Thanks for the suggestion.