UNPKG

@fork-anyone/node-nim

Version:

NetEase IM nodejs wrapper based on NetEase IM C++ SDK

112 lines (111 loc) 4.84 kB
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<UserNameCard>]; } export declare class NIMUser extends EventEmitter<NIMUserEvents> { user: NIMUserAPI; constructor(sdk: any); /** 注册全局回调 */ initEventHandlers(): void; /** 设置、取消设置黑名单 * @param accid 好友id * @param set_black 取消或设置 * @param jsonExtension json扩展参数(备用,目前不需要) * @param cb * @return boolean 检查参数如果不符合要求则返回失败 * @note * <pre> * 200:成功 * 419:黑名单数量超过上限 * </pre> */ 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 * <pre> * 200:成功 * 419:静音列表数量超过上限 * </pre> */ setMute(accid: string, set_mute: boolean, cb?: SetRelationCallback | null, jsonExtension?: string): Promise<[NIMResCode, string, boolean] | null>; /** 获得静音名单列表 * @param jsonExtension json扩展参数(备用,目前不需要) * @param cb * @return boolean 检查参数如果不符合要求则返回失败 * @note * <pre> * 200:成功 * </pre> */ getMutelist(cb?: GetSpecialListCallback | null, jsonExtension?: string): Promise<[NIMResCode, Array<BlackMuteListInfo>]>; /** 获得黑名单名单 * @param jsonExtension json扩展参数(备用,目前不需要) * @param cb * @return void 无返回值 */ getBlacklist(cb?: GetSpecialListCallback | null, jsonExtension?: string): Promise<[NIMResCode, Array<BlackMuteListInfo>]>; /** 获取本地的指定帐号的用户名片 * @param accids * @param cb 操作结果回调 * @param jsonExtension json扩展参数(备用,目前不需要) * @return void 无返回值 * @note * <pre> * 200:成功 * 414:参数错误 * 20000:还未初始化或初始化未正常完成 * 20001:还未登陆或登录未完成 * </pre> */ getUserNameCard(accids: Array<string>, cb?: GetUserNameCardCallback | null, jsonExtension?: string): Promise<[Array<UserNameCard>] | null>; /** 在线查询指定帐号的用户名片 * @param accids * @param cb 操作结果回调 * @param jsonExtension json扩展参数(备用,目前不需要) * @return boolean 检查参数如果不符合要求则返回失败 * @note * <pre> * 200:成功 * 414:参数错误 * 20000:还未初始化或初始化未正常完成 * 20001:还未登陆或登录未完成 * </pre> */ getUserNameCardOnline(accids: Array<string>, cb?: GetUserNameCardCallback | null, jsonExtension?: string): Promise<[Array<UserNameCard>] | null>; /** 更新自己的用户名片 * @param namecard 用户名片内容 * @param cb 操作结果回调 * @param jsonExtension json扩展参数(备用,目前不需要) * @return boolean 检查参数如果不符合要求则返回失败 * @note * <pre> * 200:成功 * 400:非法参数 * </pre> */ 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<UserNameCard>] | 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; }