polytone-evm 0.3.0

Core interfaces for Polytone Interchain accounts and queries.
Documentation
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.24;

import "./IBCTypes.sol";

interface IIBCPacketHandler {
    event SendPacket(
        uint64 sequence,
        string sourcePort,
        string sourceChannel,
        IbcCoreClientV1Height.IbcCoreClientV1HeightData timeoutHeight,
        uint64 timeoutTimestamp,
        bytes data
    );
    event RecvPacket(IbcCoreChannelV1Packet.IbcCoreChannelV1PacketData packet);
    event WriteAcknowledgement(IbcCoreChannelV1Packet.IbcCoreChannelV1PacketData packet, bytes acknowledgement);
    event AcknowledgePacket(IbcCoreChannelV1Packet.IbcCoreChannelV1PacketData packet, bytes acknowledgement);
    event TimeoutPacket(IbcCoreChannelV1Packet.IbcCoreChannelV1PacketData packet);

    function sendPacket(
        string calldata sourceChannel,
        IbcCoreClientV1Height.IbcCoreClientV1HeightData calldata timeoutHeight,
        uint64 timeoutTimestamp,
        bytes calldata data
    ) external returns (uint64);
}