wire-api-0.1.0
Safe HaskellSafe-Inferred
LanguageGHC2021

Wire.API.Conversation.Protocol

Synopsis

Documentation

data ProtocolTag Source #

Instances

Instances details
Arbitrary ProtocolTag Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

FromJSON ProtocolTag Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

ToJSON ProtocolTag Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

Bounded ProtocolTag Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

Enum ProtocolTag Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

Generic ProtocolTag Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

Associated Types

type Rep ProtocolTag :: Type -> Type #

Show ProtocolTag Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

Eq ProtocolTag Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

Ord ProtocolTag Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

ToSchema ProtocolTag Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

ToSchema ProtocolTag Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

type Rep ProtocolTag Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

type Rep ProtocolTag = D1 ('MetaData "ProtocolTag" "Wire.API.Conversation.Protocol" "wire-api-0.1.0-3915FetN8WgFcCGrbk6Vve" 'False) (C1 ('MetaCons "ProtocolProteusTag" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "ProtocolMLSTag" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ProtocolMixedTag" 'PrefixI 'False) (U1 :: Type -> Type)))

protocolValidAction :: Protocol -> ConversationActionTag -> Bool Source #

Certain actions need to be performed at the level of the underlying protocol (MLS, mostly) before being applied to conversations. This function returns whether a given action tag is directly applicable to a conversation with the given protocol.

newtype Epoch Source #

Constructors

Epoch 

Fields

Instances

Instances details
Arbitrary Epoch Source # 
Instance details

Defined in Wire.API.MLS.Epoch

FromJSON Epoch Source # 
Instance details

Defined in Wire.API.MLS.Epoch

ToJSON Epoch Source # 
Instance details

Defined in Wire.API.MLS.Epoch

Enum Epoch Source # 
Instance details

Defined in Wire.API.MLS.Epoch

Show Epoch Source # 
Instance details

Defined in Wire.API.MLS.Epoch

Methods

showsPrec :: Int -> Epoch -> ShowS #

show :: Epoch -> String #

showList :: [Epoch] -> ShowS #

Eq Epoch Source # 
Instance details

Defined in Wire.API.MLS.Epoch

Methods

(==) :: Epoch -> Epoch -> Bool #

(/=) :: Epoch -> Epoch -> Bool #

ToSchema Epoch Source # 
Instance details

Defined in Wire.API.MLS.Epoch

ToSchema Epoch Source # 
Instance details

Defined in Wire.API.MLS.Epoch

ParseMLS Epoch Source # 
Instance details

Defined in Wire.API.MLS.Epoch

SerialiseMLS Epoch Source # 
Instance details

Defined in Wire.API.MLS.Epoch

data Protocol Source #

Conversation protocol and protocol-specific data.

Instances

Instances details
Arbitrary Protocol Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

FromJSON Protocol Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

ToJSON Protocol Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

Generic Protocol Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

Associated Types

type Rep Protocol :: Type -> Type #

Methods

from :: Protocol -> Rep Protocol x #

to :: Rep Protocol x -> Protocol #

Show Protocol Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

Eq Protocol Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

ToSchema Protocol Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

ToSchema Protocol Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

ToSchema (Versioned 'V5 Protocol) Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

type Rep Protocol Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

type Rep Protocol = D1 ('MetaData "Protocol" "Wire.API.Conversation.Protocol" "wire-api-0.1.0-3915FetN8WgFcCGrbk6Vve" 'False) (C1 ('MetaCons "ProtocolProteus" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "ProtocolMLS" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ConversationMLSData)) :+: C1 ('MetaCons "ProtocolMixed" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ConversationMLSData))))

data ConversationMLSData Source #

Constructors

ConversationMLSData 

Fields

Instances

Instances details
Arbitrary ConversationMLSData Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

FromJSON ConversationMLSData Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

ToJSON ConversationMLSData Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

Generic ConversationMLSData Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

Associated Types

type Rep ConversationMLSData :: Type -> Type #

Show ConversationMLSData Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

Eq ConversationMLSData Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

ToSchema ConversationMLSData Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

ToSchema (Versioned 'V5 ConversationMLSData) Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

type Rep ConversationMLSData Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

type Rep ConversationMLSData = D1 ('MetaData "ConversationMLSData" "Wire.API.Conversation.Protocol" "wire-api-0.1.0-3915FetN8WgFcCGrbk6Vve" 'False) (C1 ('MetaCons "ConversationMLSData" 'PrefixI 'True) (S1 ('MetaSel ('Just "cnvmlsGroupId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 GroupId) :*: S1 ('MetaSel ('Just "cnvmlsActiveData") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe ActiveMLSConversationData))))

data ActiveMLSConversationData Source #

Constructors

ActiveMLSConversationData 

Fields

Instances

Instances details
Arbitrary ActiveMLSConversationData Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

FromJSON ActiveMLSConversationData Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

ToJSON ActiveMLSConversationData Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

Generic ActiveMLSConversationData Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

Associated Types

type Rep ActiveMLSConversationData :: Type -> Type #

Show ActiveMLSConversationData Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

Eq ActiveMLSConversationData Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

ToSchema ActiveMLSConversationData Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

type Rep ActiveMLSConversationData Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

type Rep ActiveMLSConversationData = D1 ('MetaData "ActiveMLSConversationData" "Wire.API.Conversation.Protocol" "wire-api-0.1.0-3915FetN8WgFcCGrbk6Vve" 'False) (C1 ('MetaCons "ActiveMLSConversationData" 'PrefixI 'True) (S1 ('MetaSel ('Just "epoch") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Epoch) :*: (S1 ('MetaSel ('Just "epochTimestamp") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 UTCTime) :*: S1 ('MetaSel ('Just "ciphersuite") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 CipherSuiteTag))))

newtype ProtocolUpdate Source #

Instances

Instances details
Arbitrary ProtocolUpdate Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

FromJSON ProtocolUpdate Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

ToJSON ProtocolUpdate Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

Generic ProtocolUpdate Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

Associated Types

type Rep ProtocolUpdate :: Type -> Type #

Show ProtocolUpdate Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

Eq ProtocolUpdate Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

ToSchema ProtocolUpdate Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

ToSchema ProtocolUpdate Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

type Rep ProtocolUpdate Source # 
Instance details

Defined in Wire.API.Conversation.Protocol

type Rep ProtocolUpdate = D1 ('MetaData "ProtocolUpdate" "Wire.API.Conversation.Protocol" "wire-api-0.1.0-3915FetN8WgFcCGrbk6Vve" 'True) (C1 ('MetaCons "ProtocolUpdate" 'PrefixI 'True) (S1 ('MetaSel ('Just "unProtocolUpdate") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ProtocolTag)))