UserService

interface UserService

Inheritors

Functions

Link copied to clipboard
abstract fun canBanUser(roomId: RoomId, userId: UserId): Flow<Boolean>
Link copied to clipboard
abstract fun canInvite(roomId: RoomId): Flow<Boolean>
Link copied to clipboard
abstract fun canInviteUser(roomId: RoomId, userId: UserId): Flow<Boolean>
Link copied to clipboard
abstract fun canKickUser(roomId: RoomId, userId: UserId): Flow<Boolean>
Link copied to clipboard
abstract fun canRedactEvent(roomId: RoomId, eventId: EventId): Flow<Boolean>
Link copied to clipboard
abstract fun canSendEvent(roomId: RoomId, eventContent: RoomEventContent): Flow<Boolean>
abstract fun canSendEvent(roomId: RoomId, eventClass: KClass<out RoomEventContent>): Flow<Boolean>
Link copied to clipboard
inline fun <C : RoomEventContent> UserService.canSendEvent(roomId: RoomId): Flow<Boolean>
Link copied to clipboard
abstract fun canSetPowerLevelToMax(roomId: RoomId, userId: UserId): Flow<PowerLevel.User?>
Link copied to clipboard
abstract fun canUnbanUser(roomId: RoomId, userId: UserId): Flow<Boolean>
Link copied to clipboard
abstract fun <C : GlobalAccountDataEventContent> getAccountData(eventContentClass: KClass<C>, key: String = ""): Flow<C?>
Link copied to clipboard
Link copied to clipboard
abstract fun getAll(roomId: RoomId): Flow<Map<UserId, Flow<RoomUser?>>>
Link copied to clipboard
abstract fun getAllReceipts(roomId: RoomId): Flow<Map<UserId, Flow<RoomUserReceipts?>>>
Link copied to clipboard
abstract fun getById(roomId: RoomId, userId: UserId): Flow<RoomUser?>
Link copied to clipboard
abstract fun getPowerLevel(roomId: RoomId, userId: UserId): Flow<PowerLevel>
abstract fun getPowerLevel(userId: UserId, createEvent: ClientEvent.StateBaseEvent<CreateEventContent>, powerLevelsEventContent: PowerLevelsEventContent?): PowerLevel
Link copied to clipboard
abstract fun getPresence(userId: UserId): Flow<UserPresence?>
Link copied to clipboard
abstract fun getReceiptsById(roomId: RoomId, userId: UserId): Flow<RoomUserReceipts?>
Link copied to clipboard
abstract suspend fun loadMembers(roomId: RoomId, wait: Boolean = true)