import { PaginationQueryDto, UserDto } from "./base"; import { PageMetadataDto } from "./base"; export declare enum MembershipRole { ADMIN = "ADMIN", MEMBER = "MEMBER" } export declare enum CommunitySection { ANNOUNCEMENTS = "ANNOUNCEMENTS", RESOURCES = "RESOURCES", WIKI = "WIKI", DISCUSSIONS = "DISCUSSIONS" } export declare class JoinCommunityDto { joinCode: string; } export declare class CreateMembershipDto { userId: string; role: MembershipRole; } export declare class UpdateMembershipDto { role?: MembershipRole; } export declare class MembershipResponseDto { id: number; joinDate: Date; role: MembershipRole; lastVisitAnnouncementsDate?: Date; lastVisitResourcesDate?: Date; lastVisitWikiDate?: Date; lastVisitDiscussionsDate?: Date; communityId: number; user: UserDto; inviter?: UserDto; } export declare class UpdateLastVisitDto { section: CommunitySection; } export declare class LeaveCommunityOptionsDto { removeSharedResources: boolean; } export declare class SearchMembershipResponseDto { items: MembershipResponseDto[]; meta: PageMetadataDto; } export declare class CreateMembershipBatchDto { members: CreateMembershipDto[]; } export declare class DeleteMembersDto { userIds: number[]; } export declare class DeleteMembersResponseDto { numberOfMembersRemoved: number; numberOfInvitationsRemoved: number; } export declare class SearchMembershipQueryDto extends PaginationQueryDto { userEntId?: string; userEntIds?: string[]; searchTerm?: string; includePending?: boolean; } export declare class SearchMembershipBodyDto extends PaginationQueryDto implements SearchMembershipQueryDto { userEntId?: string; userEntIds?: string[]; searchTerm?: string; includePending?: boolean; }