UNPKG

node-nim

Version:

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

57 lines (56 loc) 2.21 kB
import { V2NIMSubscribeUserStatusOption, V2NIMUnsubscribeUserStatusOption, V2NIMCustomUserStatusParams, V2NIMCustomUserStatusPublishResult, V2NIMUserStatusSubscribeResult, V2NIMUserStatus } from 'ts/v2_def/v2_nim_struct_def'; import { EventEmitter } from 'eventemitter3'; export declare interface V2NIMSubscriptionListener { userStatusChanged: [V2NIMUserStatus]; } /** @brief 订阅服务 */ export declare class V2NIMSubscriptionService extends EventEmitter<V2NIMSubscriptionListener> { instance: any; constructor(); /** * @brief 订阅用户状态 * @param option 订阅用户状态选项 * @returns Promise<string[]> * @example * ```javascript * const result = await v2.subscriptionService.subscribeUserStatus({ * accountIds: ['account1', 'account2'], * }) * ``` */ subscribeUserStatus(option: V2NIMSubscribeUserStatusOption): Promise<string[]>; /** * @brief 取消用户状态订阅 * @param option 取消订阅用户状态选项 * @returns Promise<string[]> * @example * ```javascript * const result = await v2.subscriptionService.unsubscribeUserStatus({ * accountIds: ['account1', 'account2'], * }) * ``` */ unsubscribeUserStatus(option: V2NIMUnsubscribeUserStatusOption): Promise<string[]>; /** * @brief 发布用户自定义状态 * @param params 发布自定义用户状态参数 * @returns Promise<V2NIMCustomUserStatusPublishResult> * @example * ```javascript * const result = await v2.subscriptionService.publishCustomUserStatus({ * statusType: 10001, * duration: 60 * }) * ``` */ publishCustomUserStatus(params: V2NIMCustomUserStatusParams): Promise<V2NIMCustomUserStatusPublishResult>; /** @brief 查询用户状态订阅关系 * @param accountIds 账号列表 * @returns Promise<V2NIMUserStatusSubscribeResult[]> * @example * ```javascript * const result = await v2.subscriptionService.queryUserStatusSubscriptions(['account1', 'account2']) * ``` */ queryUserStatusSubscriptions(accountIds: string[]): Promise<V2NIMUserStatusSubscribeResult[]>; }