Package-level declarations

Types

Link copied to clipboard
sealed class BreakSessionResult
Link copied to clipboard
Link copied to clipboard
internal class BreakSessionUseCaseImpl(transactionProvider: CryptoTransactionProvider, idMapper: <Error class: unknown class> = MapperProvider.idMapper(), dispatchers: <Error class: unknown class> = KaliumDispatcherImpl) : BreakSessionUseCase
Link copied to clipboard
data class BrokenState(val invalidHash: Boolean, val otherHash: Boolean, val otherAlgorithm: Boolean)
Link copied to clipboard
class ChangeProfilingUseCase(userStorage: <Error class: unknown class>)
Link copied to clipboard
data class ConversationCryptoDetail(val conversationId: <Error class: unknown class>, val conversationName: String?, val protocolType: ConversationCryptoProtocolType, val groupId: String?, val dbGroupState: DetailGroupState?, val dbEpoch: <Error class: unknown class>?, val ccEpoch: <Error class: unknown class>?, val ccLookupFailed: Boolean, val selfIsMember: Boolean)
Link copied to clipboard
data class ConversationCryptoStats(val totalConversations: Int, val proteusCount: Int, val mlsCount: Int, val mixedCount: Int, val mlsDriftCount: Int, val mixedDriftCount: Int, val mlsLeftCount: Int, val mixedLeftCount: Int, val ccLookupFailedCount: Int, val conversationDetails: List<ConversationCryptoDetail>)
Link copied to clipboard
data class DebugFeedConfig(val messages: Boolean = false, val reactions: Boolean = false, val unreadEvents: Boolean = false, val mentions: Boolean = false)
Link copied to clipboard

Debug-only use case that can feed a conversation with various synthetic datasets (reactions, unread events, etc.) for performance and behaviour testing.

Link copied to clipboard
internal class DebugFeedConversationUseCaseImpl(messagesFeeder: <Error class: unknown class>, reactionsFeeder: <Error class: unknown class>, unreadEventsFeeder: <Error class: unknown class>, mentionsFeeder: <Error class: unknown class>) : DebugFeedConversationUseCase
Link copied to clipboard
sealed class DebugFeedResult
Link copied to clipboard
class DebugScope(val messageRepository: MessageRepository, conversationRepository: ConversationRepository, mlsConversationRepository: MLSConversationRepository, joinExistingMLSConversationUseCaseProvider: () -> JoinExistingMLSConversationUseCase, clientRepository: ClientRepository, clientRemoteRepository: ClientRemoteRepository, currentClientIdProvider: CurrentClientIdProvider, preKeyRepository: PreKeyRepository, userRepository: UserRepository, featureConfigRepository: FeatureConfigRepository, userId: <Error class: unknown class>, assetRepository: AssetRepository, eventRepository: EventRepository, syncManager: SyncManager, slowSyncRepository: SlowSyncRepository, messageSendingScheduler: MessageSendingScheduler, selfConversationIdProvider: SelfConversationIdProvider, staleEpochVerifier: StaleEpochVerifier, eventProcessor: EventProcessor, legalHoldHandler: LegalHoldHandler, notificationTokenRepository: NotificationTokenRepository, scope: <Error class: unknown class>, userStorage: <Error class: unknown class>, mlsMissingUsersMessageRejectionHandlerProvider: () -> MLSMissingUsersMessageRejectionHandler, updateSelfClientCapabilityToConsumableNotifications: UpdateSelfClientCapabilityToConsumableNotificationsUseCase, e2EIClientProvider: E2EIClientProvider, selfServerConfig: SelfServerConfigUseCase, fetchConversationUseCase: FetchConversationUseCase, resetMLSConversationUseCase: ResetMLSConversationUseCase, transactionProvider: CryptoTransactionProvider, refillKeyPackagesUseCase: RefillKeyPackagesUseCase, logger: <Error class: unknown class>, val dispatcher: <Error class: unknown class> = KaliumDispatcherImpl)
Link copied to clipboard
Link copied to clipboard

Disables processing of incoming events but still mark them as processed.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
internal class EstablishSessionUseCaseImpl(sessionEstablisher: SessionEstablisher, transactionProvider: CryptoTransactionProvider) : EstablishSessionUseCase
Link copied to clipboard

Retrieves crypto statistics for all conversations. Returns counts of Proteus, MLS, and Mixed conversations, and checks which MLS/Mixed conversations are established in core crypto.

Link copied to clipboard

Returns the current conv epoch from core-crypto see MlsCoreCryptoContext.conversationEpoch

Link copied to clipboard

Returns the currently configured debug E2EI certificate expiration time in seconds.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
class ObserveDatabaseLoggerStateUseCase(userStorage: <Error class: unknown class>)

Use case to observe the state of the database logger.

Use case to observe if the client has consumable notifications enabled.

Link copied to clipboard
Link copied to clipboard

Use case responsible for optimizing the local SQLCipher database by invoking PRAGMA optimize. This operation analyzes and optimizes indexes, potentially improving the performance of read-heavy queries, especially on large datasets (e.g., conversations and messages).

Link copied to clipboard
internal class OptimizeDatabaseUseCaseImpl(optimizer: <Error class: unknown class>) : OptimizeDatabaseUseCase
Link copied to clipboard

Use case to recover from an invalid removal key state on all MLS conversations. This is an experimental feature to be trigger manually via debug options for now.

Link copied to clipboard
internal class RepairFaultyRemovalKeysUseCaseImpl(selfUserId: <Error class: unknown class>, conversationRepository: ConversationRepository, resetMLSConversation: ResetMLSConversationUseCase, transactionProvider: CryptoTransactionProvider, dispatcher: <Error class: unknown class> = KaliumDispatcherImpl) : RepairFaultyRemovalKeysUseCase
Link copied to clipboard
sealed interface RepairResult

Result of the repair operation for faulty removal keys.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
internal class SendBrokenAssetMessageUseCaseImpl(currentClientIdProvider: CurrentClientIdProvider, assetDataSource: AssetRepository, userId: <Error class: unknown class>, slowSyncRepository: SlowSyncRepository, messageSender: <Error class: unknown class>, messageRepository: MessageRepository) : SendBrokenAssetMessageUseCase
Link copied to clipboard
Link copied to clipboard
class SendConfirmationUseCase(currentClientIdProvider: CurrentClientIdProvider, slowSyncRepository: SlowSyncRepository, messageSender: <Error class: unknown class>, selfUserId: <Error class: unknown class>)

This use case can be used by QA to send read and delivery receipts. This debug function can be used to test correct client behaviour. It should not be used by clients itself.

Link copied to clipboard

Sets debug E2EI certificate expiration time in seconds for the current session.

Link copied to clipboard

Forces the usage of async notifications system. This will register the client capability to consume async notifications.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
internal class SynchronizeExternalDataUseCaseImpl(val eventRepository: EventRepository, val eventProcessor: EventProcessor, transactionProvider: CryptoTransactionProvider) : SynchronizeExternalDataUseCase
Link copied to clipboard
data class TargetedRepairParam(val domain: String, val faultyKeys: List<String>)

Parameters for targeted repair of faulty removal keys in MLS conversations.

Properties

internal val DEFAULT_E2EI_CERTIFICATE_EXPIRATION_SECONDS: <Error class: unknown class>