clmm_lp_protocols/lib.rs
1//! Protocol adapters and interfaces.
2/// Orca protocol adapter.
3pub mod orca;
4/// Data parsers.
5pub mod parsers;
6/// Raydium protocol adapter.
7pub mod raydium;
8/// RPC utilities.
9pub mod rpc;
10/// Solana client wrapper.
11pub mod solana_client; // Whirlpools
12
13use anyhow::Result;
14use async_trait::async_trait;
15use clmm_lp_domain::entities::pool::Pool;
16
17/// Trait for fetching pool data.
18#[async_trait]
19pub trait PoolFetcher {
20 /// Fetches pool data by address.
21 async fn fetch_pool(&self, pool_address: &str) -> Result<Pool>;
22}