import { ComputedRef, Ref } from 'vue';
import { TableSelectionOptions } from '../../types/TableSchema';
export interface UseTableSelectionOptions<T> extends TableSelectionOptions<T> {
    cleanData?: (item: T) => T;
    data: Ref<T[]> | ComputedRef<T[]>;
}
export declare function useTableSelection<T extends {
    [key: string]: any;
}>(options: UseTableSelectionOptions<T>): {
    computedSelectedItems: ComputedRef<string[]>;
    isSelectable: ComputedRef<boolean>;
    allSelectorEl: Ref<HTMLInputElement | undefined, HTMLInputElement | undefined>;
    updateAllSelectorState: () => void;
    toggleSelectItem: (item: T, event?: MouseEvent) => void;
    toggleSelectAll: (event: Event) => void;
};
//# sourceMappingURL=useTableSelection.d.ts.map