use std::time::Duration;
mod compare;
mod delegation;
mod dnssec;
mod follow;
mod nameserver;
mod propagation;
mod query;
mod records;
mod resolver;
#[cfg(test)]
pub(crate) mod test_support;
mod trace;
mod transport;
pub use compare::{DnsComparator, DnsComparison, ServerResult};
pub(crate) use delegation::is_local_no_route;
pub use delegation::{DelegationChecker, DelegationReport, DnsNameservers, LameKind, LameNs};
pub use dnssec::{AuthenticationTier, DnskeyInfo, DnssecChecker, DnssecReport, DsInfo};
pub use follow::{
DnsFollower, FollowConfig, FollowIteration, FollowProgressCallback, FollowResult,
MAX_FOLLOW_INTERVAL_SECS, MAX_FOLLOW_ITERATIONS,
};
pub use nameserver::{NameserverProtocol, NameserverSpec};
pub use propagation::{
ConsensusValue, DnsServer, Inconsistency, NameserverDetails, NameserverIpInconsistency,
PropagationChecker, PropagationResult, PropagationServerResult, PropagationVerdict,
ServerVerdict, UnreachableServer,
};
pub use query::{DnsQueryResult, DnsStatus, FailedType, WildcardProbe};
pub(crate) use query::random_probe_label;
pub use records::{DnsRecord, RecordData, RecordType, SvcParam};
pub use resolver::{DnsPresence, DnsResolver};
pub use trace::{DnsTrace, DnsTracer, TraceHop};
pub(crate) use resolver::apply_standard_opts;
pub(crate) const DEFAULT_DNS_TIMEOUT: Duration = Duration::from_secs(5);