Total deadline for a single request/response exchange, for callers that do not set their own.
Never apply it to a streaming request: reqwest counts it until the response body has finished,
so it would cut off a long but healthy stream.
How long a streaming response body may go without producing a chunk before it counts as stalled.
Applied per chunk by the caller, unlike ClientBuilder::read_timeout; see REQWEST_STREAMING_CLIENT.
How long a streaming request may take to produce response headers. Applied by the caller with
tokio::time::timeout around send(), which resolves on headers, so the body is left untimed.
For responses whose body is consumed as a stream. Carries no total or read timeout, because both
would cut off a healthy but slow stream; callers must instead bound the header wait with
STREAM_RESPONSE_HEADERS_TIMEOUT and each chunk with STREAM_IDLE_TIMEOUT.