docs: public static boolean isPropertyType(final Type type) {
          if (type instanceof GenericArrayType) {
              return isPropertyType(((GenericArrayType) type).getGenericComponentType());
          }
          if (type instanceof ParameterizedType) {
              return isPropertyType(((ParameterizedType) type).getRawType());
          }
          return type instanceof Class && isPropertyType((Class) type);
      }