1#![allow(clippy::result_large_err)]
11mod client;
28pub mod constants;
29mod content_type;
30mod error;
31mod options;
32mod request;
33mod response;
34mod sanitize;
35pub mod sse;
36
37pub use client::http_logger::HttpLogger;
38pub use client::HttpClient;
39pub use client::HttpClientFactory;
40pub use error::{
41 HttpError,
42 HttpErrorKind,
43 HttpResult,
44 RetryHint,
45};
46pub use options::{
47 HttpClientOptions,
48 HttpConfigError,
49 HttpConfigErrorKind,
50 HttpLoggingOptions,
51 HttpRetryMethodPolicy,
52 HttpRetryOptions,
53 HttpTimeoutOptions,
54 ProxyOptions,
55 ProxyType,
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 HttpResponseInterceptorContext,
79 HttpResponseInterceptors,
80 HttpResponseMeta,
81};
82pub use sanitize::{
83 LogSanitizePolicy,
84 LogSanitizer,
85};
86pub use tokio_util::sync::CancellationToken;