UNPKG

node-nim

Version:

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

212 lines (211 loc) 10.5 kB
import { NIMResCode } from './client_def'; import { NIMNotificationId } from './msglog_def'; import { UserNameCard } from './user_def'; /** @enum NIMSuperTeamBitsConfigMask 群组成员信息Bits属性kNIMSuperTeamUserKeyBits的配置定义 */ export declare enum NIMSuperTeamBitsConfigMask { /** 开启提醒 bits 0000b*/ kNIMSuperTeamBitsConfigMaskMuteNone = 0, /** 关闭提醒 bits 0001b*/ kNIMSuperTeamBitsConfigMaskMuteNotify = 1, /** 只接收管理员消息 bits 0010b 超大群当前不支持该选项*/ kNIMSuperTeamBitsConfigMaskOnlyAdmin = 2 } /** @enum NIMSuperTeamUserType 群成员类型 */ export declare enum NIMSuperTeamUserType { /** 普通成员 */ kNIMSuperTeamUserTypeNomal = 0, /** 创建者 */ kNIMSuperTeamUserTypeCreator = 1, /** 管理员 */ kNIMSuperTeamUserTypeManager = 2, /** 申请加入用户 */ kNIMSuperTeamUserTypeApply = 3, /** 本地记录等待正在入群的用户 */ kNIMSuperTeamUserTypeLocalWaitAccept = 100 } /** @enum NIMSuperTeamBeInviteMode 被邀请人同意方式 */ export declare enum NIMSuperTeamBeInviteMode { /** 需要同意 */ kNIMSuperTeamBeInviteModeNeedAgree = 0, /** 不需要同意 */ kNIMSuperTeamBeInviteModeNotNeedAgree = 1 } /** @enum NIMSuperTeamInviteMode 谁可以邀请他人入群 */ export declare enum NIMSuperTeamInviteMode { /** 管理员 */ kNIMSuperTeamInviteModeManager = 0, /** 所有人 */ kNIMSuperTeamInviteModeEveryone = 1 } /** @enum NIMSuperTeamUpdateInfoMode 谁可以修改群资料 */ export declare enum NIMSuperTeamUpdateInfoMode { /** 管理员 */ kNIMSuperTeamUpdateInfoModeManager = 0, /** 所有人 */ kNIMSuperTeamUpdateInfoModeEveryone = 1 } /** @enum NIMSuperTeamUpdateCustomMode 谁可以更新群自定义属性 */ export declare enum NIMSuperTeamUpdateCustomMode { /** 管理员 */ kNIMSuperTeamUpdateCustomModeManager = 0, /** 所有人 */ kNIMSuperTeamUpdateCustomModeEveryone = 1 } /** @enum NIMSuperTeamJoinMode 群允许加入类型 */ export declare enum NIMSuperTeamJoinMode { /** 不用验证 */ kNIMSuperTeamJoinModeNoAuth = 0, /** 需要验证 */ kNIMSuperTeamJoinModeNeedAuth = 1, /** 拒绝所有人入群 */ kNIMSuperTeamJoinModeRejectAll = 2 } /** @enum NIMSuperTeamQueryType 根据关键字查询群组信息类型 */ export declare enum NIMSuperTeamQueryType { /** 默认查询条件,群组 ID 和群名称任意匹配则返回 */ kNIMQuerySuperTeamDefault = 1, /** 仅匹配群组 ID */ kNIMQuerySuperTeamByTeamId = 2, /** 仅匹配群名称 */ kNIMQuerySuperTeamByTeamName = 3 } /** @enum NIMSuperTeamMuteType 群信息kNIMSuperTeamInfoKeyMuteType的配置定义 */ export declare enum NIMSuperTeamMuteType { /** 不禁言 */ kNIMSuperTeamMuteTypeNone = 0, /** 普通成员禁言 */ kNIMSuperTeamMuteTypeNomalMute = 1, /** 全部禁言 */ kNIMSuperTeamMuteTypeAllMute = 3 } export declare enum SuperTeamQueryOrder { /** 按时间降序排列 */ kSuperTeamQueryOrderDesc = 0, /** 按时间升序排列 */ kSuperTeamQueryOrderAsc = 1 } export interface SuperTeamEvent { /** 错误码 */ res_code_?: NIMResCode; /** 通知类型ID */ notification_id_?: NIMNotificationId; /** 群组ID */ team_id_?: string; /** 通知可能涉及到的群成员ID */ ids_?: Array<string>; /** 通知可能涉及到的失效的群成员ID,比如邀请入群的成员的群数量超限导致当次邀请失败 */ invalid_ids_?: Array<string>; /** 通知可能涉及到的群成员的用户名片 */ namecards_?: Array<UserNameCard>; /** 通知可能涉及到的群信息 */ team_info_?: SuperTeamInfo; /** 群成员属性 */ member_property_?: SuperTeamMemberProperty; /** 操作 */ opt_?: boolean; /** 扩展字段,目前仅kick和invite事件可选 */ attach_?: string; /** 未解析过的原信息,目前仅支持群消息未读数相关事件 */ src_data_?: string; } export interface SuperTeamInfoJsonValue { tid?: string; name?: string; readonly creator: string; member_max_count?: number; prop?: string; readonly valid: boolean; readonly member_count: number; readonly list_timetag: number; readonly create_timetag: number; readonly update_timetag: number; member_valid?: number; intro?: string; announcement?: string; join_mode?: NIMSuperTeamJoinMode; custom?: string; icon?: string; be_invite_mode?: NIMSuperTeamBeInviteMode; invite_mode?: NIMSuperTeamInviteMode; update_info_mode?: NIMSuperTeamUpdateInfoMode; update_custom_mode?: NIMSuperTeamUpdateCustomMode; mute_type?: NIMSuperTeamMuteType; } export interface SuperTeamInfo { team_info_json_value_?: SuperTeamInfoJsonValue; } export interface SuperTeamMemberPropertyJsonValue { tid?: string; accid?: string; type?: NIMSuperTeamUserType; nick?: string; bits?: number; custom?: string; readonly valid?: boolean; readonly create_timetag?: number; readonly update_timetag?: number; readonly mute?: number; } export interface SuperTeamMemberProperty { member_info_json_value_?: SuperTeamMemberPropertyJsonValue; } export interface SuperTeamMemberSerachResult { team_member_propertys_?: Array<SuperTeamMemberProperty>; offset_?: number; finished_?: boolean; } export interface SuperTeamMemberKeywordSearchOption { team_id_?: string; keyword_?: string; offset_?: number; order_?: SuperTeamQueryOrder; limit_?: number; } export interface SuperTeamMemberRoleTypeSearchOption { role_types_?: Array<NIMSuperTeamUserType>; offset_?: number; order_?: SuperTeamQueryOrder; limit_?: number; } export type SuperTeamEventCallback = (result: SuperTeamEvent) => void; export type QueryAllMySuperTeamsCallback = (count: number, result: Array<string>) => void; export type QueryAllMySuperTeamsInfoCallback = (count: number, result: Array<SuperTeamInfo>) => void; export type QuerySuperTeamMyAllMemberInfosCallback = (count: number, result: Array<SuperTeamMemberProperty>) => void; export type QuerySuperTeamMembersCallback = (rescode: NIMResCode, tid: string, count: number, result: Array<SuperTeamMemberProperty>) => void; export type QuerySuperTeamMemberCallback = (result: SuperTeamMemberProperty) => void; export type QuerySuperTeamInfoCallback = (tid: string, result: SuperTeamInfo) => void; export type QuerySuperTeamMembersOnlineCallback = (rescode: NIMResCode, count: number, result: Array<SuperTeamMemberProperty>) => void; export type SuperTeamMemberSerachCallback = (result: SuperTeamMemberSerachResult) => void; export type SuperTeamGetMemberListCallback = (result: SuperTeamMemberSerachResult) => void; export interface NIMSuperTeamAPI { InitEventHandlers(): void; InviteAsync(tid: string, ids: Array<string>, invitationPostscript: string, invitationAttachment: string, cb: SuperTeamEventCallback | null, jsonExtension: string): boolean; KickAsync(tid: string, ids: Array<string>, cb: SuperTeamEventCallback | null, jsonExtension: string): boolean; LeaveAsync(tid: string, cb: SuperTeamEventCallback | null, jsonExtension: string): boolean; UpdateSuperTeamInfoAsync(tid: string, info: SuperTeamInfo, cb: SuperTeamEventCallback | null, jsonExtension: string): boolean; ApplyJoinAsync(tid: string, reason: string, cb: SuperTeamEventCallback | null, jsonExtension: string): boolean; PassJoinApplyAsync(tid: string, applicantId: string, cb: SuperTeamEventCallback | null, jsonExtension: string): boolean; RejectJoinApplyAsync(tid: string, applicantId: string, reason: string, cb: SuperTeamEventCallback | null, jsonExtension: string): boolean; AddManagersAsync(tid: string, ids: Array<string>, cb: SuperTeamEventCallback | null, jsonExtension: string): boolean; RemoveManagersAsync(tid: string, ids: Array<string>, cb: SuperTeamEventCallback | null, jsonExtension: string): boolean; TransferTeamAsync(tid: string, newOwnerId: string, isLeave: boolean, cb: SuperTeamEventCallback | null, jsonExtension: string): boolean; UpdateMyPropertyAsync(prop: SuperTeamMemberProperty, cb: SuperTeamEventCallback | null, jsonExtension: string): boolean; UpdateOtherNickAsync(prop: SuperTeamMemberProperty, cb: SuperTeamEventCallback | null, jsonExtension: string): boolean; AcceptInvitationAsync(tid: string, inviterId: string, cb: SuperTeamEventCallback | null, jsonExtension: string): boolean; RejectInvitationAsync(tid: string, inviterId: string, reason: string, cb: SuperTeamEventCallback | null, jsonExtension: string): boolean; QueryAllMySuperTeamsAsync(cb: QueryAllMySuperTeamsCallback | null, jsonExtension: string): void; QueryAllMySuperTeamsInfoAsync(cb: QueryAllMySuperTeamsInfoCallback | null, jsonExtension: string): void; QueryMyAllMemberInfosAsync(cb: QuerySuperTeamMyAllMemberInfosCallback | null, jsonExtension: string): void; QuerySuperTeamMembersAsync(tid: string, cb: QuerySuperTeamMembersCallback | null, jsonExtension: string): boolean; QuerySuperTeamMemberAsync(tid: string, id: string, cb: QuerySuperTeamMemberCallback | null, jsonExtension: string): void; QuerySuperTeamInfoAsync(tid: string, cb: QuerySuperTeamInfoCallback | null, jsonExtension: string): boolean; QuerySuperTeamInfoOnlineAsync(tid: string, cb: SuperTeamEventCallback | null, jsonExtension: string): boolean; MuteMemberAsync(tid: string, member_id: string, set_mute: boolean, cb: SuperTeamEventCallback | null, jsonExtension: string): boolean; QueryMuteListAsync(tid: string, cb: QuerySuperTeamMembersCallback | null, jsonExtension: string): boolean; MuteAsync(tid: string, set_mute: boolean, cb: SuperTeamEventCallback | null, jsonExtension: string): boolean; QuerySuperTeamsInfoByKeywordAsync(keyword: string, cb: QueryAllMySuperTeamsInfoCallback | null, jsonExtension: string): void; SearchTeamMembers(option: SuperTeamMemberKeywordSearchOption, cb: SuperTeamMemberSerachCallback | null): void; GetTeamMemberList(tid: string, option: SuperTeamMemberRoleTypeSearchOption, cb: SuperTeamGetMemberListCallback | null): void; AddTeamMembersFollow(tid: string, account_ids: Array<string>, cb: SuperTeamEventCallback | null): boolean; RemoveTeamMembersFollow(tid: string, account_ids: Array<string>, cb: SuperTeamEventCallback | null): boolean; }