@Experimental
  default @NotNull QueryExecutor<Result, Param> wrap(@NotNull QueryWrapper<Result> wrapper) {
    return (queryParameters, consumer) -> wrapper.wrapExecution(c -> execute(queryParameters, c), consumer);
  }
@Experimental
  default @NotNull QueryExecutor<Result, Param> wrap(@NotNull QueryWrapper<Result> wrapper)