1pub mod cache;
6pub mod detector;
7pub mod dns;
8pub mod error;
9pub mod threat;
10
11pub use detector::{DomainStatus, EmailStatus, MailGuard, MailGuardConfig};
12pub use error::MailGuardError;
13pub use threat::ThreatType;
14
15pub async fn check_email(email: &str) -> Result<EmailStatus, MailGuardError> {
30 let detector = MailGuard::new();
31 detector.check_email(email).await
32}
33
34pub async fn check_domain(domain: &str) -> Result<DomainStatus, MailGuardError> {
36 let detector = MailGuard::new();
37 detector.check_domain(domain).await
38}
39
40pub async fn check_emails_batch(emails: &[&str]) -> Vec<Result<EmailStatus, MailGuardError>> {
42 let detector = MailGuard::new();
43 detector.check_emails_batch(emails).await
44}