export {}; declare global { namespace Amity { enum GroupTypeEnum { CHANNEL = "channel", COMMUNITY = "community" } type GroupType = `${GroupTypeEnum}`; type GroupMembership = 'member' | 'none' | 'banned' | 'muted'; type Group = { membersCount: number; }; type Member = { userId: Amity.InternalUser['userId']; userInternalId: Amity.InternalUser['userInternalId']; userPublicId: Amity.InternalUser['userPublicId']; } & (T extends 'channel' ? { channelId: Amity.Channel['channelId']; membership: GroupMembership; readToSegment: number; lastMentionedSegment: number; } : T extends 'community' ? { communityId: Amity.Community['communityId']; communityMembership: GroupMembership; } : never) & Amity.Timestamps; type MemberWithUser = Member & { readonly user?: Amity.InternalUser; }; type RawMembership = { isBanned: boolean; isMuted: boolean; muteTimeout: string; lastActivity: Amity.timestamp; } & Amity.Member & Amity.Accredited; type Membership = Amity.RawMembership & { readonly user?: Amity.InternalUser; }; } } //# sourceMappingURL=group.d.ts.map