React-компоненты как дженерики

Я довольно давно использую и TypeScript, и React. Но мне никогда не приходило в голову, что React-компонент может быть дженериком. В смысле, компонент может принимать дженерик-параметр в угловых скобках <> прямо внутри TSX:

export default () => (
  <Select<ColourOption | FlavourOption, false, GroupedOption>
    defaultValue={colourOptions[1]}
    options={groupedOptions}
    formatGroupLabel={formatGroupLabel}
  />
);

Нашёл этот пример в исходниках react-select.