ICompoundTimelock.sol 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. // SPDX-License-Identifier: MIT
  2. // OpenZeppelin Contracts (last updated v4.6.0) (vendor/compound/ICompoundTimelock.sol)
  3. pragma solidity ^0.8.0;
  4. /**
  5. * https://github.com/compound-finance/compound-protocol/blob/master/contracts/Timelock.sol[Compound's timelock] interface
  6. */
  7. interface ICompoundTimelock {
  8. event NewAdmin(address indexed newAdmin);
  9. event NewPendingAdmin(address indexed newPendingAdmin);
  10. event NewDelay(uint256 indexed newDelay);
  11. event CancelTransaction(
  12. bytes32 indexed txHash,
  13. address indexed target,
  14. uint256 value,
  15. string signature,
  16. bytes data,
  17. uint256 eta
  18. );
  19. event ExecuteTransaction(
  20. bytes32 indexed txHash,
  21. address indexed target,
  22. uint256 value,
  23. string signature,
  24. bytes data,
  25. uint256 eta
  26. );
  27. event QueueTransaction(
  28. bytes32 indexed txHash,
  29. address indexed target,
  30. uint256 value,
  31. string signature,
  32. bytes data,
  33. uint256 eta
  34. );
  35. receive() external payable;
  36. // solhint-disable-next-line func-name-mixedcase
  37. function GRACE_PERIOD() external view returns (uint256);
  38. // solhint-disable-next-line func-name-mixedcase
  39. function MINIMUM_DELAY() external view returns (uint256);
  40. // solhint-disable-next-line func-name-mixedcase
  41. function MAXIMUM_DELAY() external view returns (uint256);
  42. function admin() external view returns (address);
  43. function pendingAdmin() external view returns (address);
  44. function delay() external view returns (uint256);
  45. function queuedTransactions(bytes32) external view returns (bool);
  46. function setDelay(uint256) external;
  47. function acceptAdmin() external;
  48. function setPendingAdmin(address) external;
  49. function queueTransaction(
  50. address target,
  51. uint256 value,
  52. string memory signature,
  53. bytes memory data,
  54. uint256 eta
  55. ) external returns (bytes32);
  56. function cancelTransaction(
  57. address target,
  58. uint256 value,
  59. string memory signature,
  60. bytes memory data,
  61. uint256 eta
  62. ) external;
  63. function executeTransaction(
  64. address target,
  65. uint256 value,
  66. string memory signature,
  67. bytes memory data,
  68. uint256 eta
  69. ) external payable returns (bytes memory);
  70. }