1pub mod macros;
17pub mod meta;
18
19#[cfg(feature = "health")]
20pub mod health;
21#[cfg(feature = "lifecycle")]
22pub mod lifecycle;
23#[cfg(feature = "observer")]
24pub mod observer;
25
26#[cfg(feature = "async")]
27pub use meta::AsyncAutoBuilder;
28pub(crate) use meta::BuildFn;
29pub use meta::{AutoBuilder, ModuleMeta};
30#[cfg(feature = "interface")]
31pub use meta::{Interface, InterfaceBuilder};
32
33#[cfg(all(feature = "lifecycle", feature = "async"))]
34pub use lifecycle::AsyncLifecycle;
35#[cfg(feature = "lifecycle")]
36pub use lifecycle::Lifecycle;
37
38#[cfg(all(feature = "health", feature = "async"))]
39pub use health::AsyncHealthCheck;
40#[cfg(feature = "health")]
41pub use health::{HealthCheck, HealthStatus};
42
43#[cfg(feature = "observer")]
44pub use observer::BuildObserver;