API

Wallet Asset Signing APIs

The key asset story in Moss is not transfer alone. It is how the wallet unifies permissions, signatures, and execution.

3 sectionswallet-asset-signing-api
01

Token APIs

  • `tokenApprove(asset, spender, value)`: set allowance.
  • `tokenApproveForAll(spender, approved)`: set wallet-wide approval.
  • `tokenTransfer(asset, to, value)`: direct transfer.
  • `tokenTransferNonce(asset, caller)`: read signed-transfer nonce.
  • `tokenTransferWithSig(asset, to, value, deadline, signature)`: submit a signed transfer.
02

NFT APIs

  • `nftApproveWithSig(asset, operator, tokenId, deadline, signature)`: single-NFT signed approval.
  • `nftSetApprovalForOneAllWithSig(asset, operator, approved, deadline, signature)`: collection-scoped signed approval.
  • `nftSetApprovalForAllAllWithSig(operator, approved, deadline, signature)`: global NFT signed approval.
03

Signing Model

  • Both token and NFT permits rely on Moss dual-layer EIP-712 / ERC-1271 wrapping.
  • The frontend reads nonces first, then uses wallet signing to produce the outer safe signature.
  • That makes payments, listings, approvals, and delegated execution possible without directly moving the owner context each time.