Properties

Link copied to clipboard

Whether the current object has been destroyed and its reference is gone in the Rust side.

Functions

Link copied to clipboard
open suspend override fun addAdmin(inboxId: InboxId)
Link copied to clipboard
open override fun addedByInboxId(): InboxId?
Link copied to clipboard
open suspend override fun addMembers(members: List<InboxId>): MembershipResult
Link copied to clipboard
Link copied to clipboard
open suspend override fun addSuperAdmin(inboxId: InboxId)

Add members by account identity or handle. Hosts present this as an addMembers overload or union. Every handle resolves through the verified handle resolver first, and all members join in one commit.

Link copied to clipboard
open override fun close()
Link copied to clipboard
open suspend override fun countMessages(options: ListMessagesOptions?): ULong
Link copied to clipboard
open override fun createdAt(): Timestamp
Link copied to clipboard
open override fun creatorInboxId(): InboxId?
Link copied to clipboard
open suspend override fun debugInfo(): ConversationDebugInfo
Link copied to clipboard
open suspend override fun deleteMessage(id: MessageId): MessageId
Link copied to clipboard
open override fun destroy()
Link copied to clipboard
open suspend override fun hmacKeys(): List<HmacKey>
Link copied to clipboard
open override fun id(): ConversationId
Link copied to clipboard
open suspend override fun isAdmin(inboxId: InboxId): Boolean
Link copied to clipboard
open override fun isCreator(): Boolean
Link copied to clipboard
open suspend override fun isSuperAdmin(inboxId: InboxId): Boolean
Link copied to clipboard
open override fun kind(): ConversationKind
Link copied to clipboard
open suspend override fun lastActivityAt(contentTypes: List<ContentTypeId>?): Timestamp
Link copied to clipboard
open suspend override fun lastMessage(): Message?
Link copied to clipboard
open suspend override fun lastReadTimes(): Map<String, Timestamp>
Link copied to clipboard
open suspend override fun listAdmins(): List<InboxId>
Link copied to clipboard
open suspend override fun listSuperAdmins(): List<InboxId>
Link copied to clipboard
open suspend override fun mapValue(field: MetadataFieldRef, key: FieldKey): FieldValue?

The value under key of the map field. An inbox ID key must be lowercase hex; any other spelling fails InvalidArgument.

Link copied to clipboard
open suspend override fun members(): List<Member>
Link copied to clipboard
Link copied to clipboard
open suspend override fun messageHistoryPage(options: ListMessagesOptions? = null, before: MessageHistoryPosition? = null, after: MessageHistoryPosition? = null): MessageHistoryPage

Read Published history by sent time, then immutable local delivery order. Defaults are ascending order and limit 50. Messenger uses descending order for newest and older pages. Explicit limits must be positive. None or SentAt sort is accepted; InsertedAt and pending statuses fail. All other selection filters apply before the page limit. Before is strict tuple less-than; after is strict tuple greater-than. Direction never changes those meanings. Deleted boundaries stay valid. First/last positions cover consumed raw rows, even after conversion loss. A sentinel key sets has_more without loading its base body. This query does not acquire a reader lease or acknowledge messages.

Link copied to clipboard
open suspend override fun messageHistorySnapshot(limit: UInt): MessageHistorySnapshot
Link copied to clipboard
open suspend override fun messageReader(options: ConversationMessageReaderOptions? = null): MessageReader
Link copied to clipboard
open suspend override fun messageRecoveryPage(options: ListMessagesOptions? = null, before: MessageRecoveryPosition? = null, after: MessageRecoveryPosition? = null): MessageRecoveryPage

Read Failed and Unpublished rows in sent-time and raw ID order. Defaults are ascending order, no kind filter, and limit 50. Explicit Failed or Unpublished is accepted. Published, InsertedAt, and zero limits fail. Other filters apply before the limit. Before and after are strict tuple bounds in either direction. Keep message_cursor opaque. Deleted and published boundaries remain valid. Raw positions and skipped_count cover rows that fail conversion. This query does not acquire a reader lease or allocate delivery numbers.

Link copied to clipboard
open suspend override fun messages(options: ListMessagesOptions? = null): List<Message>
Link copied to clipboard
open suspend override fun metadataField(name: String): MetadataFieldDescriptor?

The field named name. A well-known field wins over an application field with the same name.

Link copied to clipboard
open suspend override fun metadataFields(): List<MetadataFieldDescriptor>

The conversation's fields in component ID order.

Link copied to clipboard
open suspend override fun metadataValue(field: MetadataFieldRef): MetadataValue?

The value of field, absent when the conversation holds none.

Link copied to clipboard
open suspend override fun metadataValues(fields: List<MetadataFieldRef>): List<MetadataFieldValue>

The values of fields in request order, read from one snapshot.

Link copied to clipboard
open suspend override fun peerInboxIds(): List<InboxId>
Link copied to clipboard
open suspend override fun prepareMessage(encoded: EncodedContent, options: SendOptions? = null): MessageId
Link copied to clipboard
suspend fun <T : Any> Group.prepareMessage(codec: ContentCodec<T>, value: T, options: SendOptions? = null): MessageId
Link copied to clipboard
open suspend override fun publishMessage(id: MessageId)
Link copied to clipboard
open suspend override fun publishMessages()
Link copied to clipboard
open suspend override fun removeAdmin(inboxId: InboxId)
Link copied to clipboard
open suspend override fun removeMembers(members: List<InboxId>)
Link copied to clipboard
suspend fun Group.removeMembers(members: List<PublicIdentity>)
Link copied to clipboard
open suspend override fun removeSuperAdmin(inboxId: InboxId)

Remove members by account identity or handle. Hosts present this as a removeMembers overload or union. Every handle resolves through the verified handle resolver first, and all members leave in one commit.

Link copied to clipboard
open suspend override fun requestRemoval()
Link copied to clipboard
open suspend override fun send(encoded: EncodedContent, options: SendOptions? = null): MessageId

Host stream ownership.

Link copied to clipboard
suspend fun <T : Any> Group.send(codec: ContentCodec<T>, value: T, options: SendOptions? = null): MessageId
Link copied to clipboard
open suspend override fun sendActions(actions: Actions, options: SendOptions? = null): MessageId
Link copied to clipboard
open suspend override fun sendAttachment(attachment: Attachment, options: SendOptions? = null): MessageId
Link copied to clipboard
open suspend override fun sendIntent(intent: Intent, options: SendOptions? = null): MessageId
Link copied to clipboard
open suspend override fun sendMarkdown(markdown: String, options: SendOptions? = null): MessageId
Link copied to clipboard
open suspend override fun sendMultiRemoteAttachment(attachment: MultiRemoteAttachment, options: SendOptions? = null): MessageId
Link copied to clipboard
open suspend override fun sendReaction(reference: MessageId, referenceInboxId: InboxId?, reaction: Reaction, options: SendOptions? = null): MessageId
Link copied to clipboard
open suspend override fun sendReadReceipt(options: SendOptions? = null): MessageId
Link copied to clipboard
open suspend override fun sendRemoteAttachment(attachment: RemoteAttachment, options: SendOptions? = null): MessageId
Link copied to clipboard
open suspend override fun sendReply(reference: MessageId, referenceInboxId: InboxId?, content: EncodedContent, options: SendOptions? = null): MessageId
Link copied to clipboard
open suspend override fun sendText(text: String, options: SendOptions? = null): MessageId
Link copied to clipboard
open suspend override fun sendTransactionReference(reference: TransactionReference, options: SendOptions? = null): MessageId
Link copied to clipboard
open suspend override fun sendWalletSendCalls(calls: WalletSendCalls, options: SendOptions? = null): MessageId
Link copied to clipboard
open suspend override fun setNotifications(value: NotificationOverride)
Link copied to clipboard
open suspend override fun state(): GroupState
Link copied to clipboard
fun Group.streamMessages(options: ConversationMessageStreamOptions = ConversationMessageStreamOptions()): Flow<Message>

This cold Flow holds its client before and between collections. Each collection opens a reader. With direct sequential collection, the next read acknowledges the previous message after the collector returns. A buffer or asynchronous operator can let acknowledgement start before downstream work finishes. Cancellation cannot undo an acknowledgement that has started.

Link copied to clipboard
open suspend override fun sync()
Link copied to clipboard
open override fun topic(): String
Link copied to clipboard
open suspend override fun updateAppData(value: String, expected: String?)
Link copied to clipboard
open suspend override fun updateConsentState(state: ConsentState)
Link copied to clipboard
open suspend override fun updateDescription(value: String)
Link copied to clipboard
open suspend override fun updateDisappearingSettings(settings: DisappearingSettings?)
Link copied to clipboard
open suspend override fun updateImageUrl(value: String)
Link copied to clipboard
open suspend override fun updateMetadataField(field: MetadataFieldRef, operation: ComponentMutation)

Applies operation to field in one commit, subject to the field's committed type and policies.

Link copied to clipboard
open suspend override fun updateName(value: String)
Link copied to clipboard
open suspend override fun updatePermission(kind: PermissionUpdateKind, policy: PermissionPolicy, metadataField: MetadataFieldKind?)
Link copied to clipboard
open suspend override fun updateUserData(values: List<UserFieldUpdate>)

Sets or clears the caller's own user field values in one commit. Nothing is committed when nothing changes.

Link copied to clipboard
open suspend override fun userData(fields: List<MetadataFieldRef>?, inboxIds: List<InboxId>?): Map<InboxId, List<UserFieldValue>>

User field values by inbox, read from one snapshot. Absent fields selects every user field, and absent inbox_ids the current members (the pair in a DM). Every selected inbox has an entry, empty when it holds no selected value. A field whose value does not decode contributes nothing. Inbox IDs must be lowercase hex, the form the result is keyed by; any other spelling fails InvalidArgument.