node-nim
Version:
NetEase IM nodejs wrapper based on NetEase IM C++ SDK
172 lines (171 loc) • 5.44 kB
TypeScript
import { V2NIMFriend, V2NIMFriendAddApplication, V2NIMFriendAddApplicationQueryOption, V2NIMFriendAddApplicationResult, V2NIMFriendAddParams, V2NIMFriendDeleteParams, V2NIMFriendSearchOption, V2NIMFriendSetParams } from 'ts/v2_def/v2_nim_struct_def';
import { EventEmitter } from 'eventemitter3';
import { V2NIMFriendDeletionType } from 'ts/v2_def/v2_nim_enum_def';
export declare interface V2NIMFriendListener {
/** 添加好友 */
friendAdded: [V2NIMFriend];
/** 删除好友 */
friendDeleted: [string, V2NIMFriendDeletionType];
/** 添加好友申请 */
friendAddApplication: [V2NIMFriendAddApplication];
/** 添加好友申请被拒绝 */
friendAddRejected: [V2NIMFriendAddApplication];
/** 更新好友信息 */
friendInfoChanged: [V2NIMFriend];
}
/** @brief 好友服务 */
export declare class V2NIMFriendService extends EventEmitter<V2NIMFriendListener> {
instance: any;
constructor();
/**
* @brief 添加好友
* @param accountId 账号 ID
* @param params 添加好友参数
* @returns void
* @example
* ```javascript
* await v2.friendService.addFriend('accountId', {
* addMode: 1
* })
* ```
*/
addFriend(accountId: string, params: V2NIMFriendAddParams): Promise<void>;
/**
* @brief 删除好友
* @param accountId 账号 ID
* @param params 删除好友参数
* @returns void
* @example
* ```javascript
* await v2.friendService.deleteFriend('accountId', {
* deleteAlias: true
* })
* ```
*/
deleteFriend(accountId: string, params: V2NIMFriendDeleteParams): Promise<void>;
/**
* @brief 接受好友申请
* @param application 好友申请
* @returns void
* @example
* ```javascript
* await v2.friendService.acceptAddApplication(application)
* ```
*/
acceptAddApplication(application: V2NIMFriendAddApplication): Promise<void>;
/**
* @brief 拒绝好友申请
* @param application 好友申请
* @param postscript 拒绝理由
* @returns void
* @example
* ```javascript
* await v2.friendService.rejectAddApplication(application, 'reason')
* ```
*/
rejectAddApplication(application: V2NIMFriendAddApplication, postscript: String): Promise<void>;
/**
* @brief 设置好友信息
* @param accountId 账号 ID
* @param params 设置好友信息参数
* @returns void
* @example
* ```javascript
* await v2.friendService.setFriendInfo('accountId', {
* alias: 'alias'
* })
* ```
*/
setFriendInfo(accountId: string, params: V2NIMFriendSetParams): Promise<void>;
/**
* @brief 获取好友列表
* @returns void
* @example
* ```javascript
* await v2.friendService.getFriendList()
* ```
*/
getFriendList(): Promise<Array<V2NIMFriend>>;
/**
* @brief 根据账号 ID 获取好友信息
* @param accountIds 账号 ID 列表
* @returns void
* @example
* ```javascript
* await v2.friendService.getFriendByIds(['accountId1', 'accountId2'])
* ```
*/
getFriendByIds(accountIds: Array<string>): Promise<Array<V2NIMFriend>>;
/**
* @brief 根据账号 ID 检查好友状态
* @param accountIds 账号 ID 列表
* @returns void
* @example
* ```javascript
* await v2.friendService.checkFriend(['accountId1', 'accountId2'])
* ```
*/
checkFriend(accountIds: Array<string>): Promise<Map<string, boolean>>;
/**
* @brief 获取申请添加好友信息列表
* @param option 查询申请添加好友相关信息参数
* @returns void
* @example
* ```javascript
* await v2.friendService.getAddApplicationList({
* offset: 0,
* limit: 10
* })
* ```
*/
getAddApplicationList(option: V2NIMFriendAddApplicationQueryOption): Promise<V2NIMFriendAddApplicationResult>;
/**
* @brief 获取申请添加好友未读数量
* @returns void
* @example
* ```javascript
* await v2.friendService.getAddApplicationUnreadCount()
* ```
*/
getAddApplicationUnreadCount(): Promise<number>;
/**
* @brief 设置申请添加好友已读
* @returns void
* @example
* ```javascript
* await v2.friendService.setAddApplicationRead()
* ```
*/
setAddApplicationRead(): Promise<void>;
/**
* @brief 根据关键字搜索用户信息
* @param option 搜索选项 @see V2NIMFriendSearchOption
* @returns Promise<Array<V2NIMFriend>>
* @example
* ```javascript
* await v2.friendService.searchFriendByOption({
* keyword: 'keyword'
* })
* ```
*/
searchFriendByOption(option: V2NIMFriendSearchOption): Promise<Array<V2NIMFriend>>;
/**
* @brief 清空所有添加好友申请
* @returns Promise<void>
* @example
* ```javascript
* await v2.friendService.clearAllAddApplication()
* ```
*/
clearAllAddApplication(): Promise<void>;
/**
* @brief 删除添加好友申请
* @param application 添加好友申请
* @returns Promise<void>
* @example
* ```javascript
* await v2.friendService.deleteAddApplication(application)
* ```
*/
deleteAddApplication(application: V2NIMFriendAddApplication): Promise<void>;
}