Skip to Content
dApps

Referencia de la API

Referencia de los métodos y tipos del proveedor de Sui de OneKey.


Métodos

MétodoDescripción
hasPermissions()Comprobar si está conectado
requestPermissions()Solicitar conexión
disconnect()Desconectar la cartera
getAccounts()Obtener las cuentas conectadas
getActiveChain()Obtener la cadena actual
isConnected()Comprobar el estado de conexión
signAndExecuteTransactionBlock(input)Firmar y ejecutar una transacción
signTransactionBlock(input)Solo firmar una transacción
signAndExecuteTransaction(input)Firmar y ejecutar (API nueva)
signTransaction(input)Firmar una transacción (API nueva)
signMessage(input)Firmar un mensaje (heredado)
signPersonalMessage(input)Firmar un mensaje personal
onAccountChange(callback)Escuchar cambios de cuenta
onNetworkChange(callback)Escuchar cambios de red

Tipos

Cuenta de cartera

getAccounts() devuelve AccountInfo[]. Las entradas de firma requieren la cuenta de Wallet Standard WalletAccount, cuyo campo publicKey es una matriz de bytes y que también incluye chains y features. Obtenla mediante standard:connect; no conviertas AccountInfo a WalletAccount.

import type { WalletAccount, IdentifierString } from '@mysten/wallet-standard' import type { Transaction } from '@mysten/sui/transactions' // provider.getAccounts() interface AccountInfo { address: string publicKey: string // Hex-encoded public key }

Entrada de firma y ejecución de un bloque de transacción

El proveedor inyectado actual no reenvía options en signAndExecuteTransactionBlock. Consulta el digest devuelto con un cliente Sui en la misma cadena para solicitar efectos, eventos o cambios de objetos.

interface SignAndExecuteTransactionBlockInput { account: WalletAccount chain: IdentifierString transactionBlock: Transaction options?: { showEffects?: boolean showEvents?: boolean showObjectChanges?: boolean showBalanceChanges?: boolean showInput?: boolean showRawInput?: boolean } }

Salida de firma de un bloque de transacción

interface SignTransactionBlockOutput { transactionBlockBytes: string signature: string }

Entrada de firma de mensaje personal

interface SignPersonalMessageInput { account: WalletAccount chain?: IdentifierString message: Uint8Array }

Salida de firma de mensaje personal

interface SignPersonalMessageOutput { signature: string bytes: string }

Cadenas compatibles

CadenaIdentificador
Red principalsui:mainnet
Red de pruebassui:testnet
Red de desarrollosui:devnet

Eventos

EventoParámetros del callbackDescripción
accountChanged{ address, publicKey } | nullCuenta cambiada
networkChangenetwork: string | nullRed cambiada
connectaddress: stringConectado
disconnect-Desconectado

Códigos de error

CódigoDescripción
4001El usuario rechazó la solicitud
4100Sin autorización
-32603Error interno
Última actualización el