UNPKG

sim-sdk-web

Version:

Sim SDK for Web

171 lines (170 loc) 5.35 kB
import SIMSDK from './index'; import { GroupInfoVO, GroupPermission, KickGroupMemberParams, LatestMessagesUpdateResponse, MessageItem, MuteMembersParams, ReqPageParam, ServerResponse, UpdateGroupMemberPermission, UpdateGroupPermission } from '../types/entity'; /** * 群组服务 - 负责群组创建、管理和成员操作 */ export declare class GroupService { private readonly sdk; /** * 创建群组服务实例 * @param sdk SIMSDK实例 */ constructor(sdk: SIMSDK); /** * 获取群组详细信息 * @param groupId 群组ID * @returns 群组信息Promise */ getGroupInfo(groupId: number): Promise<ServerResponse<GroupInfoVO>>; /** * 获取群成员 * @param groupId 群组ID * @returns 群组信息Promise */ getGroupMember(groupId: number): Promise<ServerResponse>; /** * 获取群组成员列表 * @param params 包含群组ID和可选分页参数的对象 * @returns 群组成员信息Promise */ getGroupMembers(params: { groupId: number; } & Partial<ReqPageParam>): Promise<ServerResponse<GroupInfoVO>>; /** * 进群 * @param groupId 包含群组ID * @returns Promise */ joinGroup(groupId: number): Promise<ServerResponse>; /** * leftGroup * @param groupId 包含群组ID * @returns Promise */ leftGroup(groupId: number): Promise<ServerResponse>; /** * 检测是否可以进群 * @param groupId 包含群组ID * @returns Promise */ checkGroupBlock(groupId: number): Promise<ServerResponse>; /** * 更新最后一条消息 * @param latestMessage * @returns Promise */ updateLatestMessage(latestMessage: Map<number, number>): Promise<ServerResponse<Map<number, number>>>; /** * 获取群组最后一条消息 * @param groups * @returns Promise */ getGroupLatestMessage(groups: Array<number>): Promise<ServerResponse<Map<number, MessageItem>>>; /** * 检测最新的群消息 * @param ttl * @returns Promise */ checkGroupLatestMessage(ttl: number): Promise<ServerResponse<LatestMessagesUpdateResponse>>; /** * 获取我的群权限 * @param groupId * @returns Promise */ getMyGroupPermission(groupId: number): Promise<ServerResponse<GroupPermission[]>>; /** * 获取群权限 * @param groupId * @returns Promise */ getGroupPermission(groupId: number): Promise<ServerResponse<GroupPermission[]>>; /** * 获取群成员权限 * @param groupId * @param userId * @returns Promise */ getGroupMemberPermission(groupId: number, userId: number): Promise<ServerResponse<GroupPermission[]>>; /** * 更新群权限(管理员使用) * @param params * @returns Promise */ updateGroupPermission(params: UpdateGroupPermission): Promise<ServerResponse>; /** * 更新群用户权限(管理员使用) * @param params * @returns Promise */ updateGroupMemberPermission(params: UpdateGroupMemberPermission): Promise<ServerResponse>; /** * 踢人 * @param params * @returns Promise */ kickGroupMember(params: KickGroupMemberParams): Promise<ServerResponse>; /** * 禁言解除禁言 * @param params * @returns Promise */ muteMembers(params: MuteMembersParams): Promise<ServerResponse>; /** * 修改群名称 * @param groupId 包含 groupId * @param name 包含 name * @returns Promise */ editGroupName(groupId: number, name: string): Promise<ServerResponse>; /** * 修改群简介/公告 * @param groupId 包含 groupId * @param notification 包含 notification * @returns Promise */ editNotification(groupId: number, notification: string): Promise<ServerResponse>; /** * 修改群自定义信息 * @param groupId 包含 groupId * @param customer 包含 customer * @returns Promise */ editGroupCustomer(groupId: number, customer: string): Promise<ServerResponse>; /** * 设置群管理员 * @param groupId 群 ID * @param username 用户名 * @returns Promise */ addAdmin(groupId: number, username: number): Promise<ServerResponse>; /** * 删除群管理员 * @param groupId 群 ID * @param username 用户名 * @returns Promise */ deleteAdmin(groupId: number, username: number): Promise<ServerResponse>; /** * 置顶消息 * @param groupId 群 ID * @param messageId 消息 ID * @param type 类型(0:取消置顶,1:置顶) * @returns Promise */ pin(groupId: number, messageId: number, type: number): Promise<ServerResponse>; /** * 群禁言 / 解除禁言 * @param groupId 群 ID * @param type 类型(0:禁言,1:解除禁言) * @returns Promise */ muteGroup(groupId: number, type: number): Promise<ServerResponse>; /** * 群成员禁言 / 解除禁言 * @param groupId 群 ID * @param username 用户名 * @param type 类型(0:禁言,1:解除禁言) * @returns Promise */ muteMember(groupId: number, username: number, type: number): Promise<ServerResponse>; }