Send
code. Anyone can submit the claim, but the funds always
go to the recorded recipient, so a claim is front-run-safe.
Claim
Cancel and refund
Unclaimed money belongs to the sender. There is no deadline on getting it back.cancel(transferId)
Sender only, allowed any time before a claim lands, and on a locked transfer.
reclaimExpired(transferId)
Callable by anyone once the recall window lapses; funds only ever go back to
the sender. No keeper required.
Approve-less sends
To skip a per-sendapprove, use Permit2: one-time approvePermit2(clients), then
sendProtectedWithPermit signs an off-chain permit per send.