"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getExecutedRelayerRefundRootEncoder = getExecutedRelayerRefundRootEncoder;
exports.getExecutedRelayerRefundRootDecoder = getExecutedRelayerRefundRootDecoder;
exports.getExecutedRelayerRefundRootCodec = getExecutedRelayerRefundRootCodec;
var kit_1 = require("@solana/kit");
function getExecutedRelayerRefundRootEncoder() {
    return (0, kit_1.getStructEncoder)([
        ["amountToReturn", (0, kit_1.getU64Encoder)()],
        ["chainId", (0, kit_1.getU64Encoder)()],
        ["refundAmounts", (0, kit_1.getArrayEncoder)((0, kit_1.getU64Encoder)())],
        ["rootBundleId", (0, kit_1.getU32Encoder)()],
        ["leafId", (0, kit_1.getU32Encoder)()],
        ["l2TokenAddress", (0, kit_1.getAddressEncoder)()],
        ["refundAddresses", (0, kit_1.getArrayEncoder)((0, kit_1.getAddressEncoder)())],
        ["deferredRefunds", (0, kit_1.getBooleanEncoder)()],
        ["caller", (0, kit_1.getAddressEncoder)()],
    ]);
}
function getExecutedRelayerRefundRootDecoder() {
    return (0, kit_1.getStructDecoder)([
        ["amountToReturn", (0, kit_1.getU64Decoder)()],
        ["chainId", (0, kit_1.getU64Decoder)()],
        ["refundAmounts", (0, kit_1.getArrayDecoder)((0, kit_1.getU64Decoder)())],
        ["rootBundleId", (0, kit_1.getU32Decoder)()],
        ["leafId", (0, kit_1.getU32Decoder)()],
        ["l2TokenAddress", (0, kit_1.getAddressDecoder)()],
        ["refundAddresses", (0, kit_1.getArrayDecoder)((0, kit_1.getAddressDecoder)())],
        ["deferredRefunds", (0, kit_1.getBooleanDecoder)()],
        ["caller", (0, kit_1.getAddressDecoder)()],
    ]);
}
function getExecutedRelayerRefundRootCodec() {
    return (0, kit_1.combineCodec)(getExecutedRelayerRefundRootEncoder(), getExecutedRelayerRefundRootDecoder());
}
//# sourceMappingURL=executedRelayerRefundRoot.js.map