import { CommandsBase } from './CommandsBase'; import { UUID } from '../UUID'; import { GroupRole } from '../GroupRole'; import { GroupMember } from '../GroupMember'; import { GroupBanAction } from '../../enums/GroupBanAction'; import { GroupBan } from '../GroupBan'; import type { GroupInviteEvent } from '../../events/GroupInviteEvent'; import type { GroupProfileReplyEvent } from '../../events/GroupProfileReplyEvent'; import { DirGroupsReplyEvent } from '../../events/DirGroupsReplyEvent'; import { GroupRoleMember } from '../GroupRoleMember'; export declare class GroupCommands extends CommandsBase { sendGroupNotice(groupID: UUID | string, subject: string, message: string): Promise; sendGroupInviteBulk(groupID: UUID | string, sendTo: { avatarID: UUID | string; roleID: UUID | string | undefined; }[]): Promise; getSessionAgentCount(sessionID: UUID | string): number; sendGroupInvite(groupID: UUID | string, to: UUID | string, role: UUID | string | undefined): Promise; acceptGroupInvite(event: GroupInviteEvent): Promise; rejectGroupInvite(event: GroupInviteEvent): Promise; unbanMembers(groupID: UUID | string, avatars: UUID | string | string[] | UUID[]): Promise; banMembers(groupID: UUID | string, avatars: UUID | string | string[] | UUID[], groupAction?: GroupBanAction): Promise; getBanList(groupID: UUID | string): Promise; getMemberList(groupID: UUID | string): Promise; getGroupRoles(groupID: UUID | string): Promise; ejectFromGroupBulk(groupID: UUID | string, sendTo: UUID[] | string[]): Promise; ejectFromGroup(groupID: UUID | string, ejecteeID: UUID | string): Promise; getGroupProfile(groupID: UUID | string): Promise; searchGroups(query: string, start?: number): Promise; getRoleMembers(groupID: UUID | string): Promise; getMemberRoles(groupID: UUID | string, memberID: UUID | string): Promise; joinGroup(groupID: UUID | string, approveCost?: (cost: number) => boolean | Promise): Promise; leaveGroup(groupID: UUID | string): Promise; }