#[cfg(feature = "file-watch")]
pub mod discovery;
pub mod engine;
pub mod fallback;
pub mod keyword;
pub mod knowledge_graph;
pub mod metrics;
pub mod registry;
pub mod strategy;
pub mod types;
#[cfg(feature = "file-watch")]
pub use discovery::ProviderDirectoryWatcher;
pub use engine::{Router, RoutingEngine};
pub use fallback::{FallbackRouter, FallbackStrategy};
pub use keyword::KeywordRouter;
pub use knowledge_graph::KnowledgeGraphRouter;
pub use metrics::{RouterMetrics, Timer};
#[cfg(feature = "persistence")]
pub use registry::PersistedProviderRegistry;
pub use registry::{ProviderRegistry, RegistryEvent};
pub use strategy::{
CapabilityFirst, CostOptimized, LatencyOptimized, PreferenceFilter, RoundRobin,
RoutingStrategy, StrategyRegistry, WeightedStrategy,
};
pub use types::{RoutingContext, RoutingDecision, RoutingError, RoutingResult};
pub use terraphim_types::capability::{Capability, CostLevel, Latency, Provider, ProviderType};