import { Model } from "../../model"; import type * as p from "../../core/properties"; export declare namespace GroupBy { type Attrs = p.AttrsOf; type Props = Model.Props; } export interface GroupBy extends GroupBy.Attrs { } export declare abstract class GroupBy extends Model { properties: GroupBy.Props; constructor(attrs?: Partial); abstract query_groups(models: Iterable, pool: Iterable): Iterable; } export declare namespace GroupByModels { type Attrs = p.AttrsOf; type Props = GroupBy.Props & { groups: p.Property; }; } export interface GroupByModels extends GroupByModels.Attrs { } export declare class GroupByModels extends GroupBy { properties: GroupByModels.Props; constructor(attrs?: Partial); query_groups(models: Iterable, _pool: Iterable): Iterable; } export declare namespace GroupByName { type Attrs = p.AttrsOf; type Props = GroupBy.Props; } export interface GroupByName extends GroupByName.Attrs { } export declare class GroupByName extends GroupBy { properties: GroupByName.Props; constructor(attrs?: Partial); query_groups(models: Model[], pool: Model[]): Iterable; } //# sourceMappingURL=group_by.d.ts.map