Skip to content

EthereumWalletAdapter

SIP Protocol API Reference v0.7.4


SIP Protocol API Reference / EthereumWalletAdapter

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:13501

Ethereum wallet adapter implementation

const adapter = new EthereumWalletAdapter({
wallet: 'metamask',
chainId: 1,
})
await adapter.connect()
const balance = await adapter.getBalance()

new EthereumWalletAdapter(config?): EthereumWalletAdapter

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:13511

EthereumAdapterConfig

EthereumWalletAdapter

BaseWalletAdapter.constructor

readonly chain: "ethereum"

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:13502

Chain this adapter connects to

BaseWalletAdapter.chain


readonly name: string

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:13503

Wallet name/identifier (e.g., ‘phantom’, ‘metamask’)

BaseWalletAdapter.name

get address(): string

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:12528

Current address (empty string if not connected)

string

Current address (empty string if not connected)

BaseWalletAdapter.address


get publicKey(): "" | `0x${string}`

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:12529

Public key (hex encoded, empty string if not connected)

"" | `0x${string}`

Public key (hex encoded, empty string if not connected)

BaseWalletAdapter.publicKey


get connectionState(): WalletConnectionState

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:12530

Current connection state

WalletConnectionState

Current connection state

BaseWalletAdapter.connectionState

on<T>(event, handler): void

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:12535

Subscribe to wallet events

T extends WalletEventType

T

WalletEventHandler<Extract<WalletConnectEvent, { type: T; }> | Extract<WalletDisconnectEvent, { type: T; }> | Extract<WalletAccountChangedEvent, { type: T; }> | Extract<WalletChainChangedEvent, { type: T; }> | Extract<WalletErrorEvent, { type: T; }>>

void

BaseWalletAdapter.on


off<T>(event, handler): void

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:12541

Unsubscribe from wallet events

T extends WalletEventType

T

WalletEventHandler<Extract<WalletConnectEvent, { type: T; }> | Extract<WalletDisconnectEvent, { type: T; }> | Extract<WalletAccountChangedEvent, { type: T; }> | Extract<WalletChainChangedEvent, { type: T; }> | Extract<WalletErrorEvent, { type: T; }>>

void

BaseWalletAdapter.off


isConnected(): boolean

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:12571

Check if wallet is connected

boolean

BaseWalletAdapter.isConnected


getChainId(): number

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:13515

Get current chain ID

number


getRpcEndpoint(): string

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:13519

Get RPC endpoint URL

string


setRpcEndpoint(endpoint): void

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:13523

Set RPC endpoint URL

string

void


connect(): Promise<void>

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:13527

Connect to Ethereum wallet

Promise<void>

BaseWalletAdapter.connect


disconnect(): Promise<void>

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:13531

Disconnect from wallet

Promise<void>

BaseWalletAdapter.disconnect


signMessage(message): Promise<Signature>

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:13535

Sign a message

Uint8Array

Promise<Signature>

BaseWalletAdapter.signMessage


signTypedData(typedData): Promise<Signature>

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:13539

Sign typed data (EIP-712)

EIP712TypedData

Promise<Signature>


signTransaction(tx): Promise<SignedTransaction>

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:13543

Sign a transaction without sending

UnsignedTransaction

Promise<SignedTransaction>

BaseWalletAdapter.signTransaction


signAndSendTransaction(tx): Promise<TransactionReceipt>

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:13547

Sign and send a transaction

UnsignedTransaction

Promise<TransactionReceipt>

BaseWalletAdapter.signAndSendTransaction


getBalance(): Promise<bigint>

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:13551

Get ETH balance

Promise<bigint>

BaseWalletAdapter.getBalance


getTokenBalance(asset): Promise<bigint>

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:13555

Get ERC-20 token balance

Asset

Promise<bigint>

BaseWalletAdapter.getTokenBalance


switchChain(chainId): Promise<void>

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:13559

Switch to a different chain

number

Promise<void>


waitForTransaction(txHash, confirmations?): Promise<EthereumTransactionReceipt>

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:13563

Wait for transaction confirmation

string

number

Promise<EthereumTransactionReceipt>