import type { ObjectOrInterfaceDefinition, Osdk, PropertyKeys, SimplePropertyDef } from "@osdk/api";
import type { ColumnDef } from "@tanstack/react-table";
export interface UseSelectionColumnProps {
	selectionMode?: "single" | "multiple" | "none";
	isAllSelected: boolean;
	hasSelection: boolean;
	onToggleAll: () => void;
	onToggleRow: (id: string, rowIndex: number, isShiftClick: boolean) => void;
}
export declare const useSelectionColumn: <
	Q extends ObjectOrInterfaceDefinition,
	RDPs extends Record<string, SimplePropertyDef> = Record<string, never>
>({ selectionMode, isAllSelected, hasSelection, onToggleAll, onToggleRow }: UseSelectionColumnProps) => ColumnDef<Osdk.Instance<Q, "$allBaseProperties", PropertyKeys<Q>, RDPs>> | null;
