1#![allow(clippy::result_large_err)]
11mod client;
28pub mod constants;
29mod error;
30mod options;
31mod request;
32mod response;
33pub mod sse;
34
35pub use client::http_logger::HttpLogger;
36pub use client::HttpClient;
37pub use client::HttpClientFactory;
38pub use constants::DEFAULT_SENSITIVE_HEADER_NAMES;
39pub use error::{
40 HttpError,
41 HttpErrorKind,
42 HttpResult,
43 RetryHint,
44};
45pub use options::{
46 HttpClientOptions,
47 HttpConfigError,
48 HttpConfigErrorKind,
49 HttpLoggingOptions,
50 HttpRetryMethodPolicy,
51 HttpRetryOptions,
52 HttpTimeoutOptions,
53 ProxyOptions,
54 ProxyType,
55 SensitiveHttpHeaders,
56};
57pub use qubit_retry::{
58 RetryDelay,
59 RetryJitter,
60 RetryOptions,
61};
62pub use request::{
63 AsyncHttpHeaderInjector,
64 HttpHeaderInjector,
65 HttpRequest,
66 HttpRequestBody,
67 HttpRequestBodyByteStream,
68 HttpRequestBuilder,
69 HttpRequestInterceptor,
70 HttpRequestInterceptors,
71 HttpRequestRetryOverride,
72 HttpRequestStreamingBody,
73};
74pub use response::{
75 HttpByteStream,
76 HttpResponse,
77 HttpResponseInterceptor,
78 HttpResponseInterceptors,
79 HttpResponseMeta,
80};
81pub use tokio_util::sync::CancellationToken;