docs: public static <S,T> Future<T> collect(Future<S> self, @ClosureParams(FirstParam.FirstGenericType.class) Closure<T> transform) {
          Objects.requireNonNull(self);
          Objects.requireNonNull(transform);
          return new TransformedFuture<T>(self, transform);
      }