mod body;
#[doc(hidden)]
pub mod conn;
mod core;
mod emulation;
mod http;
mod request;
mod response;
pub mod tower_compat;
pub mod layer;
#[cfg(feature = "multipart")]
pub mod multipart;
#[cfg(any(feature = "ws-yawc", feature = "ws-fastwebsockets"))]
pub mod ws;
#[allow(unused_imports)]
pub(crate) use self::conn::{Connected, Connection};
#[cfg(feature = "http1")]
pub use self::core::http1;
#[cfg(feature = "http2")]
pub use self::core::http2;
#[cfg(feature = "boring")]
pub(crate) use self::http::ConnectIdentity;
pub use self::{
body::{AsSendBody, Body, ClientResponseBody},
conn::HttpInfo,
core::upgrade::Upgraded,
emulation::{BrowserProfile, Emulation, EmulationBuilder, EmulationFactory},
http::{
Client, ClientBuilder, HttpVersionPreference, PoolConfigOptions, ProtocolConfigOptions,
ProxyConfigOptions, TlsConfigOptions, TransportConfigOptions,
},
request::{Request, RequestBuilder},
response::Response,
};
pub(crate) use self::{
core::{Error as CoreError, ext},
http::{ConnectRequest, client::error::Error},
};