Skip to content

Abstract base class for wallet adapters with common functionality.

Defined in: packages/bitbadgesjs-sdk/src/signing/adapters/WalletAdapter.ts:82

Abstract base class for wallet adapters with common functionality.

Extended by

Implements

Constructors

Constructor

new BaseWalletAdapter(): BaseWalletAdapter

Returns

BaseWalletAdapter

Properties

address

abstract readonly address: string

Defined in: packages/bitbadgesjs-sdk/src/signing/adapters/WalletAdapter.ts:84

The address managed by this adapter (BitBadges bb-prefixed for Cosmos, 0x for EVM)

Implementation of

WalletAdapter.address


chainType

abstract readonly chainType: "evm" | "cosmos"

Defined in: packages/bitbadgesjs-sdk/src/signing/adapters/WalletAdapter.ts:83

The chain type this adapter supports

Implementation of

WalletAdapter.chainType

Methods

estimateEvmGas()?

optional estimateEvmGas(tx): Promise<bigint>

Defined in: packages/bitbadgesjs-sdk/src/signing/adapters/WalletAdapter.ts:90

Estimate gas for an EVM transaction. Only implemented by EVM wallet adapters with a provider connection.

Parameters

tx

EvmTransaction

Returns

Promise<bigint>

Implementation of

WalletAdapter.estimateEvmGas


getPublicKey()

abstract getPublicKey(): Promise<string>

Defined in: packages/bitbadgesjs-sdk/src/signing/adapters/WalletAdapter.ts:86

Get the public key in base64 format. Required for Cosmos transactions (used to build the auth info). Returns empty string for EVM-only adapters.

Returns

Promise<string>

Implementation of

WalletAdapter.getPublicKey


sendEvmTransaction()?

optional sendEvmTransaction(tx): Promise<string>

Defined in: packages/bitbadgesjs-sdk/src/signing/adapters/WalletAdapter.ts:89

Send an EVM transaction. Only implemented by EVM wallet adapters.

Parameters

tx

EvmTransaction

The EVM transaction to send

Returns

Promise<string>

The transaction hash

Implementation of

WalletAdapter.sendEvmTransaction


signDirect()?

optional signDirect(payload, accountNumber): Promise<SigningResult>

Defined in: packages/bitbadgesjs-sdk/src/signing/adapters/WalletAdapter.ts:88

Sign a transaction using Cosmos SignDirect format. Only implemented by Cosmos wallet adapters.

Parameters

payload

TransactionPayload

The transaction payload containing signBytes

accountNumber

string | number | bigint

The account number on the blockchain. Post-v34 accounts get hash-derived numbers above 2^53 — pass the chain's string value or a bigint; never Number() it.

Returns

Promise<SigningResult>

The signature and public key

Implementation of

WalletAdapter.signDirect


signTypedData()?

optional signTypedData(typed): Promise<string>

Defined in: packages/bitbadgesjs-sdk/src/signing/adapters/WalletAdapter.ts:91

Sign EIP-712 typed-data with the wallet. Only implemented by EVM wallet adapters; lets BitBadges Cosmos messages be signed via the standard EVM signing flow (eth_signTypedData_v4 / Signer.signTypedData) so any EVM wallet can produce a valid Cosmos transaction signature. Returns a 0x...-prefixed 65-byte hex signature (r || s || v).

Parameters

typed

EIP712TypedData

Returns

Promise<string>

Implementation of

WalletAdapter.signTypedData


supportsEvmTransaction()

supportsEvmTransaction(): boolean

Defined in: packages/bitbadgesjs-sdk/src/signing/adapters/WalletAdapter.ts:101

Check if the adapter supports EVM transactions

Returns

boolean

Implementation of

WalletAdapter.supportsEvmTransaction


supportsSignAmino()

supportsSignAmino(): boolean

Defined in: packages/bitbadgesjs-sdk/src/signing/adapters/WalletAdapter.ts:97

Check if the adapter supports Amino signing (legacy)

Returns

boolean

Implementation of

WalletAdapter.supportsSignAmino


supportsSignDirect()

supportsSignDirect(): boolean

Defined in: packages/bitbadgesjs-sdk/src/signing/adapters/WalletAdapter.ts:93

Check if the adapter supports SignDirect signing

Returns

boolean

Implementation of

WalletAdapter.supportsSignDirect


supportsSignTypedData()

supportsSignTypedData(): boolean

Defined in: packages/bitbadgesjs-sdk/src/signing/adapters/WalletAdapter.ts:105

Check if the adapter supports EIP-712 typed-data signing

Returns

boolean

Implementation of

WalletAdapter.supportsSignTypedData

Edit this page on GitHub