//! The [`TypedResponse`] wrapper — a deserialized body paired with HTTP metadata.
use HeaderValue;
use ;
/// A response with both the deserialized body and HTTP metadata.
///
/// Returned by [`Client::call_full`](crate::Client::call_full) and
/// [`RequestBuilder::send_full`](crate::RequestBuilder::send_full).
///
/// # Example
///
/// ```ignore
/// let resp = client.call_full::<GetUserEndpoint>((42u32,)).await?;
/// println!("status: {}", resp.status);
/// println!("user: {:?}", resp.body);
/// if let Some(etag) = resp.header("etag") {
/// println!("etag: {etag:?}");
/// }
/// ```