# ERC721 Functions

## Mint Functions

Functions used to mint NFTs.

<details>

<summary>mintBase</summary>

*Mints a token **without** an extension. Token URI can also be specified as a parameter to set the token URI upon mint.*

***Permissions:** Owner/Admin function callable by contract owner only.*

```solidity
function mintBase(address to) returns (uint256)

function mintBase(address to, string calldata uri)  returns (uint256)
```

</details>

<details>

<summary>mintBaseBatch</summary>

*Batch mints tokens without an extension and sets the token URIs. Token URI can also be specified as a parameter to set the token URI upon mint.*

***Permissions:** Owner/Admin function callable by contract owner only.*

```solidity
function mintBaseBatch(address to, uint16 count) returns (uint256[] memory)

function mintBaseBatch(address to, string[] calldata uris) returns (uint256[] memory)
```

</details>

<details>

<summary>tokenData</summary>

Any tokenData associated with a token

Currently, this can only be set by an extension on mint. If you wish to set additional token data, you can inherit the ERC721Creator contract and add functions to set it yourself.

**Permissions:** Public

```solidity
function tokenData(uint256 tokenId) view returns (uint80)
```

</details>
