import { AccessToken } from '@tnwx/accesstoken';
import { Article, MenuMsg } from '@tnwx/commons';
/**
 * @author Javen
 * @copyright javendev@126.com
 * @description 客服消息
 */
export declare class CustomServiceApi {
    private static addKfAccountUrl;
    private static updateKfAccountUrl;
    private static delKfAccountUrl;
    private static getKfListUrl;
    private static customMessageUrl;
    private static typingUrl;
    private static uploadKfHeadImgUrl;
    private static inviteUrl;
    private static getOnlineUrl;
    /**
     * 邀请绑定客服帐号
     * @param kf_account 完整客服帐号，格式为：帐号前缀@公众号微信号
     * @param inviteWx 接收绑定邀请的客服微信号
     * @param accessToken
     */
    static inviteWorker(kf_account: string, inviteWx: string, accessToken?: AccessToken): Promise<any>;
    /**
     * 获取在线客服
     * @param accessToken
     */
    static getOnlineKfList(accessToken?: AccessToken): Promise<any>;
    /**
     * 添加客服帐号
     * @param response
     * @param kf_account 完整客服账号，格式为：账号前缀@公众号微信
     * @param nickname 客服昵称，最长6个汉字或12个英文字符
     * @param password 客服账号登录密码，格式为密码明文的32位加密MD5值。该密码仅用于在公众平台官网的多客服功能中使用，若不使用多客服功能，则不必设置密码
     * @param accessToken
     */
    static addKfAccount(kf_account: string, nickname: string, password: string, accessToken?: AccessToken): Promise<any>;
    /**
     * 修改客服帐号
     * @param response
     * @param kf_account
     * @param nickname
     * @param password
     * @param accessToken
     */
    static updateKfAccount(kf_account: string, nickname: string, password: string, accessToken?: AccessToken): Promise<any>;
    /**
     * 删除客服帐号
     * @param response
     * @param kf_account
     * @param accessToken
     */
    static delKfAccount(kf_account: string, accessToken?: AccessToken): Promise<any>;
    /**
     * 设置客服帐号的头像
     * @param response
     * @param kf_account
     * @param filePath 头像图片文件必须是jpg格式，推荐使用640*640大小的图片以达到最佳效果
     * @param accessToken
     */
    static uploadKfAccountHeadImg(kf_account: string, filePath: string, accessToken?: AccessToken): Promise<any>;
    /**
     * 获取所有客服账号
     * @param accessToken
     */
    static getKfList(accessToken?: AccessToken): Promise<any>;
    /**
     * 发送客服消息
     * @param response
     * @param json 各种消息的JSON数据包
     * @param kf_account 以某个客服帐号来发消息
     * @param accessToken
     */
    static sendMsg(msgObj: any, kf_account?: string, accessToken?: AccessToken): Promise<any>;
    /**
     * 发送文本客服消息
     * @param response
     * @param openId
     * @param text
     * @param accessToken
     */
    static sendText(openId: string, text: string, kf_account?: string, accessToken?: AccessToken): Promise<any>;
    /**
     * 发送图片消息
     * @param response
     * @param openId
     * @param text
     * @param accessToken
     */
    static sendImage(openId: string, media_id: string, kf_account?: string, accessToken?: AccessToken): Promise<any>;
    /**
     * 发送语音消息
     * @param response
     * @param openId
     * @param media_id
     * @param accessToken
     */
    static sendVoice(openId: string, media_id: string, kf_account?: string, accessToken?: AccessToken): Promise<any>;
    /**
     * 发送视频消息
     * @param response
     * @param openId
     * @param media_id
     * @param title
     * @param description
     * @param accessToken
     */
    static sendVideo(openId: string, media_id: string, title: string, description: string, kf_account?: string, accessToken?: AccessToken): Promise<any>;
    /**
     * 发送音乐消息
     * @param response
     * @param openId
     * @param title
     * @param description
     * @param musicurl
     * @param hqmusicurl
     * @param thumb_media_id 缩略图/小程序卡片图片的媒体ID，小程序卡片图片建议大小为520*416
     * @param accessToken
     */
    static sendMusic(openId: string, title: string, description: string, musicurl: string, hqmusicurl: string, thumb_media_id: string, kf_account?: string, accessToken?: AccessToken): Promise<any>;
    /**
     * 发送图文消息
     * @param response
     * @param openId
     * @param articles
     * @param accessToken
     */
    static sendNews(openId: string, articles: Article[], kf_account?: string, accessToken?: AccessToken): Promise<any>;
    /**
     * 发送图文消息（点击跳转到图文消息页面）
     * @param response
     * @param openId
     * @param media_id
     * @param accessToken
     */
    static sendMpNews(openId: string, media_id: string, kf_account?: string, accessToken?: AccessToken): Promise<any>;
    /**
     * 发送菜单消息
     * @param response
     * @param openId
     * @param head_content
     * @param list
     * @param tail_content
     * @param accessToken
     */
    static sendMenu(openId: string, head_content: string, list: MenuMsg[], tail_content: string, kf_account?: string, accessToken?: AccessToken): Promise<any>;
    /**
     * 发送卡券
     * @param response
     * @param openId
     * @param card_id
     * @param accessToken
     */
    static sendCoupon(openId: string, card_id: string, kf_account?: string, accessToken?: AccessToken): Promise<any>;
    /**
     * 发送小程序卡片（要求小程序与公众号已关联）
     * @param response
     * @param openId
     * @param title
     * @param appid
     * @param pagepath
     * @param thumb_media_id 缩略图/小程序卡片图片的媒体ID，小程序卡片图片建议大小为520*416
     * @param accessToken
     */
    static sendMiniProgramPage(openId: string, title: string, appid: string, pagepath: string, thumb_media_id: string, kf_account?: string, accessToken?: AccessToken): Promise<any>;
    /**
     * 客服输入状态
     * @param response
     * @param openId
     * @param command "Typing"：对用户下发“正在输入"状态,"CancelTyping"：取消对用户的”正在输入"状态
     * @param accessToken
     */
    static sendTyping(openId: string, command: string, accessToken?: AccessToken): Promise<any>;
}
