Git Source
function initialize(address admin) external;
function fund() external payable;
function createWallet(uint256 userId) external returns (uint256 walletId, address walletAddr);
function deposit(uint256 userId, uint256 walletId, address token, uint256 amount)
external
payable;
function withdraw(
uint256 userId,
uint256 walletId,
address payable to,
address token,
uint256 amount
) external;
function transfer(
uint256 fromUserId,
uint256 fromWalletId,
uint256 toUserId,
uint256 toWalletId,
address token,
uint256 amount
) external;
function batchTransfer(
uint256 userId,
uint256 walletId,
address[] calldata tokens,
address[] calldata recipients,
uint256[] calldata amounts
) external;
function mintPowerPass(
uint256 userId,
uint256 walletId,
address powerPassContract,
address to,
string calldata tokenURI
) external returns (uint256 tokenId);
function transferPowerPass(
uint256 userId,
uint256 walletId,
address powerPassContract,
address from,
address to,
uint256 tokenId
) external;
function burnPowerPass(
uint256 userId,
uint256 walletId,
address powerPassContract,
uint256 tokenId
) external;
function approvePowerPass(
uint256 userId,
uint256 walletId,
address powerPassContract,
address to,
uint256 tokenId
) external;
function setApprovalForAllPowerPass(
uint256 userId,
uint256 walletId,
address powerPassContract,
address operator,
bool approved
) external;
function batchApprovePowerPass(
uint256 userId,
uint256 walletId,
address powerPassContract,
uint256[] calldata tokenIds,
address[] calldata operators
) external;
function approveAndTransferPowerPass(
uint256 fromUserId,
uint256 fromWalletId,
address powerPassContract,
address to,
uint256 tokenId
) external;
function batchTransferPowerPass(
uint256 userId,
uint256 walletId,
address powerPassContract,
address[] calldata from,
address[] calldata to,
uint256[] calldata tokenIds
) external;
function getPowerPassBalance(uint256 userId, uint256 walletId, address powerPassContract)
external
view
returns (uint256 balance);
function getPowerPassApproved(
uint256 userId,
uint256 walletId,
address powerPassContract,
uint256 tokenId
) external view returns (address approved);
function isApprovedForAllPowerPass(
uint256 userId,
uint256 walletId,
address powerPassContract,
address operator
) external view returns (bool approved);
function getNativeTokenBalance(uint256 userId, uint256 walletId)
external
view
returns (uint256 nativeBalance);
function getTokenBalance(uint256 userId, uint256 walletId, address token)
external
view
returns (uint256 tokenBalance);
function getWalletAddr(uint256 userId, uint256 walletId) external view returns (address);
function getWalletIndex() external view returns (uint256);
function stakePowerPass(
uint256 userId,
uint256 walletId,
address stakingContract,
uint256 tokenId
) external;
function stakePowerPassBatch(
uint256 userId,
uint256 walletId,
address stakingContract,
uint256[] calldata tokenIds
) external;
function unstakePowerPass(
uint256 userId,
uint256 walletId,
address stakingContract,
uint256 tokenId
) external;
function unstakePowerPassBatch(
uint256 userId,
uint256 walletId,
address stakingContract,
uint256[] calldata tokenIds
) external;
function requestPowerPassClaim(
uint256 userId,
uint256 walletId,
address stakingContract,
uint256 amount
) external returns (uint256 requestId);
function claimPowerPassReward(
uint256 userId,
uint256 walletId,
address stakingContract,
uint256 requestId
) external;
function claimAllApprovedPowerPassRewards(
uint256 userId,
uint256 walletId,
address stakingContract
) external;
function directClaimPowerPassReward(
uint256 userId,
uint256 walletId,
address stakingContract,
uint256 amount
) external;