pub mod analytics;
pub mod assets;
pub mod fetch;
pub mod health;
pub mod pair;
pub mod patterns;
#[doc(no_inline)]
pub use crate::metrics as series;
pub mod traits;
pub mod types;
pub mod configurable_client;
mod default_venue;
pub mod descriptor;
pub mod exchange;
pub mod registry;
pub mod venue;
#[cfg(any(test, feature = "test-support"))]
pub mod testing {
use super::{ExchangeClient, VenueRegistry};
pub fn venue_at(id: &str, base_url: &str) -> ExchangeClient {
let mut desc = VenueRegistry::load()
.expect("built-in venues load")
.get(id)
.unwrap_or_else(|| panic!("no built-in venue {id}"))
.clone();
desc.base_url = base_url.to_string();
ExchangeClient::from_descriptor_with_http(&desc, crate::http::test_transport())
}
}
mod orderbook;
pub use configurable_client::ConfigurableExchangeClient;
pub use default_venue::DEFAULT_VENUE;
pub use descriptor::VenueDescriptor;
pub use exchange::ExchangeClient;
#[allow(deprecated)]
pub use fetch::{
DexAnalyticsSource, fetch_book_and_volume, fetch_pattern_trades, fetch_summary,
fetch_token_summary, fetch_token_summary_by_name, fetch_token_summary_by_name_with_http,
most_liquid,
};
pub use orderbook::{
BookSide, BookSource, Candle, ExecutionEstimate, ExecutionSide, HealthCheck, HealthOverrides,
HealthThresholds, MarketSnapshot, MarketSummary, OhlcClient, OrderBook, OrderBookClient,
OrderBookLevel, Ticker, TickerClient, Trade, TradeHistoryClient, TradeSide,
order_book_from_analytics,
};
pub use pair::{DEFAULT_PAIR, Pair};
pub use registry::VenueRegistry;
pub use venue::{DexVenue, MarketVenue, VENUE_HELP, VenueKind, VenueListing};