//! `bext-tls` — Automatic TLS for the bext application server.
//!
//! Provides ACME certificate provisioning (Let's Encrypt / ZeroSSL),
//! self-signed dev certificates, manual cert loading, SNI-based
//! multi-domain resolution, OCSP stapling, background renewal, and a
//! SQLite-backed certificate store.

pub mod acme;
pub mod builder;
pub mod config;
pub mod mtls;
pub mod ocsp;
pub mod on_demand;
pub mod renewal;
pub mod resolver;
pub mod self_signed;
pub mod store;

// Re-export primary public types for ergonomic usage.
pub use acme::AcmeClient;
pub use builder::{build_self_signed_config, build_server_config};
pub use config::{AcmeCa, ChallengeType, MinTlsVersion, TlsConfig, TlsMode};
pub use mtls::{ClientCertInfo, MtlsConfig};
pub use ocsp::OcspStapler;
pub use on_demand::{OnDemandConfig, OnDemandProvisioner};
pub use renewal::RenewalManager;
pub use resolver::SniCertResolver;
pub use self_signed::generate_self_signed;
pub use store::{CertStore, StoredCert};
