BlockchainKitSdk

@ObjCName(swiftName = "BlockchainKitSdk")
class BlockchainKitSdk(localStorage: KeyValueStorageInterface = SecureLocalStorageFactory().createSecureLocalStorage(), platformContext: PlatformContext = PlatformContext(), logger: SdkLogger = PrintSdkLogger()) : BlockchainKitSdkInterface

Constructors

Link copied to clipboard
constructor(localStorage: KeyValueStorageInterface = SecureLocalStorageFactory().createSecureLocalStorage(), platformContext: PlatformContext = PlatformContext(), logger: SdkLogger = PrintSdkLogger())

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
Link copied to clipboard

Blockchain service for balance queries, fee calculations, and transaction operations.

Link copied to clipboard

Credential service for managing registered WebAuthn credentials.

Link copied to clipboard

MPC service for BLE device connection and MPC protocol operations.

Link copied to clipboard

Passkey service for WebAuthn passkey operations.

Link copied to clipboard

Recovery service for guardian-gated escrow recovery.

Functions

Link copied to clipboard
open suspend override fun create2of2Wallet(displayName: String): Result<WalletCreationResult>

Creates a 2-of-2 multisignature wallet by interacting with the MPC client and storing key-related data in MpcWalletStorage.

Link copied to clipboard
open suspend override fun create2of3Wallet(displayName: String): Result<ThresholdGroupResult>
Link copied to clipboard

DEBUG ONLY: Clear hot storage to simulate app reinstall.

Link copied to clipboard
suspend fun debugExportEscrowedKek(recoveryId: String, kekId: String): Result<String>

Debug-only helper to export a plaintext KEK from the portable vault.

Link copied to clipboard
suspend fun debugImportEscrowedKek(recoveryId: String, kekId: String, kekBase64: String): Result<Boolean>

Debug-only helper to import a plaintext KEK into the portable vault.

Link copied to clipboard

Export the backup file to the device's Downloads folder.

Link copied to clipboard
suspend fun getAccessToken(): Result<String>
Link copied to clipboard
suspend fun getRefreshToken(): Result<String>
Link copied to clipboard

Get wallet information from hot storage.

Link copied to clipboard
suspend fun hasBackup(): Result<Boolean>

Check if a wallet backup exists.

Link copied to clipboard

Check if wallet data exists in hot storage (local device storage).

Link copied to clipboard
suspend fun importBackupFile(sourcePath: String): Result<Boolean>

Import a backup file from an external location.

Link copied to clipboard
suspend fun isPrfSupported(): Result<Boolean>

Check if the current platform supports WebAuthn PRF extension for passkey-based backup.

Link copied to clipboard

Check if system backup (Google Backup / iCloud) is enabled.

Link copied to clipboard
suspend fun logout(): Result<Boolean>

Logs out the user and clears all authentication state.

Link copied to clipboard

Open the system backup settings screen.

Link copied to clipboard
open suspend override fun setAccessToken(token: String): Result<Boolean>
Link copied to clipboard

Configure the portable escrow KEK vault for testing.

Link copied to clipboard
suspend fun validateAsset(asset: Asset): Result<Asset>

Validate an Asset definition.

Link copied to clipboard
suspend fun validateBalance(balance: Balance): Result<Balance>

Validate a Balance definition.

Link copied to clipboard
suspend fun validateBroadcast(broadcast: Broadcast): Result<Broadcast>

Validate a Broadcast definition.

Link copied to clipboard
suspend fun validateFee(fee: Fee): Result<Fee>

Validate a Fee definition.

Link copied to clipboard
suspend fun validateNetwork(network: Network): Result<Network>

Validate a Network definition.

Link copied to clipboard

Validate a Transaction (Transfer) definition.

Link copied to clipboard

Validate a TransactionStatus definition.