IPermit2

Git Source

Author: https://github.com/dragonfly-xyz/useful-solidity-patterns/blob/main/patterns/permit2/Permit2Vault.sol

SPDX-License-Identifier: Apache-2.0

Minimal Permit2 interface, derived from

https://github.com/Uniswap/permit2/blob/main/src/interfaces/ISignatureTransfer.sol

Functions

permitTransferFrom

function permitTransferFrom(
    PermitTransferFrom calldata permit,
    SignatureTransferDetails calldata transferDetails,
    address owner,
    bytes calldata signature
)
    external;

Structs

TokenPermissions

struct TokenPermissions {
    IERC20 token;
    uint256 amount;
}

PermitTransferFrom

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

SignatureTransferDetails

struct SignatureTransferDetails {
    address to;
    uint256 requestedAmount;
}