import { SeriesData, NullValueMode } from '../types/index'; export declare enum ReducerID { sum = "sum", max = "max", min = "min", logmin = "logmin", mean = "mean", last = "last", first = "first", count = "count", range = "range", diff = "diff", delta = "delta", step = "step", changeCount = "changeCount", distinctCount = "distinctCount", allIsZero = "allIsZero", allIsNull = "allIsNull" } export interface FieldCalcs { [key: string]: any; } declare type FieldReducer = (data: SeriesData, fieldIndex: number, ignoreNulls: boolean, nullAsZero: boolean) => FieldCalcs; export interface FieldReducerInfo { id: string; name: string; description: string; alias?: string; emptyInputResult?: any; standard: boolean; reduce?: FieldReducer; } /** * @param ids list of stat names or null to get all of them */ export declare function getFieldReducers(ids?: string[]): FieldReducerInfo[]; interface ReduceFieldOptions { series: SeriesData; fieldIndex: number; reducers: string[]; nullValueMode?: NullValueMode; } /** * @returns an object with a key for each selected stat */ export declare function reduceField(options: ReduceFieldOptions): FieldCalcs; export {};