import is from '@sindresorhus/is'; import get from 'lodash/get'; export type IterateeFunc = (d: T) => Y; export type Iteratee = keyof T | IterateeFunc; export function getAccessor(iteratee: string | Iteratee): IterateeFunc { if (is.string(iteratee)) { return function fallbackIteratee(d: T): Y { return get(d, iteratee) as Y; }; } return iteratee as IterateeFunc; }