44 lines
956 B
Solidity
44 lines
956 B
Solidity
pragma solidity 0.8.20; //Do not change the solidity version as it negatively impacts submission grading
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
import "@openzeppelin/contracts/access/Ownable.sol";
|
|
import "./YourToken.sol";
|
|
|
|
contract Vendor is Ownable {
|
|
/////////////////
|
|
/// Errors //////
|
|
/////////////////
|
|
|
|
// Errors go here...
|
|
|
|
//////////////////////
|
|
/// State Variables //
|
|
//////////////////////
|
|
|
|
YourToken public immutable yourToken;
|
|
|
|
////////////////
|
|
/// Events /////
|
|
////////////////
|
|
|
|
// Events go here...
|
|
|
|
///////////////////
|
|
/// Constructor ///
|
|
///////////////////
|
|
|
|
constructor(address tokenAddress) Ownable(msg.sender) {
|
|
yourToken = YourToken(tokenAddress);
|
|
}
|
|
|
|
///////////////////
|
|
/// Functions /////
|
|
///////////////////
|
|
|
|
function buyTokens() external payable {}
|
|
|
|
function withdraw() public onlyOwner {}
|
|
|
|
function sellTokens(uint256 amount) public {}
|
|
}
|