Since uniqueness of receipts is determined per type and per thread it's common to use them as keys of a map.
ruma-common
Common types for other Ruma crates.
The feature-gated modules are defined as follow:
api
module
Behind the api
feature, core types used to define the requests and responses for each endpoint in
the various Matrix API specifications. These types can be shared by client
and server code for all Matrix APIs.
events
module
Behind the events
feature, serializable types for the events in the Matrix
specification that can be shared by client and server code.