import { AbstractTreeNode, ArtColumn, ArtColumnMergePath } from "../interfaces"; export declare const groupMetaSymbol: unique symbol; export declare const groupLevelMetaSymbol: unique symbol; export declare const groupColumnNameMetaSymbol: unique symbol; declare function groupBy(array: T[], key: string): T[][]; /** 对树状结构的数据进行分组. * layeredGroup 是一个递归的过程, * */ export declare function layeredGroup(array: T[], oldGroup: ArtColumn[], primaryKey: string | ((row: any) => string), parentKey?: string, level?: number, parentObj?: {}): T[]; /** 对树状结构的数据进行分组. * layeredGroup 是一个递归的过程, * */ export declare function layeredGroup2(array: T[], oldGroup: ArtColumn[], primaryKey: string | ((row: any) => string)): T[]; export declare class GroupUtils { static groupMetaSymbol: symbol; static groupLevelMetaSymbol: symbol; static protoMetaSymbol: symbol; static pathIndexMetaSymbol: symbol; static groupColumnNameMetaSymbol: symbol; /**分组数据(转换成二维数组)*/ static groupBy: typeof groupBy; /**设置分组下标*/ static setGroupIndex: (columns: T[]) => T[]; /**移除分组下标*/ static removeGroupIndex: (columns: T[]) => T[]; /**一个数组中进行移动数据*/ static replaceColumns: (columns: ArtColumnMergePath[], startPath: string, movePath: string) => ArtColumnMergePath[]; /**两个个数组中进行移动数据*/ static replaceColumns2: (startColumns: ArtColumnMergePath[], moveColumns: ArtColumnMergePath[], startPath: string, movePath: string, isAdd1: boolean) => { moveColumns: ArtColumnMergePath[]; startColumns: ArtColumnMergePath[]; }; } export {};