diff options
Diffstat (limited to 'interface')
-rw-r--r-- | interface/matrix.go | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/interface/matrix.go b/interface/matrix.go index f4f46ef..122757f 100644 --- a/interface/matrix.go +++ b/interface/matrix.go @@ -64,4 +64,17 @@ type MatrixContainer interface { DownloadToDisk(uri id.ContentURI, file *attachment.EncryptedFile, target string) (string, error) GetDownloadURL(uri id.ContentURI) string GetCachePath(uri id.ContentURI) string + + Crypto() Crypto +} + +type Crypto interface { + Load() error + FlushStore() error + ProcessSyncResponse(resp *mautrix.RespSync, since string) + HandleMemberEvent(*event.Event) + DecryptMegolmEvent(*event.Event) (*event.Event, error) + EncryptMegolmEvent(id.RoomID, event.Type, event.Content) (*event.EncryptedEventContent, error) + ShareGroupSession(id.RoomID, []id.UserID) error + Fingerprint() string } |