{
  "DEPLOY_TIME": {
    "inputs": [],
    "name": "DEPLOY_TIME",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  "SNAPSHOT_INTERVAL": {
    "inputs": [],
    "name": "SNAPSHOT_INTERVAL",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  "STAKE_LOCKTIME": {
    "inputs": [],
    "name": "STAKE_LOCKTIME",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  "currentInterval": {
    "inputs": [],
    "name": "currentInterval",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  "globalsSnapshot": {
    "inputs": [
      {
        "internalType": "uint256",
        "name": "_index",
        "type": "uint256"
      }
    ],
    "name": "globalsSnapshot",
    "outputs": [
      {
        "components": [
          {
            "internalType": "uint256",
            "name": "interval",
            "type": "uint256"
          },
          {
            "internalType": "uint256",
            "name": "totalVotingPower",
            "type": "uint256"
          },
          {
            "internalType": "uint256",
            "name": "totalStaked",
            "type": "uint256"
          }
        ],
        "internalType": "struct Staking.GlobalsSnapshot",
        "name": "",
        "type": "tuple"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  "globalsSnapshotAt": {
    "inputs": [
      {
        "internalType": "uint256",
        "name": "_interval",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "_hint",
        "type": "uint256"
      }
    ],
    "name": "globalsSnapshotAt",
    "outputs": [
      {
        "components": [
          {
            "internalType": "uint256",
            "name": "interval",
            "type": "uint256"
          },
          {
            "internalType": "uint256",
            "name": "totalVotingPower",
            "type": "uint256"
          },
          {
            "internalType": "uint256",
            "name": "totalStaked",
            "type": "uint256"
          }
        ],
        "internalType": "struct Staking.GlobalsSnapshot",
        "name": "",
        "type": "tuple"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  "globalsSnapshotLength": {
    "inputs": [],
    "name": "globalsSnapshotLength",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  "intervalAtTime": {
    "inputs": [
      {
        "internalType": "uint256",
        "name": "_time",
        "type": "uint256"
      }
    ],
    "name": "intervalAtTime",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  "latestGlobalsSnapshotInterval": {
    "inputs": [],
    "name": "latestGlobalsSnapshotInterval",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  "stakingToken": {
    "inputs": [],
    "name": "stakingToken",
    "outputs": [
      {
        "internalType": "contract IERC20",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  "totalStaked": {
    "inputs": [],
    "name": "totalStaked",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  "totalVotingPower": {
    "inputs": [],
    "name": "totalVotingPower",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  }
}
