AirdropFlashClaimReceiver

pool

address pool

airdropClaimRecords

mapping(bytes32 => bool) airdropClaimRecords

constructor

constructor(address owner_, address pool_) public

onlyPool

modifier onlyPool()

Only pool can call functions marked by this modifier.

ExecuteOperationLocalVars

struct ExecuteOperationLocalVars {
  uint256[] airdropTokenTypes;
  address[] airdropTokenAddresses;
  uint256[] airdropTokenIds;
  address airdropContract;
  bytes airdropParams;
  uint256 airdropBalance;
  uint256 airdropTokenId;
  bytes32 airdropKeyHash;
}

executeOperation

function executeOperation(address nftAsset, uint256[] nftTokenIds, bytes params) external returns (bool)

transferERC20

function transferERC20(address token, address to, uint256 amount) external

transferERC721

function transferERC721(address token, address to, uint256 id) external

transferERC1155

function transferERC1155(address token, address to, uint256 id, uint256 amount) external

transferEther

function transferEther(address to, uint256 amount) external

getAirdropClaimRecord

function getAirdropClaimRecord(address initiator, address nftAsset, uint256[] nftTokenIds, bytes params) public view returns (bool)

encodeFlashLoanParams

function encodeFlashLoanParams(uint256[] airdropTokenTypes, address[] airdropTokenAddresses, uint256[] airdropTokenIds, address airdropContract, bytes airdropParams) public pure returns (bytes)

getClaimKeyHash

function getClaimKeyHash(address initiator, address nftAsset, uint256[] nftTokenIds, bytes params) public pure returns (bytes32)