Skip to main content

Function Signature

Description

Reshares a wallet with a new threshold signature scheme (e.g. 2-of-2 → 2-of-3). Returns the new shares plus an updated backupInfo. Re-cache the backupInfo into your stored walletMetadata.externalServerKeySharesBackupInfo or subsequent operations will read stale metadata. The new thresholdSignatureScheme should also be merged into your cached walletMetadata.

Parameters

Required Parameters

  • chainName (string) - The chain name (e.g., 'EVM')
  • accountAddress (string) - The wallet address (must include 0x prefix). Must match walletMetadata.accountAddress.
  • oldThresholdSignatureScheme (ThresholdSignatureScheme) - The current threshold scheme
  • newThresholdSignatureScheme (ThresholdSignatureScheme) - The new threshold scheme
  • walletMetadata (WalletMetadata) - The cached metadata for this wallet

Optional Parameters

  • password (string) - Required when backUpToDynamic is true.
  • externalServerKeyShares (ServerKeyShare[]) - Current plaintext shares. If omitted, the SDK recovers from backup using password.
  • backUpToDynamic (boolean) - Whether to back up the new shares. Defaults to false.

Returns

  • Promise<{ externalServerKeyShares, backupInfo }>
    • externalServerKeyShares — The newly-generated shares under the new threshold scheme. Re-vault these.
    • backupInfo (KeyShareBackupInfo) — Updated backup-pointer state. Merge into cached walletMetadata.

Available Threshold Schemes

  • TWO_OF_TWO - Requires both shares to sign
  • TWO_OF_THREE - Requires any two of three shares to sign

Example

Error Handling

Last modified on May 21, 2026