import type { GridFeatureModule, GridHost } from 'apex-grid/internal'; import type { ReactiveController } from 'lit'; /** Supported aggregation functions. */ export type AggregationFn = 'sum' | 'avg' | 'min' | 'max' | 'count'; /** Per-column aggregation request, keyed by column key. */ export type AggregationConfig = Record; /** Computed aggregation values, keyed by column key then function. */ export type AggregationResults = Record>>; export declare const AGGREGATION_MODULE_ID = "aggregation"; /** * Compute the requested aggregations for a set of rows. Pure and reusable — * shared by the {@link AggregationController} and the row-grouping feature, * which calls it per group over the (filtered) leaf rows. */ export declare function computeAggregations(data: readonly T[], config: AggregationConfig): AggregationResults; /** * Enterprise feature: computes column aggregations (sum/avg/min/max/count) over * a dataset. Implemented as a {@link GridFeatureModule} controller so it is * wired through the core extension seam and only ships in the enterprise grid. */ export declare class AggregationController implements ReactiveController { constructor(host: GridHost); hostConnected(): void; /** Compute the requested aggregations for the given rows. */ compute(data: readonly T[], config: AggregationConfig): AggregationResults; } /** Feature module registered on the enterprise grid. */ export declare const aggregationModule: GridFeatureModule;