Package-level declarations

Types

Link copied to clipboard
class CurrentSyncState(currentSyncState: StateFlow<SyncState>) : StateFlow<SyncState>
Link copied to clipboard
interface MatrixClient
Link copied to clipboard
Link copied to clipboard

Properties

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Functions

Link copied to clipboard
Link copied to clipboard
fun createDefaultModules(): List<Module>
Link copied to clipboard
fun <K, V> Flow<Map<K, Flow<V?>>?>.flatten(filterNullValues: Boolean = true, throttle: Duration = 200.milliseconds): Flow<Map<K, V?>?>

A change of the outer flow results in new collect of the inner flows. Because this is an expensive operation, the outer flow is throttled by default.

Link copied to clipboard
suspend fun MatrixClient.Companion.fromStore(repositoriesModule: Module, mediaStore: MediaStore, onSoftLogin: suspend () -> MatrixClient.SoftLoginInfo? = null, configuration: MatrixClientConfiguration.() -> Unit = {}): Result<MatrixClient?>
Link copied to clipboard
fun Event<*>?.getEventId(): EventId?
Link copied to clipboard
fun Event<*>?.getOriginTimestamp(): Long?
Link copied to clipboard
fun Event<*>?.getRoomId(): RoomId?
Link copied to clipboard
fun Event<*>?.getSender(): UserId?
Link copied to clipboard
fun Event<*>?.getStateKey(): String?
Link copied to clipboard
suspend fun MatrixClient.Companion.login(baseUrl: Url, identifier: IdentifierType, password: String? = null, token: String? = null, loginType: LoginType = LoginType.Password, deviceId: String? = null, initialDeviceDisplayName: String? = null, repositoriesModule: Module, mediaStore: MediaStore, configuration: MatrixClientConfiguration.() -> Unit = {}): Result<MatrixClient>
Link copied to clipboard
suspend fun MatrixClient.Companion.loginWith(baseUrl: Url, repositoriesModule: Module, mediaStore: MediaStore, getLoginInfo: suspend (MatrixClientServerApiClientImpl) -> Result<MatrixClient.LoginInfo>, configuration: MatrixClientConfiguration.() -> Unit = {}): Result<MatrixClient>
Link copied to clipboard
suspend fun StateFlow<SyncState>.retryInfiniteWhenSyncIs(syncState: SyncState, vararg moreSyncStates: SyncState, scheduleBase: Duration = 100.milliseconds, scheduleFactor: Double = 2.0, scheduleLimit: Duration = 5.minutes, onError: suspend (error: Throwable) -> Unit = {}, onCancel: suspend () -> Unit = {}, block: suspend () -> Unit)
Link copied to clipboard
suspend fun <T> retryWhen(condition: Flow<Boolean>, scheduleBase: Duration = 100.milliseconds, scheduleFactor: Double = 2.0, scheduleLimit: Duration = 5.minutes, onError: suspend (error: Throwable) -> Unit = {}, onCancel: suspend () -> Unit = {}, block: suspend () -> T): T
Link copied to clipboard
suspend fun <T> StateFlow<SyncState>.retryWhenSyncIs(syncState: SyncState, vararg moreSyncStates: SyncState, scheduleBase: Duration = 100.milliseconds, scheduleFactor: Double = 2.0, scheduleLimit: Duration = 5.minutes, onError: suspend (error: Throwable) -> Unit = {}, onCancel: suspend () -> Unit = {}, block: suspend () -> T): T
Link copied to clipboard
suspend fun Url.serverDiscovery(httpClientFactory: (HttpClientConfig<*>.() -> Unit) -> HttpClient = { HttpClient(it) }): Result<Url>
suspend fun String.serverDiscovery(httpClientFactory: (HttpClientConfig<*>.() -> Unit) -> HttpClient = { HttpClient(it) }): Result<Url>
suspend fun UserId.serverDiscovery(httpClientFactory: (HttpClientConfig<*>.() -> Unit) -> HttpClient = { HttpClient(it) }): Result<Url>
Link copied to clipboard
fun String.toMxcUri(): Url