docs: static String encodeUriComponent(String source, String encoding, Type type)
              throws UnsupportedEncodingException {
  
          if (source == null) {
              return null;
          }
          Misc.checkNotNull(encoding, "Encoding");
          Misc.checkArgument(!encoding.isEmpty(), "Encoding must not be empty");
          byte[] bytes = encodeBytes(source.getBytes(encoding), type);
          return new String(bytes, "US-ASCII");
      }