import React, { type ElementType } from 'react'; import { type SelectProps } from '@mui/material/Select'; import type { FieldFeedbackProps } from '../../FieldFeedback'; export interface SelectBaseProps extends Omit { hasError: boolean; helperText?: string; feedback?: FieldFeedbackProps | null; label: string; options: any[]; value?: any; onChange?: (value: any) => void; isOptionEqualToValue?: (option: any, value?: any) => boolean; renderOption?: (value?: any) => React.ReactNode; getOptionValue?: (value?: any) => string; isLoading?: boolean; getOptionLabel?: (option: any) => string; /** * Menu arrow rendered in `endAdornment` with the same flex alignment as clear/loading (MUI * `IconComponent` slot uses `() => null`). */ IconComponent?: ElementType; /** When true, shows a control to clear the current value. */ showClearIcon?: boolean; /** Icon for the clear control; defaults to a built-in clear glyph. */ ClearIconComponent?: ElementType; /** * When set, called instead of the default clear (`onChange(null)`). You are responsible for * updating the value (e.g. call `onChange(null)` yourself if you want the default behavior). */ onClear?: () => void; /** When true, shows a search field inside the menu to filter options by label. */ menuSearchable?: boolean; /** Placeholder for the in-menu search field. */ menuSearchPlaceholder?: string; /** * When true, the selected option shows a checkmark in the menu. * @default false */ menuHasSelectedCheckMark?: boolean; } declare const _default: React.ForwardRefExoticComponent, "ref"> & React.RefAttributes>; export default _default;