Skip to content
LogoLogo

ISignatureTransfer

Git Source

Title: ISignatureTransfer

Minimal subset of Uniswap Permit2's SignatureTransfer interface used by the Router. Canonical Permit2 lives at 0x000000000022D473030F116dDEE9F6B43aC78BA3 on every chain.

Vendored instead of imported because Permit2's sources pin solc 0.8.17.

Functions

permitWitnessTransferFrom

function permitWitnessTransferFrom(
        PermitTransferFrom memory permit,
        SignatureTransferDetails calldata transferDetails,
        address owner,
        bytes32 witness,
        string calldata witnessTypeString,
        bytes calldata signature
    ) external;

Parameters

NameTypeDescription
permitPermitTransferFrom
transferDetailsSignatureTransferDetails
owneraddress
witnessbytes32
witnessTypeStringstring
signaturebytes

Structs

TokenPermissions

struct TokenPermissions {
        address token;
        uint256 amount;
    }

Properties

NameTypeDescription
tokenaddress
amountuint256

PermitTransferFrom

struct PermitTransferFrom {
        TokenPermissions permitted;
        uint256 nonce;
        uint256 deadline;
    }

Properties

NameTypeDescription
permittedTokenPermissions
nonceuint256
deadlineuint256

SignatureTransferDetails

struct SignatureTransferDetails {
        address to;
        uint256 requestedAmount;
    }

Properties

NameTypeDescription
toaddress
requestedAmountuint256