import { AutocompleteChangeDetails, AutocompleteChangeReason, AutocompleteProps } from "@mui/material"; import { SyntheticEvent } from "react"; export type ModifiedAutoCompleteProps = Omit, "onChange" | "options">; interface HybridAutoCompleteProps { autoCompleteProps: ModifiedAutoCompleteProps; options: [T, ...T[]]; totalCount: number; initialOption: NonNullable; optionsGetter: (q: string) => Promise; onValueChange?: (e: SyntheticEvent, newValue: T | null, reason: AutocompleteChangeReason, details?: AutocompleteChangeDetails) => void; } /** * Customized Autocomplete component for a mixture of server-side and client-side filtering. * * If the totalCount is larger than the passed number of options, the optionsGetter function is called * on input change to get options from a server, where the current user input is used as a query. * */ declare function HybridAutoComplete(props: HybridAutoCompleteProps): JSX.Element; export default HybridAutoComplete;