#[cfg(feature = "model")]
use crate::builder::EditSticker;
#[cfg(feature = "model")]
use crate::http::Http;
#[cfg(feature = "model")]
use crate::internal::prelude::*;
#[cfg(feature = "model")]
use crate::model::prelude::*;
#[cfg(feature = "model")]
impl StickerId {
pub async fn delete(&self, http: impl AsRef<Http>, guild_id: impl Into<GuildId>) -> Result<()> {
guild_id.into().delete_sticker(http, self.0).await
}
pub async fn to_sticker(&self, http: impl AsRef<Http>) -> Result<Sticker> {
http.as_ref().get_sticker(self.0).await
}
pub async fn edit<F>(
&self,
http: impl AsRef<Http>,
guild_id: impl Into<GuildId>,
f: F,
) -> Result<Sticker>
where
F: FnOnce(&mut EditSticker) -> &mut EditSticker,
{
guild_id.into().edit_sticker(http, self.0, f).await
}
}