interface IAirdropClaim {
event Claimed(address recipient, address token, uint256 amount);
event Dropped(address recipient, address token, uint256 amount);
event Withdrawal(address tokenAddress, address recipient, uint256 amount);
function claimAirdrop(uint256 _dropId);
function claimAirdrops(uint256 _amountToClaim);
function createAirdropsWithTokens(address _tokenAddress, address[] memory _recipients, uint256[] memory _amounts, string memory _note)
function enabled() view returns (bool);
function tokenToPendingAmount(address) view returns (uint256);
function viewAirdrops() view returns (tuple(address tokenAddress, uint256 amount, uint256 time, string note)[]);
function viewUserAirdrops(address player) view returns (tuple(address tokenAddress, uint256 amount, uint256 time, string note)[]);
function withdrawTokens(address _tokenAddress, address _recipient, uint256 _amount);
}
interface IAirdropClaimV1 {
event Claimed(address recipient, uint256 amount);
function balances(address) view returns (uint256);
function claimAirdrop();
function setAirdrops(address[] _recipients, uint256[] _amounts);
function transferTokens(address _address, uint256 _amount);
}