use std::time::Duration;
use nym_credentials_interface::TicketType;
use crate::ticketbooks::AvailableTicketbooks;
#[derive(Debug, Clone)]
pub struct BandwidthControllerConfig {
pub topup_interval: Duration,
pub soon_expiry_threshold: Duration,
pub nb_ticket_restock: u64,
pub min_nb_ticket_needed: u64,
pub managed_ticket_types: Vec<TicketType>,
}
impl Default for BandwidthControllerConfig {
fn default() -> Self {
Self {
topup_interval: Duration::from_secs(3 * 3600), soon_expiry_threshold: Duration::from_secs(12 * 3600), nb_ticket_restock: 20,
min_nb_ticket_needed: 5,
managed_ticket_types: AvailableTicketbooks::ticketbook_types(),
}
}
}