indexed-collection
Version:
A zero-dependency library of classes that make filtering, sorting and observing changes to arrays easier and more efficient.
10 lines (8 loc) • 331 B
text/typescript
import { MultipleKeyExtract } from '../core';
export function buildMultipleKeyExtract<T = unknown, KeyT = unknown>(
getKeys: (item: T) => readonly KeyT[] | ReadonlySet<KeyT>
): MultipleKeyExtract<T, KeyT> {
const result: MultipleKeyExtract<T, KeyT> = (item: T) => getKeys(item);
result.isMultiple = true;
return result;
}