use std::time::Duration;

#[derive(Clone, Debug)]
pub struct SocketIoConfig {
    pub path: String,
    pub ping_interval: Duration,
    pub ping_timeout: Duration,
    pub connect_timeout: Duration,
    pub ack_timeout: Duration,
    pub max_payload: usize,
}

impl Default for SocketIoConfig {
    fn default() -> Self {
        Self {
            path: "/socket.io/".to_owned(),
            ping_interval: Duration::from_millis(25_000),
            ping_timeout: Duration::from_millis(20_000),
            connect_timeout: Duration::from_millis(45_000),
            ack_timeout: Duration::from_secs(10),
            max_payload: 1_000_000,
        }
    }
}
