Skip to main content
Builds the authority of a { destination: { chain, authority } } transaction, which then runs through prepareTransaction, signTransaction and submitTransaction like any other. Only the passkey’s public key is used; it is SEC1-compressed and lowercased. The configured owner signs the change, and the new role gets the next free role id.

Import

Usage

Parameters

`0x${string}` | WebAuthnAccount
required
The passkey to add: a viem WebAuthn account, or its P-256 public key in 64-byte x‖y, 65-byte uncompressed or 33-byte compressed form.
{ permission: SolanaAuthorityPermission }
required
permission, what the new role may do (required, no default): allButManageAuthority spends and runs instructions; manageAuthority adds and removes non-root authorities but never spends; all does both. Either permission that manages authorities can grant all, so it controls the wallet.

Returns

A frozen SolanaAuthorityChange for prepareTransaction
'add'
required
SolanaAuthorityKey
required
SolanaAuthorityPermission
required

See also