1pub mod circuit_breaker;
27pub mod error;
28pub mod health;
29pub mod manager;
30pub mod storage;
31pub mod strategy;
32pub mod types;
33
34#[cfg(feature = "graph")]
35pub mod graph;
36
37#[cfg(feature = "browser")]
38pub mod browser;
39
40pub use circuit_breaker::{CircuitBreaker, STATE_CLOSED, STATE_HALF_OPEN, STATE_OPEN};
42pub use error::{ProxyError, ProxyResult};
43pub use health::{HealthChecker, HealthMap};
44pub use manager::{PoolStats, ProxyHandle, ProxyManager, ProxyManagerBuilder};
45pub use storage::MemoryProxyStore;
46pub use strategy::{
47 BoxedRotationStrategy, LeastUsedStrategy, ProxyCandidate, RandomStrategy, RotationStrategy,
48 RoundRobinStrategy, WeightedStrategy,
49};
50pub use types::{Proxy, ProxyConfig, ProxyMetrics, ProxyRecord, ProxyType};
51
52#[cfg(feature = "graph")]
53pub use graph::{BoxedProxyManager, NoopProxyManager, ProxyManagerPort};
54
55#[cfg(feature = "browser")]
56pub use browser::{BrowserProxySource, ProxyManagerBridge};