import { Bin } from '@kepler.gl/types'; import { DataContainerInterface } from './data-container-interface'; export declare const NUMERIC_BIN_COUNT = 20; export declare enum ColumnStatsType { numeric = "numeric", categorical = "categorical", boolean = "boolean", time = "time", geo = "geo", other = "other" } export type Quantile = { label: string; value: number | null; }; export type NumericColumnStats = { type: ColumnStatsType.numeric; bins: Bin[]; quantiles: Quantile[]; mean: number | null; std: number | null; percentNulls: number | null; }; export type CategoricalColumnStats = { type: ColumnStatsType.categorical; uniqueValues: number; percentNulls: number | null; }; export type TimeColumnStats = { type: ColumnStatsType.time; bins: Bin[]; min: number | null; max: number | null; percentNulls: number | null; }; export type BooleanColumnStats = { type: ColumnStatsType.boolean; }; export type GeometryColumnStats = { type: ColumnStatsType.geo; }; export type UnknownColumnStats = { type: ColumnStatsType.other; }; export type ColumnStats = NumericColumnStats | BooleanColumnStats | CategoricalColumnStats | TimeColumnStats | GeometryColumnStats | UnknownColumnStats; export declare function collectColumnValues(dataContainer: DataContainerInterface, fieldIdx: number): unknown[]; export declare function computeColumnStats(values: readonly unknown[], fieldType: string): ColumnStats; /** * Compute column statistics asynchronously so the UI can paint a loading state first. */ export declare function getColumnStatistics({ values, fieldType }: { values: readonly unknown[]; fieldType: string; }): Promise;