import { EventEmitter } from 'eventemitter3'; import { NIMUserAPI, SetRelationCallback, GetSpecialListCallback, GetUserNameCardCallback, UpdateMyUserNameCardCallback, NINPushType, UserNameCard, SpecialRelationshipChangeEvent, BlackMuteListInfo } from '../nim_def/user_def'; import { NIMResCode } from '../nim_def/client_def'; export declare interface NIMUserEvents { /** 用户属性变更 */ specialRelationChange: [SpecialRelationshipChangeEvent]; /** 用户名片变更 */ userNameCardChange: [Array]; } export declare class NIMUser extends EventEmitter { user: NIMUserAPI; constructor(); /** 注册全局回调 */ initEventHandlers(): void; /** 设置、取消设置黑名单 * @param accid 好友id * @param set_black 取消或设置 * @param jsonExtension json扩展参数(备用,目前不需要) * @param cb * @return boolean 检查参数如果不符合要求则返回失败 * @note *
     * 200:成功
     * 419:黑名单数量超过上限
     * 
*/ setBlack(accid: string, setBlack: boolean, cb: SetRelationCallback | null, jsonExtension: string): Promise<[NIMResCode, string, boolean] | null>; /** 设置、取消设置静音名单 * @param accid 好友id * @param set_mute 取消或设置 * @param jsonExtension json扩展参数(备用,目前不需要) * @param cb * @return boolean 检查参数如果不符合要求则返回失败 * @note *
     * 200:成功
     * 419:静音列表数量超过上限
     * 
*/ setMute(accid: string, set_mute: boolean, cb: SetRelationCallback | null, jsonExtension: string): Promise<[NIMResCode, string, boolean] | null>; /** 获得静音名单列表 * @param jsonExtension json扩展参数(备用,目前不需要) * @param cb * @return boolean 检查参数如果不符合要求则返回失败 * @note *
     * 200:成功
     * 
*/ getMutelist(cb: GetSpecialListCallback | null, jsonExtension: string): Promise<[NIMResCode, Array]>; /** 获得黑名单名单 * @param jsonExtension json扩展参数(备用,目前不需要) * @param cb * @return void 无返回值 */ getBlacklist(cb: GetSpecialListCallback | null, jsonExtension: string): Promise<[NIMResCode, Array]>; /** 获取本地的指定帐号的用户名片 * @param accids * @param cb 操作结果回调 * @param jsonExtension json扩展参数(备用,目前不需要) * @return void 无返回值 * @note *
     * 200:成功
     * 414:参数错误
     * 20000:还未初始化或初始化未正常完成
     * 20001:还未登陆或登录未完成
     * 
*/ getUserNameCard(accids: Array, cb: GetUserNameCardCallback | null, jsonExtension: string): Promise<[Array] | null>; /** 在线查询指定帐号的用户名片 * @param accids * @param cb 操作结果回调 * @param jsonExtension json扩展参数(备用,目前不需要) * @return boolean 检查参数如果不符合要求则返回失败 * @note *
     * 200:成功
     * 414:参数错误
     * 20000:还未初始化或初始化未正常完成
     * 20001:还未登陆或登录未完成
     * 
*/ getUserNameCardOnline(accids: Array, cb: GetUserNameCardCallback | null, jsonExtension: string): Promise<[Array] | null>; /** 更新自己的用户名片 * @param namecard 用户名片内容 * @param cb 操作结果回调 * @param jsonExtension json扩展参数(备用,目前不需要) * @return boolean 检查参数如果不符合要求则返回失败 * @note *
     * 200:成功
     * 400:非法参数
     * 
*/ updateMyUserNameCard(nameCard: UserNameCard, cb: UpdateMyUserNameCardCallback | null, jsonExtension: string): Promise<[NIMResCode] | null>; /** 获取本地的指定帐号的用户名片 * @param keyword 要查询的关键字 * @param cb 操作结果回调 * @param jsonExtension json扩展参数(备用,目前不需要) * @return boolean 检查参数如果不符合要求则返回失败 */ queryUserListByKeyword(keyword: string, cb: GetUserNameCardCallback | null, jsonExtension: string): Promise<[Array] | null>; /** 更新推送证书 * @param cer_name 云信后台配置的s推送证明名称 * @param token 设备token * @param type 1: pushkit (仅iOS) 其他 apns 默认填0 * @return void 无返回值 */ updatePushToken(cerName: string, token: string, type: NINPushType): void; }