InternalReadonlyknownIndicates if we have saved a known identity for this user. Typically, this means that we share a room with them (or have done in the past).
If this is false, then the other flags (isCrossSigningVerified, wasCrossSigningVerified,
needsUserApproval) will also be false. This means that we haven't seen this user before.
If this is true, then there are further possibilities:
If isCrossSigningVerified returns true, then we have cryptographically verified the current
identity of this user: that is the highest form of trust we have.
If needsUserApproval is true, that means that the user has changed their identity.
Otherwise, the user is "TOFU trusted": we have a record of their identity, and, typically, will share encrypted content with them as long as they retain that identity.
ReadonlyneedsIndicates if the identity has changed in a way that needs user approval.
This happens if the identity has changed since we first saw it, unless the new identity has also been verified by our user (eg via an interactive verification).
To rectify this, either:
true if this user is verified via cross signing
true if this user is verified via any means
true if we ever verified this user before (at least for the history of verifications observed by this device).
Represents the ways in which we trust a user