Matrix Client Configuration
constructor(name: String? = null, storeTimelineEventContentUnencrypted: Boolean = true, markOwnMessageAsRead: Boolean = false, autoJoinUpgradedRooms: Boolean = true, deleteRoomsOnLeave: Boolean = true, deleteRooms: MatrixClientConfiguration.DeleteRooms = DeleteRooms.WhenNotJoined, deleteSentOutboxMessageDelay: Duration = 10.seconds, userPresenceActivityThreshold: Duration = 5.minutes, cacheExpireDurations: MatrixClientConfiguration.CacheExpireDurations = CacheExpireDurations.default(1.minutes), syncLoopTimeout: Duration = 30.seconds, syncLoopDelays: MatrixClientConfiguration.SyncLoopDelays = SyncLoopDelays.default(), syncErrorDelayConfig: RetryFlowDelayConfig = RetryFlowDelayConfig.sync, lastRelevantEventFilter: (ClientEvent.RoomEvent<*>) -> Boolean = { it is RoomEvent.MessageEvent<*> }, syncFilter: Filters = Filters(), syncOnceFilter: Filters = Filters(presence = Filters.EventFilter(limit = 0)), httpClientEngine: HttpClientEngine? = null, httpClientConfig: HttpClientConfig<*>.() -> Unit? = null, modules: List<Module>? = null, modulesFactory: () -> List<Module>? = null, modulesFactories: List<ModuleFactory> = createTrixnityDefaultModuleFactories(), matrixClientServerApiClientFactory: MatrixClientServerApiClientFactory = object : MatrixClientServerApiClientFactory {}, experimentalFeatures: MatrixClientConfiguration.ExperimentalFeatures = ExperimentalFeatures())