AbstractClientWallet
The base class for all client-side wallets (web, mobile) in the Wallet SDK. It extends AbstractWallet and adds client side specific logic. A client side wallet delegates the wallet-specific connection logic to a Connector.
This wallet is not meant to be used directly, but instead be extended to build your own wallet
class AbstractClientWallet< TAdditionalOpts extends Record<string, any> = {}, TConnectParams extends Record<string, any> = {},
Creates an returns instance of AbstractClientWallet
function constructor( walletId: string,
auto-connect the wallet if possible
function autoConnect(): Promise<string>;
Connect wallet
function connect(): Promise<string>;
If the wallet uses another "personal wallet" under the hood, return it
This is only useful for wallets like Safe or Smart Wallet uses a "personal wallet" under the hood to sign transactions. This method returns that wallet
Get ethers Signer object of the connected wallet
function getSigner(): Promise<Signer>;
AbstractWallet.addListener
function addListener( event: T, fn: ( ) => void, context?: any,): this;
let fn: () => void;
AbstractWallet.emit
Calls each of the listeners registered for a given event.
function emit( event: T,): boolean;
AbstractWallet.eventNames
Return an array listing the events for which the emitter has registered listeners.
AbstractWallet.getBalance
Returns the balance of the connected wallet for the specified token address. If no token address is specified, it returns the balance of the native token
function getBalance( tokenAddress: string,): Promise<{ decimals: number; displayValue: string; name: string; symbol: string; value: BigNumber;}>;
AbstractWallet.listenerCount
Return the number of listeners listening to a given event.
AbstractWallet.listeners
Return the listeners registered for a given event.
function listeners( event: T,): Array< ( ) => void>;
let returnType: Array< ( ) => void>;
AbstractWallet.off
function off( event: T, fn?: ( ) => void, context?: any, once?: boolean,): this;
let fn: () => void;
AbstractWallet.on
Add a listener for a given event.
function on( event: T, fn: ( ) => void, context?: any,): this;
let fn: () => void;
AbstractWallet.once
Add a one-time listener for a given event.
function once( event: T, fn: ( ) => void, context?: any,): this;
let fn: () => void;
AbstractWallet.removeListener
Remove the listeners of a given event.
function removeListener( event: T, fn?: ( ) => void, context?: any, once?: boolean,): this;
let fn: () => void;
AbstractWallet.transfer
Transfers some amount of tokens to the specified address
function transfer( to: string, amount: string | number, currencyAddress: string,): Promise<Omit<TransactionResultWithMetadata<unknown>, "data">>;
AbstractWallet.verifySignature
Verify the signature of a message. It returns true
if the signature is valid, false
otherwise
function verifySignature( message: string, signature: string, address: string, _chainId?: number,): Promise<boolean>;