pragmasolidity0.5.0;interfaceIconBridge{functiongetVersion() public pure returns(stringmemory);functiongetSwapData(bytes32govId,uintdataIndex) public view returns(stringmemoryfromChain,stringmemorytoChain,bytesmemoryfromAddr,bytesmemorytoAddr,bytesmemorytoken);functiongetSwapDataArray(bytes32govId,uintdataIndex) public view returns(bytes32[]memorybytes32s,uint[]memoryuints,address[]memoryvaList);functiongetGovInfo(bytes32govId) public view returns(uint[]memoryuints,bytes32[]memorybytes32s,bytesmemorycomment);functionaddBridgeInfo(stringmemorychain,addressmig,uint[]memoryuints,bytes32[]memorybytes32s,bytesmemorycomment) public;functionremoveBridgeInfo(stringmemorychain) public;functionrelaySwap() public; function validateSwap(bytes32[]memorysigs) public returns (boolmajor,address[]memoryvaList);functionrelaySwapNFT() public; function validateSwapNFT(bytes32[]memorysigs) public returns (boolmajor,address[]memoryvaList);}
All functions except the Read-Only Function of ICON Bridge Contract are executed by HubContract.