transfer ​
Standard ERC-20 transfer of vault shares from the caller to to.
Signature ​
solidity
function transfer(address to, uint256 value) external returns (bool);Parameters ​
| Name | Type | Description |
|---|---|---|
to | address | Recipient of the shares. |
value | uint256 | Amount of shares to transfer (18 decimals). |
Returns ​
true on success. Reverts on failure.
Preconditions ​
tomust be a non-zero address.- The caller's share balance must be
>= value.
Events emitted ​
solidity
event Transfer(address indexed from, address indexed to, uint256 value);Example — transfer 10 shares ​
ts
import { parseUnits } from 'viem'
import { publicClient, walletClient } from './client'
import { liteUsdVaultAbi } from './abi'
import { VAULT, SHARE_DECIMALS } from './constants'
const RECIPIENT = '0x...' as const
const value = parseUnits('10', SHARE_DECIMALS)
const { request } = await publicClient.simulateContract({
account: walletClient.account!,
address: VAULT,
abi: liteUsdVaultAbi,
functionName: 'transfer',
args: [RECIPIENT, value],
})
const hash = await walletClient.writeContract(request)
await publicClient.waitForTransactionReceipt({ hash })Notes ​
- Transferring shares does not move the underlying USDC. The recipient now owns a claim on the same pool.
- Share transfers are unaffected by
withdrawalsPaused— onlywithdrawandredeemare gated.

