import { TextFieldProps as MuiTextFieldProps } from '@material-ui/core/TextField';
import { AutocompleteProps as MuiAutocompleteProps } from '@material-ui/lab/Autocomplete';
import { UseAutocompleteProps as MuiUseAutocompleteProps } from '@material-ui/lab/useAutocomplete';
import { ReactNode } from 'react';
import { FieldProps } from 'react-final-form';
export declare type AutocompleteData = {
    [key: string]: any | null;
};
export interface AutocompleteProps<T, Multiple extends boolean | undefined, DisableClearable extends boolean | undefined, FreeSolo extends boolean | undefined> extends Omit<MuiAutocompleteProps<T, Multiple, DisableClearable, FreeSolo> & MuiUseAutocompleteProps<T, Multiple, DisableClearable, FreeSolo>, 'renderInput'> {
    name: string;
    label: ReactNode;
    helperText?: string;
    required?: boolean;
    getOptionValue?: (option: T) => any;
    options: T[];
    fieldProps?: Partial<FieldProps<any, any>>;
    textFieldProps?: Partial<MuiTextFieldProps>;
}
export declare function Autocomplete<T, Multiple extends boolean | undefined, DisableClearable extends boolean | undefined, FreeSolo extends boolean | undefined>(props: AutocompleteProps<T, Multiple, DisableClearable, FreeSolo>): JSX.Element;
