summaryrefslogtreecommitdiffstats
path: root/vendor/go.mau.fi/libsignal/state/store/SessionStore.go
blob: e18fc0242565f1cf7551b11848f9e1b0067f17cb (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
package store

import (
	"go.mau.fi/libsignal/protocol"
	"go.mau.fi/libsignal/state/record"
)

// Session store is an interface for the persistent storage of session
// state information for remote clients.
type Session interface {
	LoadSession(address *protocol.SignalAddress) *record.Session
	GetSubDeviceSessions(name string) []uint32
	StoreSession(remoteAddress *protocol.SignalAddress, record *record.Session)
	ContainsSession(remoteAddress *protocol.SignalAddress) bool
	DeleteSession(remoteAddress *protocol.SignalAddress)
	DeleteAllSessions()
}