ILayerZeroUserApplicationConfig.sol 1.3 KB

12345678910111213141516171819202122232425
  1. // SPDX-License-Identifier: BUSL-1.1
  2. pragma solidity >=0.5.0;
  3. interface ILayerZeroUserApplicationConfig {
  4. // @notice set the configuration of the LayerZero messaging library of the specified version
  5. // @param _version - messaging library version
  6. // @param _chainId - the chainId for the pending config change
  7. // @param _configType - type of configuration. every messaging library has its own convention.
  8. // @param _config - configuration in the bytes. can encode arbitrary content.
  9. function setConfig(uint16 _version, uint16 _chainId, uint _configType, bytes calldata _config) external;
  10. // @notice set the send() LayerZero messaging library version to _version
  11. // @param _version - new messaging library version
  12. function setSendVersion(uint16 _version) external;
  13. // @notice set the lzReceive() LayerZero messaging library version to _version
  14. // @param _version - new messaging library version
  15. function setReceiveVersion(uint16 _version) external;
  16. // @notice Only when the UA needs to resume the message flow in blocking mode and clear the stored payload
  17. // @param _srcChainId - the chainId of the source chain
  18. // @param _srcAddress - the contract address of the source contract at the source chain
  19. function forceResumeReceive(uint16 _srcChainId, bytes calldata _srcAddress) external;
  20. }