IInbox.sol 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. // SPDX-License-Identifier: Apache-2.0
  2. /*
  3. * Copyright 2021, Offchain Labs, Inc.
  4. *
  5. * Licensed under the Apache License, Version 2.0 (the "License");
  6. * you may not use this file except in compliance with the License.
  7. * You may obtain a copy of the License at
  8. *
  9. * http://www.apache.org/licenses/LICENSE-2.0
  10. *
  11. * Unless required by applicable law or agreed to in writing, software
  12. * distributed under the License is distributed on an "AS IS" BASIS,
  13. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  14. * See the License for the specific language governing permissions and
  15. * limitations under the License.
  16. */
  17. pragma solidity ^0.8.0;
  18. import "./IMessageProvider.sol";
  19. interface IInbox is IMessageProvider {
  20. function sendL2Message(bytes calldata messageData) external returns (uint256);
  21. function sendUnsignedTransaction(
  22. uint256 maxGas,
  23. uint256 gasPriceBid,
  24. uint256 nonce,
  25. address destAddr,
  26. uint256 amount,
  27. bytes calldata data
  28. ) external returns (uint256);
  29. function sendContractTransaction(
  30. uint256 maxGas,
  31. uint256 gasPriceBid,
  32. address destAddr,
  33. uint256 amount,
  34. bytes calldata data
  35. ) external returns (uint256);
  36. function sendL1FundedUnsignedTransaction(
  37. uint256 maxGas,
  38. uint256 gasPriceBid,
  39. uint256 nonce,
  40. address destAddr,
  41. bytes calldata data
  42. ) external payable returns (uint256);
  43. function sendL1FundedContractTransaction(
  44. uint256 maxGas,
  45. uint256 gasPriceBid,
  46. address destAddr,
  47. bytes calldata data
  48. ) external payable returns (uint256);
  49. function createRetryableTicket(
  50. address destAddr,
  51. uint256 arbTxCallValue,
  52. uint256 maxSubmissionCost,
  53. address submissionRefundAddress,
  54. address valueRefundAddress,
  55. uint256 maxGas,
  56. uint256 gasPriceBid,
  57. bytes calldata data
  58. ) external payable returns (uint256);
  59. function createRetryableTicketNoRefundAliasRewrite(
  60. address destAddr,
  61. uint256 arbTxCallValue,
  62. uint256 maxSubmissionCost,
  63. address submissionRefundAddress,
  64. address valueRefundAddress,
  65. uint256 maxGas,
  66. uint256 gasPriceBid,
  67. bytes calldata data
  68. ) external payable returns (uint256);
  69. function depositEth(uint256 maxSubmissionCost) external payable returns (uint256);
  70. function bridge() external view returns (address);
  71. function pauseCreateRetryables() external;
  72. function unpauseCreateRetryables() external;
  73. function startRewriteAddress() external;
  74. function stopRewriteAddress() external;
  75. }