docs: @SuppressWarnings("unchecked")
    public <S, D> TypeMap<S, D> get(Class<S> sourceType, Class<D> destinationType, String typeMapName) {
      TypeMap<S, D> typeMap = (TypeMap<S, D>) typeMaps.get(TypePair.of(sourceType, destinationType, typeMapName));
      if (typeMap != null)
        return typeMap;
  
      for (TypePair<?, ?> typePair : getPrimitiveWrapperTypePairs(sourceType, destinationType, typeMapName)) {
        typeMap = (TypeMap<S, D>) typeMaps.get(typePair);
        if (typeMap != null)
          return typeMap;
      }
  
      return null;
    }