IHomeGateway
Inherits: IArbitrableV2, ISenderGateway
Functions
relayCreateDispute
Relays a dispute creation from the ForeignGateway to the home arbitrator using the same parameters as the ones on the foreign chain. Providing incorrect parameters will create a different hash than on the foreignChain and will not affect the actual dispute/arbitrable's ruling. This function accepts the fees payment in the native currency of the home chain, typically ETH.
function relayCreateDispute(RelayCreateDisputeParams memory _params) external payable;
Parameters
| Name | Type | Description | 
|---|---|---|
| _params | RelayCreateDisputeParams | The parameters of the dispute, see RelayCreateDisputeParams. | 
relayCreateDispute
Relays a dispute creation from the ForeignGateway to the home arbitrator using the same parameters as the ones on the foreign chain.
Providing incorrect parameters will create a different hash than on the foreignChain and will not affect the actual dispute/arbitrable's ruling.
This function accepts the fees payment in the ERC20 acceptedFeeToken().
function relayCreateDispute(RelayCreateDisputeParams memory _params, uint256 _feeAmount) external;
Parameters
| Name | Type | Description | 
|---|---|---|
| _params | RelayCreateDisputeParams | The parameters of the dispute, see RelayCreateDisputeParams. | 
| _feeAmount | uint256 | 
disputeHashToHomeID
Looks up the local home disputeID for a disputeHash
function disputeHashToHomeID(bytes32 _disputeHash) external view returns (uint256);
Parameters
| Name | Type | Description | 
|---|---|---|
| _disputeHash | bytes32 | dispute hash | 
Returns
| Name | Type | Description | 
|---|---|---|
| <none> | uint256 | disputeID dispute identifier on the home chain | 
foreignChainID
function foreignChainID() external view returns (uint256);
Returns
| Name | Type | Description | 
|---|---|---|
| <none> | uint256 | The chain ID where the corresponding foreign gateway is deployed. | 
foreignGateway
function foreignGateway() external view returns (address);
Returns
| Name | Type | Description | 
|---|---|---|
| <none> | address | The address of the corresponding foreign gateway. | 
feeToken
return The fee token.
function feeToken() external view returns (IERC20);
Events
CrossChainDisputeIncoming
To be emitted when a dispute is received from the IForeignGateway.
event CrossChainDisputeIncoming(
    IArbitratorV2 _arbitrator,
    uint256 _arbitrableChainId,
    address indexed _arbitrable,
    uint256 indexed _arbitrableDisputeID,
    uint256 indexed _arbitratorDisputeID,
    uint256 _externalDisputeID,
    uint256 _templateId,
    string _templateUri
);
Structs
RelayCreateDisputeParams
struct RelayCreateDisputeParams {
    bytes32 foreignBlockHash;
    uint256 foreignChainID;
    address foreignArbitrable;
    uint256 foreignDisputeID;
    uint256 externalDisputeID;
    uint256 templateId;
    string templateUri;
    uint256 choices;
    bytes extraData;
}