-
Notifications
You must be signed in to change notification settings - Fork 71
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
4 changed files
with
1,314 additions
and
0 deletions.
There are no files selected for viewing
56 changes: 56 additions & 0 deletions
56
...modules/ReserveAuction/Listing/ETH/IReserveAuctionListingAdjustableBufferIncrementEth.sol
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
// SPDX-License-Identifier: GPL-3.0 | ||
pragma solidity 0.8.10; | ||
|
||
/// @title IReserveAuctionListingAdjustableBufferIncrementEth | ||
/// @author jgeary | ||
/// @notice Interface for Reserve Auction w/ Listing Fee, Adjustable Buffer & Increment ETH | ||
interface IReserveAuctionListingAdjustableBufferIncrementEth { | ||
/// @notice Creates an auction for a given NFT | ||
/// @param _tokenContract The address of the ERC-721 token | ||
/// @param _tokenId The id of the ERC-721 token | ||
/// @param _duration The length of time the auction should run after the first bid | ||
/// @param _reservePrice The minimum bid amount to start the auction | ||
/// @param _sellerFundsRecipient The address to send funds to once the auction is complete | ||
/// @param _startTime The time that users can begin placing bids | ||
/// @param _listingFeeBps The fee to send to the lister of the auction | ||
/// @param _listingFeeRecipient The address listing the auction | ||
/// @param _timeBuffer Time buffer in seconds | ||
/// @param _percentIncrement The minimum percent increase for a new bid | ||
function createAuction( | ||
address _tokenContract, | ||
uint256 _tokenId, | ||
uint256 _duration, | ||
uint256 _reservePrice, | ||
address _sellerFundsRecipient, | ||
uint256 _startTime, | ||
uint256 _listingFeeBps, | ||
address _listingFeeRecipient, | ||
uint16 _timeBuffer, | ||
uint8 _percentIncrement | ||
) external; | ||
|
||
/// @notice Updates the reserve price for a given auction | ||
/// @param _tokenContract The address of the ERC-721 token | ||
/// @param _tokenId The id of the ERC-721 token | ||
/// @param _reservePrice The new reserve price | ||
function setAuctionReservePrice( | ||
address _tokenContract, | ||
uint256 _tokenId, | ||
uint256 _reservePrice | ||
) external; | ||
|
||
/// @notice Cancels the auction for a given NFT | ||
/// @param _tokenContract The address of the ERC-721 token | ||
/// @param _tokenId The id of the ERC-721 token | ||
function cancelAuction(address _tokenContract, uint256 _tokenId) external; | ||
|
||
/// @notice Places a bid on the auction for a given NFT | ||
/// @param _tokenContract The address of the ERC-721 token | ||
/// @param _tokenId The id of the ERC-721 token | ||
function createBid(address _tokenContract, uint256 _tokenId) external payable; | ||
|
||
/// @notice Ends the auction for a given NFT | ||
/// @param _tokenContract The address of the ERC-721 token | ||
/// @param _tokenId The id of the ERC-721 token | ||
function settleAuction(address _tokenContract, uint256 _tokenId) external; | ||
} |
Oops, something went wrong.