use std::sync::Arc;
use crate::client::HttpCore;
use crate::error::Result;
use crate::types::*;
#[derive(Debug, Clone)]
pub struct Kol {
pub(crate) core: Arc<HttpCore>,
}
impl Kol {
pub async fn feed(&self, params: &KolFeedParams) -> Result<KolFeedResponse> {
self.core.get("/rhc/kol/feed", params).await
}
pub async fn leaderboard(
&self,
params: &KolLeaderboardParams,
) -> Result<KolLeaderboardResponse> {
self.core.get("/rhc/kol/leaderboard", params).await
}
pub async fn hot_tokens(&self, params: &HotTokensParams) -> Result<HotTokensResponse> {
self.core.get("/rhc/kol/hot-tokens", params).await
}
pub async fn coordination(&self, params: &CoordinationParams) -> Result<CoordinationResponse> {
self.core.get("/rhc/kol/coordination", params).await
}
pub async fn first_touches(
&self,
params: &FirstTouchesParams,
) -> Result<FirstTouchesResponse> {
self.core.get("/rhc/kol/first-touches", params).await
}
pub async fn wallet(&self, wallet: &str) -> Result<KolProfileResponse> {
self.core.get(&format!("/rhc/kol/{}", wallet), &()).await
}
}