import type { Key } from '@antdv/ui/es/types';
import type { Ref } from 'vue';
import type { SelectionItem, TableRowSelection, TransformColumns, UseSelectionConfig } from '../interface';
export declare const SELECTION_COLUMN: {};
export declare const SELECTION_ALL: "SELECT_ALL";
export declare const SELECTION_INVERT: "SELECT_INVERT";
export declare const SELECTION_NONE: "SELECT_NONE";
export type INTERNAL_SELECTION_ITEM = SelectionItem | typeof SELECTION_ALL | typeof SELECTION_INVERT | typeof SELECTION_NONE;
export default function useSelection<RecordType>(rowSelectionRef: Ref<TableRowSelection<RecordType> | undefined>, configRef: UseSelectionConfig<RecordType>): [TransformColumns<RecordType>, Ref<Set<Key>>];
