import * as anchor from "@coral-xyz/anchor";
export type TokenMessengerMessageBody = {
    version: number;
    burnToken: anchor.web3.PublicKey;
    mintRecipient: anchor.web3.PublicKey;
    amount: BigInt;
    messageSender: anchor.web3.PublicKey;
};
export declare const decodeMessageSentData: (message: Buffer) => {
    messageBody: TokenMessengerMessageBody;
    version: number;
    sourceDomain: number;
    destinationDomain: number;
    nonce: bigint;
    sender: anchor.web3.PublicKey;
    recipient: anchor.web3.PublicKey;
    destinationCaller: anchor.web3.PublicKey;
};
export type MessageHeader = {
    version: number;
    sourceDomain: number;
    destinationDomain: number;
    nonce: bigint;
    sender: anchor.web3.PublicKey;
    recipient: anchor.web3.PublicKey;
    destinationCaller: anchor.web3.PublicKey;
    messageBody: Buffer;
};
export declare const decodeMessageHeader: (data: Buffer) => MessageHeader;
export declare const decodeTokenMessengerMessageBody: (data: Buffer) => TokenMessengerMessageBody;
export declare const encodeMessageHeader: (header: MessageHeader) => Buffer;
export declare const getMessages: (txHash: string, srcDomain: number, irisApiUrl: string) => Promise<any>;
