-
Notifications
You must be signed in to change notification settings - Fork 158
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
interfaces for unverified sepolia bridge contracts
- Loading branch information
Showing
2 changed files
with
235 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,74 @@ | ||
// SPDX-License-Identifier: UNLICENSED | ||
pragma solidity ^0.8.15; | ||
|
||
interface IL1CrossDomainMessenger { | ||
event FailedRelayedMessage(bytes32 indexed msgHash); | ||
event Initialized(uint8 version); | ||
event RelayedMessage(bytes32 indexed msgHash); | ||
event SentMessage( | ||
address indexed target, | ||
address sender, | ||
bytes message, | ||
uint256 messageNonce, | ||
uint256 gasLimit | ||
); | ||
event SentMessageExtension1(address indexed sender, uint256 value); | ||
|
||
function MESSAGE_VERSION() external view returns (uint16); | ||
|
||
function MIN_GAS_CALLDATA_OVERHEAD() external view returns (uint64); | ||
|
||
function MIN_GAS_DYNAMIC_OVERHEAD_DENOMINATOR() | ||
external | ||
view | ||
returns (uint64); | ||
|
||
function MIN_GAS_DYNAMIC_OVERHEAD_NUMERATOR() | ||
external | ||
view | ||
returns (uint64); | ||
|
||
function OTHER_MESSENGER() external view returns (address); | ||
|
||
function PORTAL() external view returns (address); | ||
|
||
function RELAY_CALL_OVERHEAD() external view returns (uint64); | ||
|
||
function RELAY_CONSTANT_OVERHEAD() external view returns (uint64); | ||
|
||
function RELAY_GAS_CHECK_BUFFER() external view returns (uint64); | ||
|
||
function RELAY_RESERVED_GAS() external view returns (uint64); | ||
|
||
function baseGas(bytes memory _message, uint32 _minGasLimit) | ||
external | ||
pure | ||
returns (uint64); | ||
|
||
function failedMessages(bytes32) external view returns (bool); | ||
|
||
function initialize() external; | ||
|
||
function messageNonce() external view returns (uint256); | ||
|
||
function relayMessage( | ||
uint256 _nonce, | ||
address _sender, | ||
address _target, | ||
uint256 _value, | ||
uint256 _minGasLimit, | ||
bytes memory _message | ||
) external payable; | ||
|
||
function sendMessage( | ||
address _target, | ||
bytes memory _message, | ||
uint32 _minGasLimit | ||
) external payable; | ||
|
||
function successfulMessages(bytes32) external view returns (bool); | ||
|
||
function version() external view returns (string memory); | ||
|
||
function xDomainMessageSender() external view returns (address); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,161 @@ | ||
// SPDX-License-Identifier: UNLICENSED | ||
pragma solidity ^0.8.15; | ||
|
||
interface IL1StandardBridge { | ||
event ERC20BridgeFinalized( | ||
address indexed localToken, | ||
address indexed remoteToken, | ||
address indexed from, | ||
address to, | ||
uint256 amount, | ||
bytes extraData | ||
); | ||
event ERC20BridgeInitiated( | ||
address indexed localToken, | ||
address indexed remoteToken, | ||
address indexed from, | ||
address to, | ||
uint256 amount, | ||
bytes extraData | ||
); | ||
event ERC20DepositInitiated( | ||
address indexed l1Token, | ||
address indexed l2Token, | ||
address indexed from, | ||
address to, | ||
uint256 amount, | ||
bytes extraData | ||
); | ||
event ERC20WithdrawalFinalized( | ||
address indexed l1Token, | ||
address indexed l2Token, | ||
address indexed from, | ||
address to, | ||
uint256 amount, | ||
bytes extraData | ||
); | ||
event ETHBridgeFinalized( | ||
address indexed from, | ||
address indexed to, | ||
uint256 amount, | ||
bytes extraData | ||
); | ||
event ETHBridgeInitiated( | ||
address indexed from, | ||
address indexed to, | ||
uint256 amount, | ||
bytes extraData | ||
); | ||
event ETHDepositInitiated( | ||
address indexed from, | ||
address indexed to, | ||
uint256 amount, | ||
bytes extraData | ||
); | ||
event ETHWithdrawalFinalized( | ||
address indexed from, | ||
address indexed to, | ||
uint256 amount, | ||
bytes extraData | ||
); | ||
|
||
function MESSENGER() external view returns (address); | ||
|
||
function OTHER_BRIDGE() external view returns (address); | ||
|
||
function bridgeERC20( | ||
address _localToken, | ||
address _remoteToken, | ||
uint256 _amount, | ||
uint32 _minGasLimit, | ||
bytes memory _extraData | ||
) external; | ||
|
||
function bridgeERC20To( | ||
address _localToken, | ||
address _remoteToken, | ||
address _to, | ||
uint256 _amount, | ||
uint32 _minGasLimit, | ||
bytes memory _extraData | ||
) external; | ||
|
||
function bridgeETH(uint32 _minGasLimit, bytes memory _extraData) | ||
external | ||
payable; | ||
|
||
function bridgeETHTo( | ||
address _to, | ||
uint32 _minGasLimit, | ||
bytes memory _extraData | ||
) external payable; | ||
|
||
function depositERC20( | ||
address _l1Token, | ||
address _l2Token, | ||
uint256 _amount, | ||
uint32 _minGasLimit, | ||
bytes memory _extraData | ||
) external; | ||
|
||
function depositERC20To( | ||
address _l1Token, | ||
address _l2Token, | ||
address _to, | ||
uint256 _amount, | ||
uint32 _minGasLimit, | ||
bytes memory _extraData | ||
) external; | ||
|
||
function depositETH(uint32 _minGasLimit, bytes memory _extraData) | ||
external | ||
payable; | ||
|
||
function depositETHTo( | ||
address _to, | ||
uint32 _minGasLimit, | ||
bytes memory _extraData | ||
) external payable; | ||
|
||
function deposits(address, address) external view returns (uint256); | ||
|
||
function finalizeBridgeERC20( | ||
address _localToken, | ||
address _remoteToken, | ||
address _from, | ||
address _to, | ||
uint256 _amount, | ||
bytes memory _extraData | ||
) external; | ||
|
||
function finalizeBridgeETH( | ||
address _from, | ||
address _to, | ||
uint256 _amount, | ||
bytes memory _extraData | ||
) external payable; | ||
|
||
function finalizeERC20Withdrawal( | ||
address _l1Token, | ||
address _l2Token, | ||
address _from, | ||
address _to, | ||
uint256 _amount, | ||
bytes memory _extraData | ||
) external; | ||
|
||
function finalizeETHWithdrawal( | ||
address _from, | ||
address _to, | ||
uint256 _amount, | ||
bytes memory _extraData | ||
) external payable; | ||
|
||
function l2TokenBridge() external view returns (address); | ||
|
||
function messenger() external view returns (address); | ||
|
||
function version() external view returns (string memory); | ||
|
||
receive() external payable; | ||
} |