type Identifiable = { id: string | number; }; type ItemSelection = { selectedItems: T[]; isSelectedItem: (item: T) => boolean; toggleSelectedItem: (item: T) => void; resetSelectedItems: () => void; setSelectedItems: (items: T[]) => void; }; type Props = { getItemIdentifier?: (item: T) => string | number; previousSelected?: T[]; }; export default function useItemSelection({ getItemIdentifier: getItemIdentifierProp, previousSelected, }?: Props): ItemSelection; export {};