Skip to content

EthereumWalletAdapter

SIP Protocol API Reference v0.15.1


SIP Protocol API Reference / EthereumWalletAdapter

Defined in: @sip-protocol/sdk/dist/index-GLbkPPho.d.ts:13574

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-GLbkPPho.d.ts:13584

EthereumAdapterConfig

EthereumWalletAdapter

BaseWalletAdapter.constructor

readonly chain: "ethereum"

Defined in: @sip-protocol/sdk/dist/index-GLbkPPho.d.ts:13575

Chain this adapter connects to

BaseWalletAdapter.chain


readonly name: string

Defined in: @sip-protocol/sdk/dist/index-GLbkPPho.d.ts:13576

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

BaseWalletAdapter.name

get address(): string

Defined in: @sip-protocol/sdk/dist/index-GLbkPPho.d.ts:12601

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-GLbkPPho.d.ts:12602

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-GLbkPPho.d.ts:12603

Current connection state

WalletConnectionState

Current connection state

BaseWalletAdapter.connectionState

on<T>(event, handler): void

Defined in: @sip-protocol/sdk/dist/index-GLbkPPho.d.ts:12608

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-GLbkPPho.d.ts:12614

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-GLbkPPho.d.ts:12644

Check if wallet is connected

boolean

BaseWalletAdapter.isConnected


getChainId(): number

Defined in: @sip-protocol/sdk/dist/index-GLbkPPho.d.ts:13588

Get current chain ID

number


getRpcEndpoint(): string

Defined in: @sip-protocol/sdk/dist/index-GLbkPPho.d.ts:13592

Get RPC endpoint URL

string


setRpcEndpoint(endpoint): void

Defined in: @sip-protocol/sdk/dist/index-GLbkPPho.d.ts:13596

Set RPC endpoint URL

string

void


connect(): Promise<void>

Defined in: @sip-protocol/sdk/dist/index-GLbkPPho.d.ts:13600

Connect to Ethereum wallet

Promise<void>

BaseWalletAdapter.connect


disconnect(): Promise<void>

Defined in: @sip-protocol/sdk/dist/index-GLbkPPho.d.ts:13604

Disconnect from wallet

Promise<void>

BaseWalletAdapter.disconnect


signMessage(message): Promise<Signature>

Defined in: @sip-protocol/sdk/dist/index-GLbkPPho.d.ts:13608

Sign a message

Uint8Array

Promise<Signature>

BaseWalletAdapter.signMessage


signTypedData(typedData): Promise<Signature>

Defined in: @sip-protocol/sdk/dist/index-GLbkPPho.d.ts:13612

Sign typed data (EIP-712)

EIP712TypedData

Promise<Signature>


signTransaction(tx): Promise<SignedTransaction>

Defined in: @sip-protocol/sdk/dist/index-GLbkPPho.d.ts:13616

Sign a transaction without sending

UnsignedTransaction

Promise<SignedTransaction>

BaseWalletAdapter.signTransaction


signAndSendTransaction(tx): Promise<TransactionReceipt>

Defined in: @sip-protocol/sdk/dist/index-GLbkPPho.d.ts:13620

Sign and send a transaction

UnsignedTransaction

Promise<TransactionReceipt>

BaseWalletAdapter.signAndSendTransaction


getBalance(): Promise<bigint>

Defined in: @sip-protocol/sdk/dist/index-GLbkPPho.d.ts:13624

Get ETH balance

Promise<bigint>

BaseWalletAdapter.getBalance


getTokenBalance(asset): Promise<bigint>

Defined in: @sip-protocol/sdk/dist/index-GLbkPPho.d.ts:13628

Get ERC-20 token balance

Asset

Promise<bigint>

BaseWalletAdapter.getTokenBalance


switchChain(chainId): Promise<void>

Defined in: @sip-protocol/sdk/dist/index-GLbkPPho.d.ts:13632

Switch to a different chain

number

Promise<void>


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

Defined in: @sip-protocol/sdk/dist/index-GLbkPPho.d.ts:13636

Wait for transaction confirmation

string

number

Promise<EthereumTransactionReceipt>