import { FormOption, FormOptionsControlProps } from '../../../../types'; import { NativeSelectProps as MuiNativeSelectProps, SelectProps as MuiSelectProps } from '@mui/material'; import { FieldPath, FieldValues, PathValue } from 'react-hook-form'; import { InputWidthVariant } from '../../../../functions'; type SelectProps = Omit, 'onChange' | 'id' | 'name' | 'value' | 'input' | 'native'>; type NativeSelectProps = Omit; type SharedFormSelectProps, TOptionValue = PathValue, TOption = FormOption> = FormOptionsControlProps, TOptionValue, TOption> & { onChange?: (value: PathValue | null) => void; emptyValueLabel?: string | null; alwaysShowEmptyValue?: boolean; defaultValue?: PathValue; native?: boolean | 'mobile' | 'tablet'; inputWidth?: InputWidthVariant; }; export type FormSelectProps = FieldPath, TOptionValue = PathValue, TOption = FormOption> = SharedFormSelectProps & SelectProps & NativeSelectProps; export declare const FormSelect: = FieldPath, TOptionValue = PathValue, TOption = FormOption>({ id: suppliedId, name, options, onChange, native, IconComponent, label, rules, shouldUnregister, helpMessage, errorMode, emptyValueLabel, defaultValue, alwaysShowEmptyValue, infoTooltipProps, inputWidth, sx, getOptionKey, getOptionValue, getOptionLabel, getOptionHelpMessage, isOptionDisabled, areOptionValuesEqual, ...selectProps }: FormSelectProps) => import("@emotion/react/jsx-runtime").JSX.Element; export type FormNativeSelectProps = FieldPath, TOptionValue = PathValue, TOption = FormOption> = Omit, 'native'> & NativeSelectProps; export declare const FormNativeSelect: = FieldPath, TOptionValue = PathValue, TOption = FormOption>(props: FormNativeSelectProps) => import("@emotion/react/jsx-runtime").JSX.Element; export {};