import { ComputedRef, ToRefs } from 'vue';
import { TableRowT } from '../table';
import { DataTableColumnFormatter, DataTableColumnT, DataTableExpandMethod, DataTablePropsT, EffectiveDataTableColumnT } from './types.ts';
export declare const getCellValue: ({ row, column }: {
    row: TableRowT;
    column: EffectiveDataTableColumnT;
}) => any;
export declare const isEmptyCell: (cellValue: string | number | unknown) => boolean;
/**
 * 计算表头行数
 */
export declare const getTotalHeaderRows: (columns: DataTableColumnT[]) => number;
/**
 * 计算表格列数
 */
export declare const getColumnCount: (columns: DataTableColumnT[]) => number;
export declare const getGroupColumns: (options: ToRefs<DataTablePropsT> & {
    isMounted: boolean;
    columnMap: Map<string, EffectiveDataTableColumnT>;
    defaultFormatter: DataTableColumnFormatter;
}) => {
    dataColumns: EffectiveDataTableColumnT[];
    groupColumns: EffectiveDataTableColumnT[][];
};
/**
 * 计算固定列的左右定位样式
 */
export declare const getColumnPosition: (options: {
    column: EffectiveDataTableColumnT;
    dataColumns: EffectiveDataTableColumnT[];
    groupColumns: EffectiveDataTableColumnT[][];
    border?: string;
    isHeader?: boolean;
    colSpan?: number;
}) => {
    left?: string;
    right?: string;
};
/**
 * 判断当前层级是否有任何的可展开项，用于缩进对齐
 */
export declare const getIsLevelExpandable: ({ list, hasExpandSlot, expandMethod, }: {
    list?: TableRowT[];
    hasExpandSlot: ComputedRef<boolean>;
    expandMethod?: DataTableExpandMethod;
}) => {
    expandable: boolean;
    expandableRowIndexes: number[];
};
