github.com/MetalBlockchain/subnet-evm@v0.4.9/contract-examples/contracts/IFeeManager.sol (about)

     1  //SPDX-License-Identifier: MIT
     2  pragma solidity ^0.8.0;
     3  import "./IAllowList.sol";
     4  
     5  interface IFeeManager is IAllowList {
     6    // Set fee config fields to contract storage
     7    function setFeeConfig(
     8      uint256 gasLimit,
     9      uint256 targetBlockRate,
    10      uint256 minBaseFee,
    11      uint256 targetGas,
    12      uint256 baseFeeChangeDenominator,
    13      uint256 minBlockGasCost,
    14      uint256 maxBlockGasCost,
    15      uint256 blockGasCostStep
    16    ) external;
    17  
    18    // Get fee config from the contract storage
    19    function getFeeConfig()
    20      external
    21      view
    22      returns (
    23        uint256 gasLimit,
    24        uint256 targetBlockRate,
    25        uint256 minBaseFee,
    26        uint256 targetGas,
    27        uint256 baseFeeChangeDenominator,
    28        uint256 minBlockGasCost,
    29        uint256 maxBlockGasCost,
    30        uint256 blockGasCostStep
    31      );
    32  
    33    // Get the last block number changed the fee config from the contract storage
    34    function getFeeConfigLastChangedAt() external view returns (uint256 blockNumber);
    35  }