/** * @template T * @param {boolean} [nonReactive=false] - use a non-reactive placeholder to allow multiple selection and keep context shallow * @returns {SingleSelectionContext} */ export function createSingleSelectionContext(nonReactive?: boolean): SingleSelectionContext; /** * @template T * @param {(value: T|null) => void} callback * @returns {(open: boolean, v?: T) => SingleSelectionContext} */ export function useSingleSelection(callback: (value: T | null) => void): (open: boolean, v?: T) => SingleSelectionContext; export type SingleSelectionContext = { value?: (T | null) | undefined; };