pub trait TradingPairAPIClient<BlockHash, DEXId, TradingPair, AssetId, LiquiditySourceType>: ClientTwhere
    BlockHash: Send + Sync + 'static + Serialize,
    DEXId: Send + Sync + 'static + Serialize,
    TradingPair: Send + Sync + 'static + DeserializeOwned,
    AssetId: Send + Sync + 'static + Serialize,
    LiquiditySourceType: Send + Sync + 'static + Serialize + DeserializeOwned,{
    // Provided methods
    fn list_enabled_pairs<'life0, 'async_trait>(
        &'life0 self,
        dex_id: DEXId,
        at: Option<BlockHash>
    ) -> Pin<Box<dyn Future<Output = Result<Vec<TradingPair>>> + Send + 'async_trait>>
       where Self: Sync + 'async_trait,
             'life0: 'async_trait { ... }
    fn is_pair_enabled<'life0, 'async_trait>(
        &'life0 self,
        dex_id: DEXId,
        base_asset_id: AssetId,
        target_asset_id: AssetId,
        at: Option<BlockHash>
    ) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>
       where Self: Sync + 'async_trait,
             'life0: 'async_trait { ... }
    fn list_enabled_sources_for_pair<'life0, 'async_trait>(
        &'life0 self,
        dex_id: DEXId,
        base_asset_id: AssetId,
        target_asset_id: AssetId,
        at: Option<BlockHash>
    ) -> Pin<Box<dyn Future<Output = Result<Vec<LiquiditySourceType>>> + Send + 'async_trait>>
       where Self: Sync + 'async_trait,
             'life0: 'async_trait { ... }
    fn is_source_enabled_for_pair<'life0, 'async_trait>(
        &'life0 self,
        dex_id: DEXId,
        base_asset_id: AssetId,
        target_asset_id: AssetId,
        source_type: LiquiditySourceType,
        at: Option<BlockHash>
    ) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>
       where Self: Sync + 'async_trait,
             'life0: 'async_trait { ... }
}Expand description
Client implementation for the TradingPairAPI RPC API.