galley-0.83.0: Conversations
Safe HaskellSafe-Inferred
LanguageGHC2021

Galley.Effects.ConversationStore

Synopsis

ConversationStore Effect

data ConversationStore m a where Source #

Constructors

CreateConversationId :: ConversationStore m ConvId 
CreateConversation :: Local ConvId -> NewConversation -> ConversationStore m Conversation 
CreateMLSSelfConversation :: Local UserId -> ConversationStore m Conversation 
DeleteConversation :: ConvId -> ConversationStore m () 
GetConversation :: ConvId -> ConversationStore m (Maybe Conversation) 
GetConversationEpoch :: ConvId -> ConversationStore m (Maybe Epoch) 
GetConversations :: [ConvId] -> ConversationStore m [Conversation] 
GetConversationMetadata :: ConvId -> ConversationStore m (Maybe ConversationMetadata) 
GetGroupInfo :: ConvId -> ConversationStore m (Maybe GroupInfoData) 
IsConversationAlive :: ConvId -> ConversationStore m Bool 
GetRemoteConversationStatus :: UserId -> [Remote ConvId] -> ConversationStore m (Map (Remote ConvId) MemberStatus) 
SelectConversations :: UserId -> [ConvId] -> ConversationStore m [ConvId] 
SetConversationType :: ConvId -> ConvType -> ConversationStore m () 
SetConversationName :: ConvId -> Range 1 256 Text -> ConversationStore m () 
SetConversationAccess :: ConvId -> ConversationAccessData -> ConversationStore m () 
SetConversationReceiptMode :: ConvId -> ReceiptMode -> ConversationStore m () 
SetConversationMessageTimer :: ConvId -> Maybe Milliseconds -> ConversationStore m () 
SetConversationEpoch :: ConvId -> Epoch -> ConversationStore m () 
SetConversationCipherSuite :: ConvId -> CipherSuiteTag -> ConversationStore m () 
SetGroupInfo :: ConvId -> GroupInfoData -> ConversationStore m () 
AcquireCommitLock :: GroupId -> Epoch -> NominalDiffTime -> ConversationStore m LockAcquired 
ReleaseCommitLock :: GroupId -> Epoch -> ConversationStore m () 
UpdateToMixedProtocol :: Local ConvId -> ConvType -> ConversationStore m () 
UpdateToMLSProtocol :: Local ConvId -> ConversationStore m () 

Create conversation

Read conversation

Update conversation

Delete conversation

MLS commit lock management