use crate::client::OkxClient;
use crate::error::Error;
use crate::model::EmptyRequest;
use crate::transport::Transport;
use super::endpoints::*;
use super::requests::*;
use super::responses::*;
pub struct Support<'a, T> {
client: &'a OkxClient<T>,
}
impl<'a, T: Transport> Support<'a, T> {
pub(crate) fn new(client: &'a OkxClient<T>) -> Self {
Self { client }
}
pub async fn get_announcements(
&self,
request: &AnnouncementsRequest<'_>,
) -> Result<Vec<AnnouncementsPage>, Error> {
self.client.get(ANNOUNCEMENTS, request, false).await
}
pub async fn get_announcement_types(&self) -> Result<Vec<AnnouncementType>, Error> {
self.client
.get(ANNOUNCEMENT_TYPES, &EmptyRequest {}, false)
.await
}
}