skar_client/
config.rs

1use serde::{Deserialize, Serialize};
2use std::num::NonZeroU64;
3use url::Url;
4
5#[derive(Debug, Clone, Deserialize, Serialize)]
6pub struct Config {
7    /// Url of the source hypersync instance
8    pub url: Url,
9    /// Optional bearer_token to put into http requests made to source hypersync instance
10    pub bearer_token: Option<String>,
11    /// Timout treshold for a single http request in milliseconds, default is 30 seconds (30_000ms)
12    #[serde(default = "default_http_req_timeout_millis")]
13    pub http_req_timeout_millis: NonZeroU64,
14}
15
16pub fn default_http_req_timeout_millis() -> NonZeroU64 {
17    NonZeroU64::new(30000).unwrap()
18}