github.com/status-im/status-go@v1.1.0/server/pairing/interfaces.go (about) 1 package pairing 2 3 // PayloadMounterReceiver represents a struct that can: 4 // - mount payload data from a PayloadRepository or a PayloadLoader into memory (PayloadMounter.Mount) 5 // - prepare data to be sent encrypted (PayloadMounter.ToSend) via some transport 6 // - receive and prepare encrypted transport data (PayloadReceiver.Receive) to be stored 7 // - prepare the received (PayloadReceiver.Received) data to be stored to a PayloadRepository or a PayloadStorer 8 type PayloadMounterReceiver interface { 9 PayloadMounter 10 PayloadReceiver 11 } 12 13 // PayloadRepository represents a struct that can both load and store data to an internally managed data store 14 type PayloadRepository interface { 15 PayloadLoader 16 PayloadStorer 17 } 18 19 type PayloadLocker interface { 20 // LockPayload prevents future excess to outbound safe and received data 21 LockPayload() 22 } 23 24 type ProtobufMarshaller interface { 25 MarshalProtobuf() ([]byte, error) 26 } 27 28 type ProtobufUnmarshaller interface { 29 UnmarshalProtobuf([]byte) error 30 }