import { ValueIteratee } from './internal/baseIteratee.type.mjs';
import './internal/types.mjs';

declare function groupBy<T>(collection: T[] | null | undefined, iteratee?: ValueIteratee<T>): Record<string, T[]>;
declare function groupBy<T extends object>(collection: T | null | undefined, iteratee?: ValueIteratee<T[keyof T]>): Record<string, T[keyof T][]>;

export { groupBy as default, groupBy };
