import type { AccessGroupParams, ChangeGroupMemberMuteParams, ChangeGroupMuteParams, CreateGroupParams, GetGroupMemberParams, JoinGroupParams, OffsetParams, OpreateGroupParams, SetGroupInfoParams, TransferGroupParams, UpdateMemberInfoParams, getGroupMembersInfoParams } from '../../types/params'; import { MixinApiService } from '..'; import type { GroupApplicationItem, GroupItem, GroupMemberItem, ApiResponse } from '../../types/entity'; export declare function setupGroup(apiService: MixinApiService): { createGroup: (params: CreateGroupParams, operationID: string) => Promise>; joinGroup: (params: JoinGroupParams, operationID: string) => Promise>; inviteUserToGroup: (params: OpreateGroupParams, operationID: string) => Promise>; getJoinedGroupListPage: (params: OffsetParams, operationID: string) => Promise>; getSpecifiedGroupsInfo: (params: string[], operationID: string) => Promise>; setGroupInfo: (params: SetGroupInfoParams, operationID: string) => Promise>; acceptGroupApplication: (params: AccessGroupParams, operationID: string) => Promise>; refuseGroupApplication: (params: AccessGroupParams, operationID: string) => Promise>; getGroupMemberList: (params: GetGroupMemberParams, operationID: string) => Promise>; getSpecifiedGroupMembersInfo: (params: getGroupMembersInfoParams, operationID: string) => Promise>; setGroupMemberInfo: (params: UpdateMemberInfoParams, operationID: string) => Promise>; kickGroupMember: (params: OpreateGroupParams, operationID: string) => Promise>; changeGroupMemberMute: (params: ChangeGroupMemberMuteParams, operationID: string) => Promise>; changeGroupMute: (params: ChangeGroupMuteParams, operationID: string) => Promise>; transferGroupOwner: (params: TransferGroupParams, operationID: string) => Promise>; dismissGroup: (params: string, operationID: string) => Promise>; quitGroup: (params: string, operationID: string) => Promise>; getGroupApplicationListAsRecipient: (params: OffsetParams, operationID: string) => Promise>; getGroupApplicationListAsApplicant: (params: OffsetParams, operationID: string) => Promise>; getUsersInGroup: (params: getGroupMembersInfoParams, operationID: string) => Promise>; isJoinGroup: (params: string, operationID: string) => Promise>; }; export interface GroupApi { createGroup: (params: CreateGroupParams) => Promise>; joinGroup: (params: JoinGroupParams) => Promise>; inviteUserToGroup: (params: OpreateGroupParams) => Promise>; getJoinedGroupListPage: (params: OffsetParams) => Promise>; getSpecifiedGroupsInfo: (params: string[]) => Promise>; setGroupInfo: (params: SetGroupInfoParams) => Promise>; getGroupApplicationListAsRecipient: (params: OffsetParams) => Promise>; getGroupApplicationListAsApplicant: (params: OffsetParams) => Promise>; acceptGroupApplication: (params: AccessGroupParams) => Promise>; refuseGroupApplication: (params: AccessGroupParams) => Promise>; getGroupMemberList: (params: GetGroupMemberParams) => Promise>; getSpecifiedGroupMembersInfo: (params: getGroupMembersInfoParams) => Promise>; setGroupMemberInfo: (params: UpdateMemberInfoParams) => Promise>; kickGroupMember: (params: OpreateGroupParams) => Promise>; changeGroupMemberMute: (params: ChangeGroupMemberMuteParams) => Promise>; changeGroupMute: (params: ChangeGroupMuteParams) => Promise>; transferGroupOwner: (params: TransferGroupParams) => Promise>; dismissGroup: (params: string) => Promise>; quitGroup: (params: string) => Promise>; getUsersInGroup: (params: getGroupMembersInfoParams) => Promise>; isJoinGroup: (params: string) => Promise>; }