// SPDX-License-Identifier: MIT // +build ovm pragma solidity >0.5.0 <0.8.0; pragma experimental ABIEncoderV2; interface iBaseCustomCrossDomainMessenger { /********** * Events * **********/ event SentMessage(bytes message); event RelayedMessage(bytes32 msgHash); /********************** * Contract Variables * **********************/ function xDomainMessageSender() external view returns (address); /******************** * Public Functions * ********************/ /** * Sends a cross domain message to the target messenger. * @param _target Target contract address. * @param _message Message to send to the target. * @param _gasLimit Gas limit for the provided message. * @param _timelock Timelock (in seconds) for the provided message. */ function sendMessage( address _target, bytes calldata _message, uint32 _gasLimit, uint256 _timelock ) external; }