//! Tracker use crate::{authenticated::discovery::config::Bootstrapper, Ingress}; use commonware_cryptography::Signer; use std::{num::NonZeroUsize, time::Duration}; mod actor; mod bit_set; mod directory; pub(crate) mod ingress; mod metadata; mod metrics; mod record; mod reservation; pub use actor::Actor; pub use ingress::{Message, Oracle}; pub use metadata::Metadata; pub use reservation::Reservation; #[derive(Clone, Debug)] pub struct Config { pub crypto: C, pub namespace: Vec, pub address: Ingress, pub bootstrappers: Vec>, pub allow_private_ips: bool, pub allow_dns: bool, pub synchrony_bound: Duration, pub tracked_peer_sets: NonZeroUsize, pub max_peer_set_size: u64, pub peer_connection_cooldown: Duration, pub peer_gossip_max_count: usize, pub dial_fail_limit: usize, pub block_duration: Duration, }