From cppreference.com
booloperator==(consttype_index&rhs)constnoexcept; (1) (since C++11)booloperator!=(consttype_index&rhs)constnoexcept; (2) (since C++11)
(until C++20)booloperator<(consttype_index&rhs)constnoexcept; (3) (since C++11)booloperator<=(consttype_index&rhs)constnoexcept; (4) (since C++11)booloperator>(consttype_index&rhs)constnoexcept; (5) (since C++11)booloperator>=(consttype_index&rhs)constnoexcept; (6) (since C++11)std::strong_orderingoperator<=>(consttype_index&rhs)constnoexcept; (7) (since C++20)Compares the underlying
objects.
1,2) Checks whether the underlying
objects refer to the same type.
The != operator is
from operator==.
(since C++20)Parameters
rhs - another type_index object to compare to Return value
1)true if the underlying
objects refer to the same type, false otherwise.
2)true if the underlying
objects refer not to the same type, false otherwise.
3-6)true if the types referred by the underlying
objects are ordered by corresponding order, false otherwise.
7)std::strong_ordering::equal if the underlying
objects refer to the same type, otherwise std::strong_ordering::less if *this's underlying
object precedes rhs's in the implementation-defined ordering, otherwise std::strong_ordering::greater.