import DataFrame from "./DataFrame"; import { ns_arr, Obj, GP } from './interfaces'; import Series from './Series'; import Index from './Index'; declare class GroupByThen implements Iterable<[DataFrame, T | T[], number]> { gp: GP; axis: 0 | 1; df: DataFrame; labels: ns_arr | null; index: Index; constructor(gp: GP, axis: 0 | 1, df: DataFrame, labels: ns_arr | null, index: Index); private _get_keep_labels; private _prepare; then(func: (group: DataFrame, key: T | T[], i: number) => void): void; [Symbol.iterator](): Generator<[DataFrame, T | T[], number], any, unknown>; reduce(func: (a: T[]) => T): DataFrame; private _reduce_num; min(): Series; max(): Series; sum(): Series; mean(): Series; median(): Series; std(): Series; var(): Series; mode(): Series; prod(): Series; } declare function _sortIndices(arr: S[] | S[][], multiple: boolean, ascending: boolean | boolean[]): number[]; declare function findUnquotedAt(str: string): number[]; declare class Rolling { private df; private window; private min_periods; private center; private closed; private step; private axis; wins: (DataFrame | typeof NaN)[]; labels: (string | number)[]; constructor(df: DataFrame, window: number, min_periods?: number, center?: boolean, closed?: 'left' | 'right' | 'both' | 'neither', step?: number, axis?: 0 | 1); apply(fn2: ((vals: number[]) => number) | string, keepNaN?: boolean): DataFrame; sum(): DataFrame; } declare class SeriesRolling { private df; private window; private min_periods; private center; private closed; private step; roll: Rolling; constructor(df: DataFrame, window: number, min_periods?: number, center?: boolean, closed?: 'left' | 'right' | 'both' | 'neither', step?: number); apply(fn2: ((vals: number[]) => number) | string, keepNaN?: boolean): Series; sum(): Series; } export { Obj, GP, GroupByThen, _sortIndices, findUnquotedAt, Rolling, SeriesRolling };