use std::sync::Arc;
use async_lock::RwLock;
use uuid::Uuid;
use crate::api::{
context::BotXApiContext,
result::BotXApiResult,
utils::request_manager::RequestManager,
v3::stickers::update_sticker_pack::models::*
};
pub async fn update_sticker_pack(context: &Arc<RwLock<BotXApiContext>>, pack_id: &Uuid, request: &UpdateStickerPackRequest) -> BotXApiResult<UpdateStickerPackResponse, UpdateStickerPackError> {
let context_read_lock = context.read().await;
let url = (context_read_lock.api.update_sticker_pack_api_builder)(&context_read_lock.cts_url, pack_id);
drop(context_read_lock);
RequestManager::put(
"Update sticker pack v3",
url,
request,
RequestManager::JSON_CONTENT_TYPE,
context,
).await
}