import { Field, FieldCalcs, FieldType } from '../types/dataFrame'; import { Registry, RegistryItem } from '../utils/Registry'; export declare enum ReducerID { sum = "sum", max = "max", min = "min", logmin = "logmin", mean = "mean", variance = "variance", stdDev = "stdDev", last = "last", median = "median", first = "first", count = "count", countAll = "countAll", range = "range", diff = "diff", diffperc = "diffperc", delta = "delta", step = "step", firstNotNull = "firstNotNull", lastNotNull = "lastNotNull", changeCount = "changeCount", distinctCount = "distinctCount", allIsZero = "allIsZero", allIsNull = "allIsNull", allValues = "allValues", uniqueValues = "uniqueValues", p1 = "p1", p2 = "p2", p3 = "p3", p4 = "p4", p5 = "p5", p6 = "p6", p7 = "p7", p8 = "p8", p9 = "p9", p10 = "p10", p11 = "p11", p12 = "p12", p13 = "p13", p14 = "p14", p15 = "p15", p16 = "p16", p17 = "p17", p18 = "p18", p19 = "p19", p20 = "p20", p21 = "p21", p22 = "p22", p23 = "p23", p24 = "p24", p25 = "p25", p26 = "p26", p27 = "p27", p28 = "p28", p29 = "p29", p30 = "p30", p31 = "p31", p32 = "p32", p33 = "p33", p34 = "p34", p35 = "p35", p36 = "p36", p37 = "p37", p38 = "p38", p39 = "p39", p40 = "p40", p41 = "p41", p42 = "p42", p43 = "p43", p44 = "p44", p45 = "p45", p46 = "p46", p47 = "p47", p48 = "p48", p49 = "p49", p50 = "p50", p51 = "p51", p52 = "p52", p53 = "p53", p54 = "p54", p55 = "p55", p56 = "p56", p57 = "p57", p58 = "p58", p59 = "p59", p60 = "p60", p61 = "p61", p62 = "p62", p63 = "p63", p64 = "p64", p65 = "p65", p66 = "p66", p67 = "p67", p68 = "p68", p69 = "p69", p70 = "p70", p71 = "p71", p72 = "p72", p73 = "p73", p74 = "p74", p75 = "p75", p76 = "p76", p77 = "p77", p78 = "p78", p79 = "p79", p80 = "p80", p81 = "p81", p82 = "p82", p83 = "p83", p84 = "p84", p85 = "p85", p86 = "p86", p87 = "p87", p88 = "p88", p89 = "p89", p90 = "p90", p91 = "p91", p92 = "p92", p93 = "p93", p94 = "p94", p95 = "p95", p96 = "p96", p97 = "p97", p98 = "p98", p99 = "p99" } export declare function getFieldTypeForReducer(id: ReducerID, fallback: FieldType): FieldType; export declare function isReducerID(id: string): id is ReducerID; type FieldReducer = (field: Field, ignoreNulls: boolean, nullAsZero: boolean) => FieldCalcs; export interface FieldReducerInfo extends RegistryItem { emptyInputResult?: unknown; standard: boolean; preservesUnits: boolean; reduce?: FieldReducer; } interface ReduceFieldOptions { field: Field; reducers: string[]; } /** * @returns an object with a key for each selected stat * NOTE: This will also modify the 'field.state' object, * leaving values in a cache until cleared. */ export declare function reduceField(options: ReduceFieldOptions): FieldCalcs; export declare const fieldReducers: Registry; export declare const defaultCalcs: FieldCalcs; export declare function doStandardCalcs(field: Field, ignoreNulls: boolean, nullAsZero: boolean): FieldCalcs; export {};