Do you type Matrix roomIDs, userIDs, and eventIDs as
string
?
Have you ever accidentally mixed the two up?
Well fear no more, this library provides distinct types for each kind of identifier, and also a wrapper for the various ways of referring to rooms.
async function acceptInvitation(
inviteSender: StringUserID,
room: MatrixRoomID
): Promise<Result<void>> {
console.log(
`accepting invitation from ${inviteSender} to ${room.toPermalink()}`
);
return await client.joinRoom(room.toRoomIDOrAlias(), room.getViaServers());
}