/** * Copyright (c) 2017 mol* contributors, licensed under MIT, See LICENSE file for more info. * * @author David Sehnal */ import { Column } from '../db/column.js'; export interface Grouping { map: Map; keys: ReadonlyArray; groups: ReadonlyArray>; } declare class GroupingImpl { private getKey; readonly map: Map; readonly keys: K[]; readonly groups: V[][]; add(a: V): void; getGrouping(): Grouping; constructor(getKey: (v: V) => K); } export declare function Grouper(getKey: (x: V) => K): GroupingImpl; export declare function groupBy(values: ArrayLike | Column, getKey: (x: V) => K): Grouping; export {};