LeaveSubconversationUseCaseImpl

internal class LeaveSubconversationUseCaseImpl(val conversationApi: ConversationApi, val subconversationRepository: SubconversationRepository, val selfUserId: UserId, val selfClientIdProvider: CurrentClientIdProvider, val subgroupProposals: PendingSubconversationProposals) : LeaveSubconversationUseCase

Constructors

Link copied to clipboard
constructor(conversationApi: ConversationApi, subconversationRepository: SubconversationRepository, selfUserId: UserId, selfClientIdProvider: CurrentClientIdProvider, subgroupProposals: PendingSubconversationProposals)

Functions

Link copied to clipboard
open suspend operator override fun invoke(mlsContext: MlsCoreCryptoContext, conversationId: ConversationId, subconversationId: SubconversationId): Either<CoreFailure, PendingSubconversationProposal?>

Returns the pending proposal marked for retirement after the backend leave, if any. The caller must acknowledge that exact token only after the native transaction containing this operation commits.

Link copied to clipboard
suspend fun retrieveSubconversationGroupId(conversationId: ConversationId, subconversationId: SubconversationId): Either<CoreFailure, GroupID?>