We currently use a mix of both, consolidate to the (less verbose) later.
std::is_integral<T>::value -> std::is_integral_v<T>
std::is_same<A,B>::value -> std::is_same_v<A,B>
std::decay<T>::type -> std:decay_t<T>
std::common_type<D>::type -> std::common_type_t<D>
std::is_lvalue_reference<T>::value -> std::is_lvalue_reference_v<T>
std::remove_cv<T>::type -> std::remove_cv_t<T>
std::enable_if<A,B>::type -> std::enable_if_t<A,B>
std::is_convertible<A,B>::value -> std::is_convertible_v<A,B>
std::underlying_type<T>::type -> std::underlying_type_t<T>
See https://clang.llvm.org/extra/clang-tidy/checks/modernize/type-traits.html.