@@ -2127,6 +2127,10 @@ internal open class UniffiVTableCallbackInterfaceWidgetCapabilitiesProvider(
21272127
21282128
21292129
2130+
2131+
2132+
2133+
21302134
21312135
21322136
@@ -2210,8 +2214,12 @@ internal interface UniffiLib : Library {
22102214 ): Long
22112215 fun uniffi_matrix_sdk_ffi_fn_method_client_cached_avatar_url(`ptr`: Pointer,uniffi_out_err: UniffiRustCallStatus,
22122216 ): RustBuffer.ByValue
2217+ fun uniffi_matrix_sdk_ffi_fn_method_client_can_deactivate_account(`ptr`: Pointer,uniffi_out_err: UniffiRustCallStatus,
2218+ ): Byte
22132219 fun uniffi_matrix_sdk_ffi_fn_method_client_create_room(`ptr`: Pointer,`request`: RustBuffer.ByValue,
22142220 ): Long
2221+ fun uniffi_matrix_sdk_ffi_fn_method_client_deactivate_account(`ptr`: Pointer,`authData`: RustBuffer.ByValue,`eraseData`: Byte,
2222+ ): Long
22152223 fun uniffi_matrix_sdk_ffi_fn_method_client_delete_pusher(`ptr`: Pointer,`identifiers`: RustBuffer.ByValue,
22162224 ): Long
22172225 fun uniffi_matrix_sdk_ffi_fn_method_client_device_id(`ptr`: Pointer,uniffi_out_err: UniffiRustCallStatus,
@@ -3304,8 +3312,12 @@ internal interface UniffiLib : Library {
33043312 ): Short
33053313 fun uniffi_matrix_sdk_ffi_checksum_method_client_cached_avatar_url(
33063314 ): Short
3315+ fun uniffi_matrix_sdk_ffi_checksum_method_client_can_deactivate_account(
3316+ ): Short
33073317 fun uniffi_matrix_sdk_ffi_checksum_method_client_create_room(
33083318 ): Short
3319+ fun uniffi_matrix_sdk_ffi_checksum_method_client_deactivate_account(
3320+ ): Short
33093321 fun uniffi_matrix_sdk_ffi_checksum_method_client_delete_pusher(
33103322 ): Short
33113323 fun uniffi_matrix_sdk_ffi_checksum_method_client_device_id(
@@ -4165,9 +4177,15 @@ private fun uniffiCheckApiChecksums(lib: UniffiLib) {
41654177 if (lib.uniffi_matrix_sdk_ffi_checksum_method_client_cached_avatar_url() != 58990.toShort()) {
41664178 throw RuntimeException("UniFFI API checksum mismatch: try cleaning and rebuilding your project")
41674179 }
4180+ if (lib.uniffi_matrix_sdk_ffi_checksum_method_client_can_deactivate_account() != 39890.toShort()) {
4181+ throw RuntimeException("UniFFI API checksum mismatch: try cleaning and rebuilding your project")
4182+ }
41684183 if (lib.uniffi_matrix_sdk_ffi_checksum_method_client_create_room() != 52700.toShort()) {
41694184 throw RuntimeException("UniFFI API checksum mismatch: try cleaning and rebuilding your project")
41704185 }
4186+ if (lib.uniffi_matrix_sdk_ffi_checksum_method_client_deactivate_account() != 20658.toShort()) {
4187+ throw RuntimeException("UniFFI API checksum mismatch: try cleaning and rebuilding your project")
4188+ }
41714189 if (lib.uniffi_matrix_sdk_ffi_checksum_method_client_delete_pusher() != 45990.toShort()) {
41724190 throw RuntimeException("UniFFI API checksum mismatch: try cleaning and rebuilding your project")
41734191 }
@@ -5851,8 +5869,28 @@ public interface ClientInterface {
58515869 */
58525870 fun `cachedAvatarUrl`(): kotlin.String?
58535871
5872+ /**
5873+ * Lets the user know whether this is an `m.login.password` based
5874+ * auth and if the account can actually be deactivated
5875+ */
5876+ fun `canDeactivateAccount`(): kotlin.Boolean
5877+
58545878 suspend fun `createRoom`(`request`: CreateRoomParameters): kotlin.String
58555879
5880+ /**
5881+ * Deactivate this account definitively.
5882+ * Similarly to `encryption::reset_identity` this
5883+ * will only work with password-based authentication (`m.login.password`)
5884+ *
5885+ * # Arguments
5886+ *
5887+ * * `auth_data` - This request uses the [User-Interactive Authentication
5888+ * API][uiaa]. The first request needs to set this to `None` and will
5889+ * always fail and the same request needs to be made but this time with
5890+ * some `auth_data` provided.
5891+ */
5892+ suspend fun `deactivateAccount`(`authData`: AuthData?, `eraseData`: kotlin.Boolean)
5893+
58565894 /**
58575895 * Deletes a pusher of given pusher ids
58585896 */
@@ -6331,6 +6369,22 @@ open class Client: Disposable, AutoCloseable, ClientInterface {
63316369
63326370
63336371
6372+ /**
6373+ * Lets the user know whether this is an `m.login.password` based
6374+ * auth and if the account can actually be deactivated
6375+ */override fun `canDeactivateAccount`(): kotlin.Boolean {
6376+ return FfiConverterBoolean.lift(
6377+ callWithPointer {
6378+ uniffiRustCall() { _status ->
6379+ UniffiLib.INSTANCE.uniffi_matrix_sdk_ffi_fn_method_client_can_deactivate_account(
6380+ it, _status)
6381+ }
6382+ }
6383+ )
6384+ }
6385+
6386+
6387+
63346388 @Throws(ClientException::class)
63356389 @Suppress("ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE")
63366390 override suspend fun `createRoom`(`request`: CreateRoomParameters) : kotlin.String {
@@ -6352,6 +6406,40 @@ open class Client: Disposable, AutoCloseable, ClientInterface {
63526406 }
63536407
63546408
6409+ /**
6410+ * Deactivate this account definitively.
6411+ * Similarly to `encryption::reset_identity` this
6412+ * will only work with password-based authentication (`m.login.password`)
6413+ *
6414+ * # Arguments
6415+ *
6416+ * * `auth_data` - This request uses the [User-Interactive Authentication
6417+ * API][uiaa]. The first request needs to set this to `None` and will
6418+ * always fail and the same request needs to be made but this time with
6419+ * some `auth_data` provided.
6420+ */
6421+ @Throws(ClientException::class)
6422+ @Suppress("ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE")
6423+ override suspend fun `deactivateAccount`(`authData`: AuthData?, `eraseData`: kotlin.Boolean) {
6424+ return uniffiRustCallAsync(
6425+ callWithPointer { thisPtr ->
6426+ UniffiLib.INSTANCE.uniffi_matrix_sdk_ffi_fn_method_client_deactivate_account(
6427+ thisPtr,
6428+ FfiConverterOptionalTypeAuthData.lower(`authData`),FfiConverterBoolean.lower(`eraseData`),
6429+ )
6430+ },
6431+ { future, callback, continuation -> UniffiLib.INSTANCE.ffi_matrix_sdk_ffi_rust_future_poll_void(future, callback, continuation) },
6432+ { future, continuation -> UniffiLib.INSTANCE.ffi_matrix_sdk_ffi_rust_future_complete_void(future, continuation) },
6433+ { future -> UniffiLib.INSTANCE.ffi_matrix_sdk_ffi_rust_future_free_void(future) },
6434+ // lift function
6435+ { Unit },
6436+
6437+ // Error FFI converter
6438+ ClientException.ErrorHandler,
6439+ )
6440+ }
6441+
6442+
63556443 /**
63566444 * Deletes a pusher of given pusher ids
63576445 */
0 commit comments