import type { SelectChangeEvent } from '@mui/material'; import type { Dispatch, SetStateAction, SyntheticEvent } from 'react'; export interface Props { readonly defaultChild?: unknown | undefined; readonly defaultOpen?: boolean | undefined; readonly defaultValue?: T | string | undefined; readonly onClose?: ((event: SyntheticEvent) => void) | undefined; readonly onOpen?: ((event: SyntheticEvent) => void) | undefined; readonly onChange?: ((event: SelectChangeEvent, child?: unknown) => void) | undefined; } export interface State { readonly child: unknown | undefined; readonly handleChange: (event: SelectChangeEvent, child?: unknown) => void; readonly handleClose: (event: SyntheticEvent) => void; readonly handleOpen: (event: SyntheticEvent) => void; readonly open: boolean; readonly setChild: Dispatch>; readonly setOpen: Dispatch>; readonly setValue: Dispatch>; readonly value: T | string; } export default function useSelect({ defaultChild, defaultOpen, defaultValue, onChange, onClose, onOpen, }?: Partial> | undefined): State;