Package-level declarations

Types

Link copied to clipboard
@Serializable
data class Account(val olmPickleKey: String?, val baseUrl: String?, val userId: UserId?, val deviceId: String?, val accessToken: String?, val syncBatchToken: String?, val filterId: String?, val backgroundFilterId: String?, val displayName: String?, val avatarUrl: String?)
Link copied to clipboard
class AccountStore(repository: AccountRepository, rtm: RepositoryTransactionManager, storeScope: CoroutineScope) : Store
Link copied to clipboard
class GlobalAccountDataStore(globalAccountDataRepository: GlobalAccountDataRepository, rtm: RepositoryTransactionManager, contentMappings: EventContentSerializerMappings, storeScope: CoroutineScope) : Store
Link copied to clipboard
@Serializable
data class KeyChainLink(val signingUserId: UserId, val signingKey: Key.Ed25519Key, val signedUserId: UserId, val signedKey: Key.Ed25519Key)
Link copied to clipboard
@Serializable
interface KeySignatureTrustLevel
Link copied to clipboard
class KeyStore(outdatedKeysRepository: OutdatedKeysRepository, deviceKeysRepository: DeviceKeysRepository, crossSigningKeysRepository: CrossSigningKeysRepository, keyVerificationStateRepository: KeyVerificationStateRepository, keyChainLinkRepository: KeyChainLinkRepository, secretsRepository: SecretsRepository, secretKeyRequestRepository: SecretKeyRequestRepository, rtm: RepositoryTransactionManager, storeScope: CoroutineScope) : Store
Link copied to clipboard
@Serializable
interface KeyVerificationState
Link copied to clipboard
@Serializable
data class MediaCacheMapping(val cacheUri: String, val mxcUri: String? = null, val size: Int? = null, val contentType: String? = ContentType.Application.OctetStream.toString())
Link copied to clipboard
class MediaCacheMappingStore(mediaCacheMappingRepository: MediaCacheMappingRepository, rtm: RepositoryTransactionManager, storeScope: CoroutineScope) : Store
Link copied to clipboard
class OlmCryptoStore(olmAccountRepository: OlmAccountRepository, olmSessionRepository: OlmSessionRepository, inboundMegolmSessionRepository: InboundMegolmSessionRepository, inboundMegolmMessageIndexRepository: InboundMegolmMessageIndexRepository, outboundMegolmSessionRepository: OutboundMegolmSessionRepository, rtm: RepositoryTransactionManager, storeScope: CoroutineScope) : Store
Link copied to clipboard
@Serializable
data class Room(val roomId: RoomId, val name: RoomDisplayName? = null, val avatarUrl: String? = null, val isDirect: Boolean = false, val lastEventId: EventId? = null, val lastRelevantEventId: EventId? = null, val unreadMessageCount: Long = 0, val encryptionAlgorithm: EncryptionAlgorithm? = null, val membership: Membership = Membership.JOIN, val membersLoaded: Boolean = false)
Link copied to clipboard
class RoomAccountDataStore(roomAccountDataRepository: RoomAccountDataRepository, rtm: RepositoryTransactionManager, contentMappings: EventContentSerializerMappings, storeScope: CoroutineScope) : Store
Link copied to clipboard
@Serializable
data class RoomDisplayName(val explicitName: String? = null, val isEmpty: Boolean = false, val otherUsersCount: Long = 0, summary: Sync.Response.Rooms.JoinedRoom.RoomSummary?)
Link copied to clipboard
@Serializable
data class RoomOutboxMessage<T : MessageEventContent>(val transactionId: String, val roomId: RoomId, val content: T, val sentAt: Instant? = null, val retryCount: Int = 0, val keepMediaInCache: Boolean = true, val mediaUploadProgress: MutableStateFlow<FileTransferProgress?> = MutableStateFlow(null))
Link copied to clipboard
class RoomOutboxMessageStore(roomOutboxMessageRepository: RoomOutboxMessageRepository, rtm: RepositoryTransactionManager, storeScope: CoroutineScope) : Store
Link copied to clipboard
class RoomStateStore(roomStateRepository: RoomStateRepository, rtm: RepositoryTransactionManager, contentMappings: EventContentSerializerMappings, storeScope: CoroutineScope) : Store
Link copied to clipboard
class RoomStore(roomRepository: RoomRepository, rtm: RepositoryTransactionManager, storeScope: CoroutineScope) : Store
Link copied to clipboard
class RoomTimelineStore(timelineEventRepository: TimelineEventRepository, timelineEventRelationRepository: TimelineEventRelationRepository, rtm: RepositoryTransactionManager, storeScope: CoroutineScope) : Store
Link copied to clipboard
@Serializable
data class RoomUser(val roomId: RoomId, val userId: UserId, val name: String, val event: Event<MemberEventContent>, val lastReadMessage: EventId? = null)
Link copied to clipboard
class RoomUserStore(roomUserRepository: RoomUserRepository, rtm: RepositoryTransactionManager, storeScope: CoroutineScope) : Store
Link copied to clipboard
class RootStore(stores: List<Store>) : Store
Link copied to clipboard
interface Store
Link copied to clipboard
@Serializable
data class StoredCrossSigningKeys(val value: SignedCrossSigningKeys, val trustLevel: KeySignatureTrustLevel)
Link copied to clipboard
@Serializable
data class StoredDeviceKeys(val value: SignedDeviceKeys, val trustLevel: KeySignatureTrustLevel)
Link copied to clipboard
@Serializable
data class StoredSecret(val event: Event.GlobalAccountDataEvent<out SecretEventContent>, val decryptedPrivateKey: String)
Link copied to clipboard
@Serializable
data class StoredSecretKeyRequest(val content: SecretKeyRequestEventContent, val receiverDeviceIds: Set<String>, val createdAt: Instant)
Link copied to clipboard
@Serializable
data class TimelineEvent(val event: Event.RoomEvent<*>, val content: Result<RoomEventContent>? = if (event.isEncrypted) null else Result.success(event.content), val roomId: RoomId = event.roomId, val eventId: EventId = event.id, val previousEventId: EventId?, val nextEventId: EventId?, val gap: TimelineEvent.Gap?)
Link copied to clipboard
@Serializable
data class TimelineEventRelation(val roomId: RoomId, val eventId: EventId, val relationType: RelationType, val relatedEventId: EventId)

Functions

Link copied to clipboard
fun createStoreModule(): Module
Link copied to clipboard
Link copied to clipboard
inline fun <C : GlobalAccountDataEventContent> GlobalAccountDataStore.get(key: String = ""): Flow<Event.GlobalAccountDataEvent<C>?>
inline fun <C : StateEventContent> RoomStateStore.get(roomId: RoomId): Flow<Map<String, Event<C>?>?>
inline fun <C : RoomAccountDataEventContent> RoomAccountDataStore.get(roomId: RoomId, key: String = ""): Flow<Event.RoomAccountDataEvent<C>?>
Link copied to clipboard
inline fun <C : StateEventContent> RoomStateStore.getByStateKey(roomId: RoomId, stateKey: String = ""): Flow<Event<C>?>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
inline suspend fun KeyStore.isTracked(userId: UserId): Boolean
Link copied to clipboard
inline suspend fun RoomStateStore.members(roomId: RoomId, membership: Membership, vararg moreMemberships: Membership): Set<UserId>
Link copied to clipboard
inline suspend fun RoomStateStore.membersCount(roomId: RoomId, membership: Membership, vararg moreMemberships: Membership): Long
Link copied to clipboard
inline suspend fun OlmCryptoStore.waitForInboundMegolmSession(roomId: RoomId, sessionId: String, firstKnownIndexLessThen: Long? = null)

Properties

Link copied to clipboard
Link copied to clipboard
val Event<*>.isEncrypted: Boolean
Link copied to clipboard
val RoomUser.membership: Membership
Link copied to clipboard