An external method for users to purchase and mint NFTs. Requires that the sale is active, that the minted NFTs will not exceed the `MAX_SUPPLY`, and that a sufficient payable value is sent.
Returns the address of the current owner.
Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.
A way for the owner to reserve a specifc number of NFTs without having to interact with the sale.
Updates the baseURI that will be used to retrieve NFT metadata.
Sets the price of each NFT during the initial sale.
Sets whether or not the NFT sale is active.
Sets the maximum number of NFTs that can be sold to a specific address.
Burned tokens are calculated here, use _totalMinted() if you want to count just minted tokens.
Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.
A way for the owner to withdraw all proceeds from the sale.