import type { CSSProperties, Ref } from 'vue'; import type { TableV2Props } from '../table'; import type { AnyColumns, Column, KeyType } from '../types'; declare function useColumns(props: TableV2Props, columns: Ref, fixed: Ref): { columns: Ref; columnsStyles: import("@vue/reactivity").ComputedRef>; columnsTotalWidth: import("@vue/reactivity").ComputedRef; fixedColumnsOnLeft: import("@vue/reactivity").ComputedRef[]>; fixedColumnsOnRight: import("@vue/reactivity").ComputedRef[]>; hasFixedColumns: import("@vue/reactivity").ComputedRef; mainColumns: import("@vue/reactivity").ComputedRef; normalColumns: import("@vue/reactivity").ComputedRef[]>; visibleColumns: import("@vue/reactivity").ComputedRef[]>; getColumn: (key: KeyType) => Column | undefined; getColumnStyle: (key: KeyType) => CSSProperties; updateColumnWidth: (column: Column, width: number) => void; onColumnSorted: (e: MouseEvent) => void; }; export { useColumns }; export declare type UseColumnsReturn = ReturnType;