using System.IO; using System.Net.Http.Headers; using System.Threading; using System.Threading.Tasks; namespace System.Net.Http; public interface IHttpClient { event EventHandler EventEmitted; Uri BaseAddress { get; set; } HttpRequestHeaders DefaultRequestHeaders { get; } long MaxResponseContentBufferSize { get; set; } TimeSpan Timeout { get; set; } void CancelPendingRequests(); Task DeleteAsync(string requestUri); Task DeleteAsync(string requestUri, CancellationToken cancellationToken); Task DeleteAsync(Uri requestUri); Task DeleteAsync(Uri requestUri, CancellationToken cancellationToken); Task GetAsync(string requestUri); Task GetAsync(string requestUri, HttpCompletionOption completionOption); Task GetAsync(string requestUri, HttpCompletionOption completionOption, CancellationToken cancellationToken); Task GetAsync(string requestUri, CancellationToken cancellationToken); Task GetAsync(Uri requestUri); Task GetAsync(Uri requestUri, HttpCompletionOption completionOption); Task GetAsync(Uri requestUri, HttpCompletionOption completionOption, CancellationToken cancellationToken); Task GetAsync(Uri requestUri, CancellationToken cancellationToken); Task GetByteArrayAsync(string requestUri); Task GetByteArrayAsync(Uri requestUri); Task GetStreamAsync(string requestUri); Task GetStreamAsync(Uri requestUri); Task GetStringAsync(string requestUri); Task GetStringAsync(Uri requestUri); Task PostAsync(string requestUri, HttpContent content); Task PostAsync(string requestUri, HttpContent content, CancellationToken cancellationToken); Task PostAsync(Uri requestUri, HttpContent content); Task PostAsync(Uri requestUri, HttpContent content, CancellationToken cancellationToken); Task PutAsync(string requestUri, HttpContent content); Task PutAsync(string requestUri, HttpContent content, CancellationToken cancellationToken); Task PutAsync(Uri requestUri, HttpContent content); Task PutAsync(Uri requestUri, HttpContent content, CancellationToken cancellationToken); Task SendAsync(HttpRequestMessage request); Task SendAsync(HttpRequestMessage request, HttpCompletionOption completionOption); Task SendAsync(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationToken cancellationToken); Task SendAsync(HttpRequestMessage request, CancellationToken cancellationToken); }