interface DepositResult {
hash: Hash
shares: bigint
}
interface RedeemResult {
hash: Hash
assets: bigint
}
interface ApproveResult {
hash: Hash
}
interface DepositWithApprovalResult {
approveHash?: Hash // undefined if approval wasn't needed
depositHash: Hash
shares: bigint
}
interface RedeemReceipt {
hash: Hash
status: 'success' | 'reverted'
instant: boolean // true if redeemed instantly
assetsOrRequestId: bigint // assets returned or pending request ID
shares: bigint
blockNumber: bigint
}
interface TransactionReceipt {
hash: Hash
status: 'success' | 'reverted'
blockNumber: bigint
gasUsed: bigint
}
interface PreparedTransaction {
to: Address
data: Hex
value: bigint
}