docs: @Nonnull
    public Query select(FieldPath... fieldPaths) {
      QueryOptions newOptions = new QueryOptions(options);
      newOptions.fieldProjections = new ArrayList<>();
  
      if (fieldPaths.length == 0) {
        fieldPaths = new FieldPath[] {FieldPath.DOCUMENT_ID};
      }
  
      for (FieldPath path : fieldPaths) {
        FieldReference fieldReference =
            FieldReference.newBuilder().setFieldPath(path.getEncodedPath()).build();
        newOptions.fieldProjections.add(fieldReference);
      }
  
      return new Query(firestore, path, newOptions);
    }