using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using NewRock.Sdk.Manage.Request;
using NewRock.Sdk.Manage.Response;

namespace NewRock.Sdk
{
    public partial interface INewRockClient
    {
        #region 语音管理命令

        /// <summary>
        /// 查询语音文件
        /// </summary>
        /// <param name="request"></param>
        /// <param name="key"></param>
        /// <param name="expired"></param>
        /// <param name="cancellationToken"></param>
        /// <returns></returns>
        Task<VoiceQueryListResponse?> VoiceQueryList(VoiceQueryListRequest request, string key, int expired, CancellationToken cancellationToken)
            =>ExecuteAsync<VoiceQueryListRequest,VoiceQueryListResponse>(request, key, expired, cancellationToken);


        /// <summary>
        /// 删除语音文件
        /// </summary>
        /// <param name="request"></param>
        /// <param name="key"></param>
        /// <param name="expired"></param>
        /// <param name="cancellationToken"></param>
        /// <returns></returns>
        Task<NewRockResponse?> RemoveVoiceFile(RemoveVoiceFileRequest request, string key, int expired,
            CancellationToken cancellationToken)
            => ExecuteAsync<RemoveVoiceFileRequest, NewRockResponse>(request, key, expired, cancellationToken);


        #endregion

    }
}
