// SPDX-License-Identifier: MIT pragma solidity ^0.8.15; /** * @dev Extension of {ERC721A} that allows other facets from the diamond to mint tokens. */ interface IERC721MintableExtension { /** * @dev Creates `amount` new tokens for `to`, of token type `id`. * * See {ERC721A-_mint}. * * Requirements: * * - the caller must be diamond itself (other facets). */ function mintByFacet(address to, uint256 amount) external; /** * @dev Mint new tokens for multiple addresses with different amounts. */ function mintByFacet(address[] memory tos, uint256[] memory amounts) external; /** * @dev Mint constant amount of new tokens for multiple addresses (e.g. 1 nft for each address). */ function mintByFacet(address[] memory tos, uint256 amount) external; }