import { Autocomplete, AutocompleteProps } from '@material-ui/lab'; import { expectType } from '@material-ui/types'; interface MyAutocomplete< T, Multiple extends boolean | undefined, DisableClearable extends boolean | undefined, FreeSolo extends boolean | undefined > extends AutocompleteProps { myProp?: string; } function MyAutocomplete< T, Multiple extends boolean | undefined, DisableClearable extends boolean | undefined, FreeSolo extends boolean | undefined >(props: MyAutocomplete) { return ; } // multiple prop can be assigned for components that extend AutocompleteProps { expectType(value); }} renderInput={() => null} multiple />;