Skip to main content

Interface Definition

interface Wallet {
  walletId: string;
  chainName: string;
  accountAddress: string;
  externalServerKeySharesBackupInfo: KeyShareBackupInfo | undefined;
  externalServerKeyShares: ServerKeyShare[]; // always an empty array
  derivationPath?: string;
  thresholdSignatureScheme: ThresholdSignatureScheme;
}

Properties

Required Properties

  • walletId (string) - Unique identifier for the wallet
  • chainName (string) - The blockchain chain name — one of the mapped enum values 'EVM', 'SVM', 'BTC', 'STELLAR', 'SUI', 'TEMPO', or 'TON'. (getEvmWallets() filters on chainName === 'EVM', getSvmWallets() on chainName === 'SVM'.)
  • accountAddress (string) - The wallet’s account address
  • externalServerKeySharesBackupInfo (KeyShareBackupInfo | undefined) - Information about backed up key shares (may be undefined)
  • externalServerKeyShares (ServerKeyShare[]) - Always an empty array; lookup calls do not return raw key shares
  • thresholdSignatureScheme (ThresholdSignatureScheme) - The threshold signature scheme used for this wallet

Optional Properties

  • derivationPath (string) - The derivation path used for the wallet (optional)

Example

const wallet: Wallet = {
  walletId: 'wallet_123456',
  chainName: 'EVM',
  accountAddress: '0x742d35Cc6634C0532925a3b8D4C9db96C4b4d8b6',
  externalServerKeySharesBackupInfo: {
    passwordEncrypted: false,
    backups: {
      dynamic: [],
      googleDrive: [],
      iCloud: [],
      user: [],
      external: [],
      delegated: []
    }
  },
  externalServerKeyShares: [], // always an empty array
  derivationPath: 'm/44\'/60\'/0\'/0/0',
  thresholdSignatureScheme: ThresholdSignatureScheme.TWO_OF_TWO
};

Usage

This type is returned by the following methods:
  • getWallets() - Returns Promise<Wallet[]>
  • getEvmWallets() - Returns Promise<Wallet[]> (filtered for EVM wallets)
  • getSvmWallets() - Returns Promise<Wallet[]> (filtered for SVM wallets)
Last modified on July 3, 2026