declare class Set { add(x: any): Set; } declare class Row { reduce_row( callbackfn: (previousValue: number, currentValue: number) => number, initialValue: void ): number; reduce_row( callbackfn: (previousValue: U, currentValue: number) => U, initialValue: U ): U; } declare class Rows { reduce_rows( callbackfn: (previousValue: X, currentValue: Row) => X, initialValue: X ): X; }