import type { NullsPlacement, SortMethod, SortParam } from '../common/interface';
import type { CellData } from '../data-set/cell-data';
import type { PivotMeta, SortActionParams, SortPivotMetaParams } from '../data-set/interface';
export declare const isAscSort: (sortMethod: SortMethod) => boolean;
export declare const isDescSort: (sortMethod: SortMethod) => boolean;
/**
 * 执行排序
 * @param list - 待排序数组
 * @param sortMethod - 升、降序
 * @param key - 根据key数值排序，如果有key代表根据维度值排序，故按数字排，如果没有按照字典排
 * @param nullsPlacement - 空值排序位置，默认为 'last'（空值永远在最后）
 */
export declare const sortAction: (list: (number | string)[] | CellData[], sortMethod?: SortMethod, key?: string, nullsPlacement?: NullsPlacement) => (string | number)[] | CellData[];
export declare const sortByCustom: (params: SortActionParams) => string[];
export declare const sortByFunc: (params: SortActionParams) => string[];
/**
 * 获取 “按数值排序” 的排序参考数据
 *
 * 本函数可用以下结构的交叉表理解
 * rows：province、city
 * cols：type、subType
 * vals：price、account
 */
export declare const getSortByMeasureValues: (params: SortActionParams) => CellData[];
export declare const handleSortAction: (params: SortActionParams) => string[];
export declare const getSortTypeIcon: (sortParam: SortParam | undefined, isSortCell?: boolean) => "groupAsc" | "groupDesc" | "SortDown" | undefined;
/**
 * 对 pivot meta 中的内容进行排序，返回新的 sorted pivot meta
 */
export declare const getSortedPivotMeta: (params: SortPivotMetaParams) => PivotMeta;
