lattice_sdk/
config.rs

1use crate::Environment;
2use std::collections::HashMap;
3use std::time::Duration;
4
5#[derive(Debug, Clone)]
6pub struct ClientConfig {
7    pub base_url: String,
8    pub api_key: Option<String>,
9    pub token: Option<String>,
10    pub username: Option<String>,
11    pub password: Option<String>,
12    pub timeout: Duration,
13    pub max_retries: u32,
14    pub custom_headers: HashMap<String, String>,
15    pub user_agent: String,
16}
17impl Default for ClientConfig {
18    fn default() -> Self {
19        Self {
20            base_url: Environment::default().url().to_string(),
21            api_key: None,
22            token: None,
23            username: None,
24            password: None,
25            timeout: Duration::from_secs(60),
26            max_retries: 3,
27            custom_headers: HashMap::new(),
28            user_agent: "Api Rust SDK".to_string(),
29        }
30    }
31}