package io.vertx.core.http.impl;
import io.netty.buffer.ByteBuf;
import io.vertx.core.Context;
import io.vertx.core.AsyncResult;
import io.vertx.core.Handler;
import io.vertx.core.MultiMap;
import io.vertx.core.http.HttpConnection;
import io.vertx.core.http.HttpMethod;
import io.vertx.core.http.HttpVersion;
import io.vertx.core.http.StreamPriority;
import io.vertx.core.net.NetSocket;
interface HttpClientStream {
int id();
Object metric();
HttpVersion version();
HttpConnection connection();
Context getContext();
void writeHead(HttpMethod method, String rawMethod, String uri, MultiMap headers, String hostHeader, boolean chunked, ByteBuf buf, boolean end, StreamPriority priority, Handler<Void> contHandler, Handler<AsyncResult<Void>> handler);
void writeBuffer(ByteBuf buf, boolean end, Handler<AsyncResult<Void>> handler);
void writeFrame(int type, int flags, ByteBuf payload);
void doSetWriteQueueMaxSize(int size);
boolean isNotWritable();
void doPause();
void doFetch(long amount);
void reset(Throwable cause);
void beginRequest(HttpClientRequestImpl req);
void endRequest();
NetSocket createNetSocket();
StreamPriority priority();
void updatePriority(StreamPriority streamPriority);
}