import { GroupJoinQuestionsAnswerResult } from '../model/proto/model/group/group_join_questions_answer_result'; import { GroupMemberRole } from '../model/proto/constant/group_member_role'; import { ParsedModel } from '../model/parsed-model'; import Response from '../model/response'; import TurmsClient from '../turms-client'; import NewGroupJoinQuestion from '../model/new-group-join-question'; export default class GroupService { private _turmsClient; constructor(turmsClient: TurmsClient); createGroup({ name, intro, announcement, minimumScore, muteEndDate, groupTypeId }: { name: string; intro?: string; announcement?: string; minimumScore?: number; muteEndDate?: Date; groupTypeId?: string; }): Promise>; deleteGroup({ groupId }: { groupId: string; }): Promise>; updateGroup({ groupId, groupName, intro, announcement, minimumScore, groupTypeId, muteEndDate, successorId, quitAfterTransfer }: { groupId: string; groupName?: string; intro?: string; announcement?: string; minimumScore?: number; groupTypeId?: string; muteEndDate?: Date; successorId?: string; quitAfterTransfer?: boolean; }): Promise>; transferOwnership({ groupId, successorId, quitAfterTransfer }: { groupId: string; successorId: string; quitAfterTransfer: boolean; }): Promise>; muteGroup({ groupId, muteEndDate }: { groupId: string; muteEndDate: Date; }): Promise>; unmuteGroup({ groupId }: { groupId: string; }): Promise>; queryGroups({ groupIds, lastUpdatedDate }: { groupIds: string[]; lastUpdatedDate?: Date; }): Promise>; queryJoinedGroupIds({ lastUpdatedDate }?: { lastUpdatedDate?: Date; }): Promise>; queryJoinedGroupInfos({ lastUpdatedDate }?: { lastUpdatedDate?: Date; }): Promise>; addGroupJoinQuestions({ groupId, questions }: { groupId: string; questions: NewGroupJoinQuestion[]; }): Promise>; deleteGroupJoinQuestions({ groupId, questionIds }: { groupId: string; questionIds: string[]; }): Promise>; updateGroupJoinQuestion({ questionId, question, answers, score }: { questionId: string; question?: string; answers?: string[]; score?: number; }): Promise>; blockUser({ groupId, userId }: { groupId: string; userId: string; }): Promise>; unblockUser({ groupId, userId }: { groupId: string; userId: string; }): Promise>; queryBlockedUserIds({ groupId, lastUpdatedDate }: { groupId: string; lastUpdatedDate?: Date; }): Promise>; queryBlockedUserInfos({ groupId, lastUpdatedDate }: { groupId: string; lastUpdatedDate?: Date; }): Promise>; createInvitation({ groupId, inviteeId, content }: { groupId: string; inviteeId: string; content: string; }): Promise>; deleteInvitation({ invitationId }: { invitationId: string; }): Promise>; queryInvitationsByGroupId({ groupId, lastUpdatedDate }: { groupId: string; lastUpdatedDate?: Date; }): Promise>; queryInvitations({ areSentByMe, lastUpdatedDate }: { areSentByMe: boolean; lastUpdatedDate?: Date; }): Promise>; createJoinRequest({ groupId, content }: { groupId: string; content: string; }): Promise>; deleteJoinRequest({ requestId }: { requestId: string; }): Promise>; queryJoinRequests({ groupId, lastUpdatedDate }: { groupId: string; lastUpdatedDate?: Date; }): Promise>; querySentJoinRequests({ lastUpdatedDate }?: { lastUpdatedDate?: Date; }): Promise>; queryGroupJoinQuestionsRequest({ groupId, withAnswers, lastUpdatedDate }: { groupId: string; withAnswers: boolean; lastUpdatedDate?: Date; }): Promise>; answerGroupQuestions({ questionIdToAnswer }: { questionIdToAnswer: Record; }): Promise>; addGroupMembers({ groupId, userIds, name, role, muteEndDate }: { groupId: string; userIds: string[]; name?: string; role?: string | GroupMemberRole; muteEndDate?: Date; }): Promise>; quitGroup({ groupId, successorId, quitAfterTransfer }: { groupId: string; successorId?: string; quitAfterTransfer?: boolean; }): Promise>; removeGroupMembers({ groupId, memberIds }: { groupId: string; memberIds: string[]; }): Promise>; updateGroupMemberInfo({ groupId, memberId, name, role, muteEndDate }: { groupId: string; memberId: string; name?: string; role?: string | GroupMemberRole; muteEndDate?: Date; }): Promise>; muteGroupMember({ groupId, memberId, muteEndDate }: { groupId: string; memberId: string; muteEndDate: Date; }): Promise>; unmuteGroupMember({ groupId, memberId }: { groupId: string; memberId: string; }): Promise>; queryGroupMembers({ groupId, withStatus, lastUpdatedDate }: { groupId: string; withStatus: boolean; lastUpdatedDate?: Date; }): Promise>; queryGroupMembersByMemberIds({ groupId, memberIds, withStatus }: { groupId: string; memberIds: string[]; withStatus: boolean; }): Promise>; } //# sourceMappingURL=group-service.d.ts.map