Pack
Methods
DEFAULT_ADMIN_ROLE
function DEFAULT_ADMIN_ROLE() external view returns (bytes32)
Returns
| Name | Type | Description |
|---|
| _0 | bytes32 | undefined |
addPackContents
function addPackContents(uint256 _packId, ITokenBundle.Token[] _contents, uint256[] _numOfRewardUnits, address _recipient) external payable returns (uint256 packTotalSupply, uint256 newSupplyAdded)
Parameters
| Name | Type | Description |
|---|
| _packId | uint256 | undefined |
| _contents | ITokenBundle.Token[] | undefined |
| _numOfRewardUnits | uint256[] | undefined |
| _recipient | address | undefined |
Returns
| Name | Type | Description |
|---|
| packTotalSupply | uint256 | undefined |
| newSupplyAdded | uint256 | undefined |
balanceOf
function balanceOf(address account, uint256 id) external view returns (uint256)
See {IERC1155-balanceOf}. Requirements: - account cannot be the zero address.
Parameters
| Name | Type | Description |
|---|
| account | address | undefined |
| id | uint256 | undefined |
Returns
| Name | Type | Description |
|---|
| _0 | uint256 | undefined |
balanceOfBatch
function balanceOfBatch(address[] accounts, uint256[] ids) external view returns (uint256[])
See {IERC1155-balanceOfBatch}. Requirements: - accounts and ids must have the same length.
Parameters
| Name | Type | Description |
|---|
| accounts | address[] | undefined |
| ids | uint256[] | undefined |
Returns
| Name | Type | Description |
|---|
| _0 | uint256[] | undefined |
canUpdatePack
function canUpdatePack(uint256) external view returns (bool)
Checks if pack-creator allowed to add more tokens to a packId; set to false after first transfer
Parameters
| Name | Type | Description |
|---|
| _0 | uint256 | undefined |
Returns
| Name | Type | Description |
|---|
| _0 | bool | undefined |
contractType
function contractType() external pure returns (bytes32)
Returns the type of the contract.
Returns
| Name | Type | Description |
|---|
| _0 | bytes32 | undefined |
contractURI
function contractURI() external view returns (string)
Returns the contract metadata URI.
Returns
| Name | Type | Description |
|---|
| _0 | string | undefined |
contractVersion
function contractVersion() external pure returns (uint8)
Returns the version of the contract.
Returns
| Name | Type | Description |
|---|
| _0 | uint8 | undefined |
createPack
function createPack(ITokenBundle.Token[] _contents, uint256[] _numOfRewardUnits, string _packUri, uint128 _openStartTimestamp, uint128 _amountDistributedPerOpen, address _recipient) external payable returns (uint256 packId, uint256 packTotalSupply)
Parameters
| Name | Type | Description |
|---|
| _contents | ITokenBundle.Token[] | undefined |
| _numOfRewardUnits | uint256[] | undefined |
| _packUri | string | undefined |
| _openStartTimestamp | uint128 | undefined |
| _amountDistributedPerOpen | uint128 | undefined |
| _recipient | address | undefined |
Returns
| Name | Type | Description |
|---|
| packId | uint256 | undefined |
| packTotalSupply | uint256 | undefined |
getDefaultRoyaltyInfo
function getDefaultRoyaltyInfo() external view returns (address, uint16)
Returns the defualt royalty recipient and BPS for this contract's NFTs.
Returns
| Name | Type | Description |
|---|
| _0 | address | undefined |
| _1 | uint16 | undefined |
getPackContents
function getPackContents(uint256 _packId) external view returns (struct ITokenBundle.Token[] contents, uint256[] perUnitAmounts)
Returns the underlying contents of a pack.
Parameters
| Name | Type | Description |
|---|
| _packId | uint256 | undefined |
Returns
| Name | Type | Description |
|---|
| contents | ITokenBundle.Token[] | undefined |
| perUnitAmounts | uint256[] | undefined |
getRoleAdmin
function getRoleAdmin(bytes32 role) external view returns (bytes32)
Returns the admin role that controls the specified role.
See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}.
Parameters
| Name | Type | Description |
|---|
| role | bytes32 | keccak256 hash of the role. e.g. keccak256("TRANSFER_ROLE") |
Returns
| Name | Type | Description |
|---|
| _0 | bytes32 | undefined |
getRoleMember
function getRoleMember(bytes32 role, uint256 index) external view returns (address member)
Returns the role-member from a list of members for a role, at a given index.
Returns member who has role, at index of role-members list. See struct {RoleMembers}, and mapping {roleMembers}
Parameters
| Name | Type | Description |
|---|
| role | bytes32 | keccak256 hash of the role. e.g. keccak256("TRANSFER_ROLE") |
| index | uint256 | Index in list of current members for the role. |
Returns
| Name | Type | Description |
|---|
| member | address | Address of account that has role |
getRoleMemberCount
function getRoleMemberCount(bytes32 role) external view returns (uint256 count)
Returns total number of accounts that have a role.
Returns count of accounts that have role. See struct {RoleMembers}, and mapping {roleMembers}
Parameters
| Name | Type | Description |
|---|
| role | bytes32 | keccak256 hash of the role. e.g. keccak256("TRANSFER_ROLE") |
Returns
| Name | Type | Description |
|---|
| count | uint256 | Total number of accounts that have role |
getRoyaltyInfoForToken
function getRoyaltyInfoForToken(uint256 _tokenId) external view returns (address, uint16)
View royalty info for a given token.
Returns royalty recipient and bps for _tokenId.
Parameters
| Name | Type | Description |
|---|
| _tokenId | uint256 | The tokenID of the NFT for which to query royalty info. |
Returns
| Name | Type | Description |
|---|
| _0 | address | undefined |
| _1 | uint16 | undefined |
getTokenCountOfBundle
function getTokenCountOfBundle(uint256 _bundleId) external view returns (uint256)
Returns the total number of assets in a particular bundle.
Parameters
| Name | Type | Description |
|---|
| _bundleId | uint256 | undefined |
Returns
| Name | Type | Description |
|---|
| _0 | uint256 | undefined |
getTokenOfBundle
function getTokenOfBundle(uint256 _bundleId, uint256 index) external view returns (struct ITokenBundle.Token)
Returns an asset contained in a particular bundle, at a particular index.
Parameters
| Name | Type | Description |
|---|
| _bundleId | uint256 | undefined |
| index | uint256 | undefined |
Returns
| Name | Type | Description |
|---|
| _0 | ITokenBundle.Token | undefined |
getUriOfBundle
function getUriOfBundle(uint256 _bundleId) external view returns (string)
Returns the uri of a particular bundle.
Parameters
| Name | Type | Description |
|---|
| _bundleId | uint256 | undefined |
Returns
| Name | Type | Description |
|---|
| _0 | string | undefined |
grantRole
function grantRole(bytes32 role, address account) external nonpayable
Grants a role to an account, if not previously granted.
Caller must have admin role for the role. Emits {RoleGranted Event}.
Parameters
| Name | Type | Description |
|---|
| role | bytes32 | keccak256 hash of the role. e.g. keccak256("TRANSFER_ROLE") |
| account | address | Address of the account to which the role is being granted. |
hasRole
function hasRole(bytes32 role, address account) external view returns (bool)
Checks whether an account has a particular role.
Returns true if account has been granted role.
Parameters
| Name | Type | Description |
|---|
| role | bytes32 | keccak256 hash of the role. e.g. keccak256("TRANSFER_ROLE") |
| account | address | Address of the account for which the role is being checked. |
Returns
| Name | Type | Description |
|---|
| _0 | bool | undefined |
hasRoleWithSwitch
function hasRoleWithSwitch(bytes32 role, address account) external view returns (bool)
Checks whether an account has a particular role; role restrictions can be swtiched on and off.
Returns true if account has been granted role. Role restrictions can be swtiched on and off: - If address(0) has ROLE, then the ROLE restrictions don't apply. - If address(0) does not have ROLE, then the ROLE restrictions will apply.
Parameters
| Name | Type | Description |
|---|
| role | bytes32 | keccak256 hash of the role. e.g. keccak256("TRANSFER_ROLE") |
| account | address | Address of the account for which the role is being checked. |
Returns
| Name | Type | Description |
|---|
| _0 | bool | undefined |
initialize
function initialize(address _defaultAdmin, string _name, string _symbol, string _contractURI, address[] _trustedForwarders, address _royaltyRecipient, uint256 _royaltyBps) external nonpayable
Initiliazes the contract, like a constructor.
Parameters
| Name | Type | Description |
|---|
| _defaultAdmin | address | undefined |
| _name | string | undefined |
| _symbol | string | undefined |
| _contractURI | string | undefined |
| _trustedForwarders | address[] | undefined |
| _royaltyRecipient | address | undefined |
| _royaltyBps | uint256 | undefined |
isApprovedForAll
function isApprovedForAll(address account, address operator) external view returns (bool)
See {IERC1155-isApprovedForAll}.
Parameters
| Name | Type | Description |
|---|
| account | address | undefined |
| operator | address | undefined |
Returns
| Name | Type | Description |
|---|
| _0 | bool | undefined |
isTrustedForwarder
function isTrustedForwarder(address forwarder) external view returns (bool)
Parameters
| Name | Type | Description |
|---|
| forwarder | address | undefined |
Returns
| Name | Type | Description |
|---|
| _0 | bool | undefined |
multicall
function multicall(bytes[] data) external nonpayable returns (bytes[] results)
Receives and executes a batch of function calls on this contract.
Parameters
| Name | Type | Description |
|---|
| data | bytes[] | undefined |
Returns
| Name | Type | Description |
|---|
| results | bytes[] | undefined |
name
function name() external view returns (string)
Returns
| Name | Type | Description |
|---|
| _0 | string | undefined |
nextTokenIdToMint
function nextTokenIdToMint() external view returns (uint256)
The token Id of the next set of packs to be minted.
Returns
| Name | Type | Description |
|---|
| _0 | uint256 | undefined |
onERC1155BatchReceived
function onERC1155BatchReceived(address, address, uint256[], uint256[], bytes) external nonpayable returns (bytes4)
Parameters
| Name | Type | Description |
|---|
| _0 | address | undefined |
| _1 | address | undefined |
| _2 | uint256[] | undefined |
| _3 | uint256[] | undefined |
| _4 | bytes | undefined |
Returns
| Name | Type | Description |
|---|
| _0 | bytes4 | undefined |
onERC1155Received
function onERC1155Received(address, address, uint256, uint256, bytes) external nonpayable returns (bytes4)
Parameters
| Name | Type | Description |
|---|
| _0 | address | undefined |
| _1 | address | undefined |
| _2 | uint256 | undefined |
| _3 | uint256 | undefined |
| _4 | bytes | undefined |
Returns
| Name | Type | Description |
|---|
| _0 | bytes4 | undefined |
onERC721Received
function onERC721Received(address, address, uint256, bytes) external nonpayable returns (bytes4)
See {IERC721Receiver-onERC721Received}. Always returns IERC721Receiver.onERC721Received.selector.
Parameters
| Name | Type | Description |
|---|
| _0 | address | undefined |
| _1 | address | undefined |
| _2 | uint256 | undefined |
| _3 | bytes | undefined |
Returns
| Name | Type | Description |
|---|
| _0 | bytes4 | undefined |
openPack
function openPack(uint256 _packId, uint256 _amountToOpen) external nonpayable returns (struct ITokenBundle.Token[])
Lets a pack owner open packs and receive the packs' reward units.
Parameters
| Name | Type | Description |
|---|
| _packId | uint256 | undefined |
| _amountToOpen | uint256 | undefined |
Returns
| Name | Type | Description |
|---|
| _0 | ITokenBundle.Token[] | undefined |
owner
function owner() external view returns (address)
Returns the owner of the contract.
Returns
| Name | Type | Description |
|---|
| _0 | address | undefined |
renounceRole
function renounceRole(bytes32 role, address account) external nonpayable
Revokes role from the account.
Caller must have the role, with caller being the same as account. Emits {RoleRevoked Event}.
Parameters
| Name | Type | Description |
|---|
| role | bytes32 | keccak256 hash of the role. e.g. keccak256("TRANSFER_ROLE") |
| account | address | Address of the account from which the role is being revoked. |
revokeRole
function revokeRole(bytes32 role, address account) external nonpayable
Revokes role from an account.
Caller must have admin role for the role. Emits {RoleRevoked Event}.
Parameters
| Name | Type | Description |
|---|
| role | bytes32 | keccak256 hash of the role. e.g. keccak256("TRANSFER_ROLE") |
| account | address | Address of the account from which the role is being revoked. |
royaltyInfo
function royaltyInfo(uint256 tokenId, uint256 salePrice) external view returns (address receiver, uint256 royaltyAmount)
View royalty info for a given token and sale price.
Returns royalty amount and recipient for tokenId and salePrice.
Parameters
| Name | Type | Description |
|---|
| tokenId | uint256 | The tokenID of the NFT for which to query royalty info. |
| salePrice | uint256 | Sale price of the token. |
Returns
| Name | Type | Description |
|---|
| receiver | address | Address of royalty recipient account. |
| royaltyAmount | uint256 | Royalty amount calculated at current royaltyBps value. |
safeBatchTransferFrom
function safeBatchTransferFrom(address from, address to, uint256[] ids, uint256[] amounts, bytes data) external nonpayable
See {IERC1155-safeBatchTransferFrom}.
Parameters
| Name | Type | Description |
|---|
| from | address | undefined |
| to | address | undefined |
| ids | uint256[] | undefined |
| amounts | uint256[] | undefined |
| data | bytes | undefined |
safeTransferFrom
function safeTransferFrom(address from, address to, uint256 id, uint256 amount, bytes data) external nonpayable
See {IERC1155-safeTransferFrom}.
Parameters
| Name | Type | Description |
|---|
| from | address | undefined |
| to | address | undefined |
| id | uint256 | undefined |
| amount | uint256 | undefined |
| data | bytes | undefined |
setApprovalForAll
function setApprovalForAll(address operator, bool approved) external nonpayable
See {IERC1155-setApprovalForAll}.
Parameters
| Name | Type | Description |
|---|
| operator | address | undefined |
| approved | bool | undefined |
setContractURI
function setContractURI(string _uri) external nonpayable
Lets a contract admin set the URI for contract-level metadata.
Caller should be authorized to setup contractURI, e.g. contract admin. See {_canSetContractURI}. Emits {ContractURIUpdated Event}.
Parameters
| Name | Type | Description |
|---|
| _uri | string | keccak256 hash of the role. e.g. keccak256("TRANSFER_ROLE") |
setDefaultRoyaltyInfo
function setDefaultRoyaltyInfo(address _royaltyRecipient, uint256 _royaltyBps) external nonpayable
Updates default royalty recipient and bps.
Caller should be authorized to set royalty info. See {_canSetRoyaltyInfo}. Emits {DefaultRoyalty Event}; See {_setupDefaultRoyaltyInfo}.
Parameters
| Name | Type | Description |
|---|
| _royaltyRecipient | address | Address to be set as default royalty recipient. |
| _royaltyBps | uint256 | Updated royalty bps. |
setOwner
function setOwner(address _newOwner) external nonpayable
Lets an authorized wallet set a new owner for the contract.
Parameters
| Name | Type | Description |
|---|
| _newOwner | address | The address to set as the new owner of the contract. |
setRoyaltyInfoForToken
function setRoyaltyInfoForToken(uint256 _tokenId, address _recipient, uint256 _bps) external nonpayable
Updates default royalty recipient and bps for a particular token.
Sets royalty info for _tokenId. Caller should be authorized to set royalty info. See {_canSetRoyaltyInfo}. Emits {RoyaltyForToken Event}; See {_setupRoyaltyInfoForToken}.
Parameters
| Name | Type | Description |
|---|
| _tokenId | uint256 | undefined |
| _recipient | address | Address to be set as royalty recipient for given token Id. |
| _bps | uint256 | Updated royalty bps for the token Id. |
supportsInterface
function supportsInterface(bytes4 interfaceId) external view returns (bool)
See ERC 165
Parameters
| Name | Type | Description |
|---|
| interfaceId | bytes4 | undefined |
Returns
| Name | Type | Description |
|---|
| _0 | bool | undefined |
symbol
function symbol() external view returns (string)
Returns
| Name | Type | Description |
|---|
| _0 | string | undefined |
totalSupply
function totalSupply(uint256) external view returns (uint256)
Mapping from token ID => total circulating supply of token with that ID.
Parameters
| Name | Type | Description |
|---|
| _0 | uint256 | undefined |
Returns
| Name | Type | Description |
|---|
| _0 | uint256 | undefined |
uri
function uri(uint256 _tokenId) external view returns (string)
Returns the URI for a given tokenId.
Parameters
| Name | Type | Description |
|---|
| _tokenId | uint256 | undefined |
Returns
| Name | Type | Description |
|---|
| _0 | string | undefined |
Events
ApprovalForAll
event ApprovalForAll(address indexed account, address indexed operator, bool approved)
Parameters
| Name | Type | Description |
|---|
account indexed | address | undefined |
operator indexed | address | undefined |
| approved | bool | undefined |
ContractURIUpdated
event ContractURIUpdated(string prevURI, string newURI)
Parameters
| Name | Type | Description |
|---|
| prevURI | string | undefined |
| newURI | string | undefined |
DefaultRoyalty
event DefaultRoyalty(address indexed newRoyaltyRecipient, uint256 newRoyaltyBps)
Parameters
| Name | Type | Description |
|---|
newRoyaltyRecipient indexed | address | undefined |
| newRoyaltyBps | uint256 | undefined |
Initialized
event Initialized(uint8 version)
Parameters
| Name | Type | Description |
|---|
| version | uint8 | undefined |
OwnerUpdated
event OwnerUpdated(address indexed prevOwner, address indexed newOwner)
Parameters
| Name | Type | Description |
|---|
prevOwner indexed | address | undefined |
newOwner indexed | address | undefined |
PackCreated
event PackCreated(uint256 indexed packId, address recipient, uint256 totalPacksCreated)
Emitted when a set of packs is created.
Parameters
| Name | Type | Description |
|---|
packId indexed | uint256 | undefined |
| recipient | address | undefined |
| totalPacksCreated | uint256 | undefined |
PackOpened
event PackOpened(uint256 indexed packId, address indexed opener, uint256 numOfPacksOpened, ITokenBundle.Token[] rewardUnitsDistributed)
Emitted when a pack is opened.
Parameters
| Name | Type | Description |
|---|
packId indexed | uint256 | undefined |
opener indexed | address | undefined |
| numOfPacksOpened | uint256 | undefined |
| rewardUnitsDistributed | ITokenBundle.Token[] | undefined |
PackUpdated
event PackUpdated(uint256 indexed packId, address recipient, uint256 totalPacksCreated)
Emitted when more packs are minted for a packId.
Parameters
| Name | Type | Description |
|---|
packId indexed | uint256 | undefined |
| recipient | address | undefined |
| totalPacksCreated | uint256 | undefined |
RoleAdminChanged
event RoleAdminChanged(bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole)
Parameters
| Name | Type | Description |
|---|
role indexed | bytes32 | undefined |
previousAdminRole indexed | bytes32 | undefined |
newAdminRole indexed | bytes32 | undefined |
RoleGranted
event RoleGranted(bytes32 indexed role, address indexed account, address indexed sender)
Parameters
| Name | Type | Description |
|---|
role indexed | bytes32 | undefined |
account indexed | address | undefined |
sender indexed | address | undefined |
RoleRevoked
event RoleRevoked(bytes32 indexed role, address indexed account, address indexed sender)
Parameters
| Name | Type | Description |
|---|
role indexed | bytes32 | undefined |
account indexed | address | undefined |
sender indexed | address | undefined |
RoyaltyForToken
event RoyaltyForToken(uint256 indexed tokenId, address indexed royaltyRecipient, uint256 royaltyBps)
Parameters
| Name | Type | Description |
|---|
tokenId indexed | uint256 | undefined |
royaltyRecipient indexed | address | undefined |
| royaltyBps | uint256 | undefined |
TransferBatch
event TransferBatch(address indexed operator, address indexed from, address indexed to, uint256[] ids, uint256[] values)
Parameters
| Name | Type | Description |
|---|
operator indexed | address | undefined |
from indexed | address | undefined |
to indexed | address | undefined |
| ids | uint256[] | undefined |
| values | uint256[] | undefined |
TransferSingle
event TransferSingle(address indexed operator, address indexed from, address indexed to, uint256 id, uint256 value)
Parameters
| Name | Type | Description |
|---|
operator indexed | address | undefined |
from indexed | address | undefined |
to indexed | address | undefined |
| id | uint256 | undefined |
| value | uint256 | undefined |
URI
event URI(string value, uint256 indexed id)
Parameters
| Name | Type | Description |
|---|
| value | string | undefined |
id indexed | uint256 | undefined |