import { Infer } from "superstruct";
import { BigNumber, EvmAddress, RawAddress, SvmAddress, TvmAddress } from "../../../utils";
export declare const AddressType: import("superstruct").Struct<SvmAddress | EvmAddress | TvmAddress | RawAddress, null>;
export declare const SortableEventSS: {
    blockNumber: import("superstruct").Struct<number, null>;
    logIndex: import("superstruct").Struct<number, null>;
    txnRef: import("superstruct").Struct<string | undefined, null>;
    txnIndex: import("superstruct").Struct<number | undefined, null>;
    transactionHash: import("superstruct").Struct<string | undefined, null>;
    transactionIndex: import("superstruct").Struct<number | undefined, null>;
};
export declare const BundleDataSS: import("superstruct").Struct<{
    bundleDepositsV3: Record<string, Record<string, {
        message: string;
        destinationChainId: number;
        originChainId: number;
        depositor: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        recipient: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        inputToken: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        outputToken: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        inputAmount: BigNumber;
        outputAmount: BigNumber;
        exclusiveRelayer: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        quoteTimestamp: number;
        fillDeadline: number;
        depositId: BigNumber;
        exclusivityDeadline: number;
        messageHash: string;
        quoteBlockNumber: number;
        fromLiteChain: boolean;
        toLiteChain: boolean;
        blockNumber: number;
        logIndex: number;
        updatedOutputAmount?: BigNumber | undefined;
        updatedRecipient?: SvmAddress | EvmAddress | TvmAddress | RawAddress | undefined;
        updatedMessage?: string | undefined;
        speedUpSignature?: string | undefined;
        txnIndex?: number | undefined;
        txnRef?: string | undefined;
        relayerFeePct?: BigNumber | undefined;
        transactionHash?: string | undefined;
        transactionIndex?: number | undefined;
    }[]>>;
    bundleFillsV3: Record<string, Record<string, {
        fills: {
            destinationChainId: number;
            originChainId: number;
            depositor: SvmAddress | EvmAddress | TvmAddress | RawAddress;
            recipient: SvmAddress | EvmAddress | TvmAddress | RawAddress;
            inputToken: SvmAddress | EvmAddress | TvmAddress | RawAddress;
            outputToken: SvmAddress | EvmAddress | TvmAddress | RawAddress;
            inputAmount: BigNumber;
            outputAmount: BigNumber;
            exclusiveRelayer: SvmAddress | EvmAddress | TvmAddress | RawAddress;
            quoteTimestamp: number;
            fillDeadline: number;
            depositId: BigNumber;
            exclusivityDeadline: number;
            repaymentChainId: number;
            relayer: SvmAddress | EvmAddress | TvmAddress | RawAddress;
            messageHash: string;
            relayExecutionInfo: {
                updatedOutputAmount: BigNumber;
                updatedRecipient: SvmAddress | EvmAddress | TvmAddress | RawAddress;
                updatedMessageHash: string;
                fillType: number;
                updatedMessage?: string | undefined;
            };
            blockNumber: number;
            logIndex: number;
            lpFeePct: BigNumber;
            message?: string | undefined;
            txnIndex?: number | undefined;
            txnRef?: string | undefined;
            transactionHash?: string | undefined;
            transactionIndex?: number | undefined;
        }[];
        realizedLpFees: BigNumber;
        refunds: Record<string, BigNumber>;
        totalRefundAmount: BigNumber;
    }>>;
    bundleSlowFillsV3: Record<string, Record<string, {
        message: string;
        destinationChainId: number;
        originChainId: number;
        depositor: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        recipient: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        inputToken: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        outputToken: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        inputAmount: BigNumber;
        outputAmount: BigNumber;
        exclusiveRelayer: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        quoteTimestamp: number;
        fillDeadline: number;
        depositId: BigNumber;
        exclusivityDeadline: number;
        messageHash: string;
        quoteBlockNumber: number;
        fromLiteChain: boolean;
        toLiteChain: boolean;
        blockNumber: number;
        logIndex: number;
        lpFeePct: BigNumber;
        updatedOutputAmount?: BigNumber | undefined;
        updatedRecipient?: SvmAddress | EvmAddress | TvmAddress | RawAddress | undefined;
        updatedMessage?: string | undefined;
        speedUpSignature?: string | undefined;
        txnIndex?: number | undefined;
        txnRef?: string | undefined;
        relayerFeePct?: BigNumber | undefined;
        transactionHash?: string | undefined;
        transactionIndex?: number | undefined;
    }[]>>;
    expiredDepositsToRefundV3: Record<string, Record<string, {
        message: string;
        destinationChainId: number;
        originChainId: number;
        depositor: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        recipient: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        inputToken: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        outputToken: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        inputAmount: BigNumber;
        outputAmount: BigNumber;
        exclusiveRelayer: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        quoteTimestamp: number;
        fillDeadline: number;
        depositId: BigNumber;
        exclusivityDeadline: number;
        messageHash: string;
        quoteBlockNumber: number;
        fromLiteChain: boolean;
        toLiteChain: boolean;
        blockNumber: number;
        logIndex: number;
        updatedOutputAmount?: BigNumber | undefined;
        updatedRecipient?: SvmAddress | EvmAddress | TvmAddress | RawAddress | undefined;
        updatedMessage?: string | undefined;
        speedUpSignature?: string | undefined;
        txnIndex?: number | undefined;
        txnRef?: string | undefined;
        relayerFeePct?: BigNumber | undefined;
        transactionHash?: string | undefined;
        transactionIndex?: number | undefined;
    }[]>>;
    unexecutableSlowFills: Record<string, Record<string, {
        message: string;
        destinationChainId: number;
        originChainId: number;
        depositor: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        recipient: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        inputToken: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        outputToken: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        inputAmount: BigNumber;
        outputAmount: BigNumber;
        exclusiveRelayer: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        quoteTimestamp: number;
        fillDeadline: number;
        depositId: BigNumber;
        exclusivityDeadline: number;
        messageHash: string;
        quoteBlockNumber: number;
        fromLiteChain: boolean;
        toLiteChain: boolean;
        blockNumber: number;
        logIndex: number;
        lpFeePct: BigNumber;
        updatedOutputAmount?: BigNumber | undefined;
        updatedRecipient?: SvmAddress | EvmAddress | TvmAddress | RawAddress | undefined;
        updatedMessage?: string | undefined;
        speedUpSignature?: string | undefined;
        txnIndex?: number | undefined;
        txnRef?: string | undefined;
        relayerFeePct?: BigNumber | undefined;
        transactionHash?: string | undefined;
        transactionIndex?: number | undefined;
    }[]>>;
}, {
    bundleDepositsV3: import("superstruct").Struct<Record<string, Record<string, {
        message: string;
        destinationChainId: number;
        originChainId: number;
        depositor: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        recipient: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        inputToken: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        outputToken: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        inputAmount: BigNumber;
        outputAmount: BigNumber;
        exclusiveRelayer: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        quoteTimestamp: number;
        fillDeadline: number;
        depositId: BigNumber;
        exclusivityDeadline: number;
        messageHash: string;
        quoteBlockNumber: number;
        fromLiteChain: boolean;
        toLiteChain: boolean;
        blockNumber: number;
        logIndex: number;
        updatedOutputAmount?: BigNumber | undefined;
        updatedRecipient?: SvmAddress | EvmAddress | TvmAddress | RawAddress | undefined;
        updatedMessage?: string | undefined;
        speedUpSignature?: string | undefined;
        txnIndex?: number | undefined;
        txnRef?: string | undefined;
        relayerFeePct?: BigNumber | undefined;
        transactionHash?: string | undefined;
        transactionIndex?: number | undefined;
    }[]>>, null>;
    expiredDepositsToRefundV3: import("superstruct").Struct<Record<string, Record<string, {
        message: string;
        destinationChainId: number;
        originChainId: number;
        depositor: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        recipient: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        inputToken: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        outputToken: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        inputAmount: BigNumber;
        outputAmount: BigNumber;
        exclusiveRelayer: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        quoteTimestamp: number;
        fillDeadline: number;
        depositId: BigNumber;
        exclusivityDeadline: number;
        messageHash: string;
        quoteBlockNumber: number;
        fromLiteChain: boolean;
        toLiteChain: boolean;
        blockNumber: number;
        logIndex: number;
        updatedOutputAmount?: BigNumber | undefined;
        updatedRecipient?: SvmAddress | EvmAddress | TvmAddress | RawAddress | undefined;
        updatedMessage?: string | undefined;
        speedUpSignature?: string | undefined;
        txnIndex?: number | undefined;
        txnRef?: string | undefined;
        relayerFeePct?: BigNumber | undefined;
        transactionHash?: string | undefined;
        transactionIndex?: number | undefined;
    }[]>>, null>;
    unexecutableSlowFills: import("superstruct").Struct<Record<string, Record<string, {
        message: string;
        destinationChainId: number;
        originChainId: number;
        depositor: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        recipient: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        inputToken: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        outputToken: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        inputAmount: BigNumber;
        outputAmount: BigNumber;
        exclusiveRelayer: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        quoteTimestamp: number;
        fillDeadline: number;
        depositId: BigNumber;
        exclusivityDeadline: number;
        messageHash: string;
        quoteBlockNumber: number;
        fromLiteChain: boolean;
        toLiteChain: boolean;
        blockNumber: number;
        logIndex: number;
        lpFeePct: BigNumber;
        updatedOutputAmount?: BigNumber | undefined;
        updatedRecipient?: SvmAddress | EvmAddress | TvmAddress | RawAddress | undefined;
        updatedMessage?: string | undefined;
        speedUpSignature?: string | undefined;
        txnIndex?: number | undefined;
        txnRef?: string | undefined;
        relayerFeePct?: BigNumber | undefined;
        transactionHash?: string | undefined;
        transactionIndex?: number | undefined;
    }[]>>, null>;
    bundleSlowFillsV3: import("superstruct").Struct<Record<string, Record<string, {
        message: string;
        destinationChainId: number;
        originChainId: number;
        depositor: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        recipient: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        inputToken: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        outputToken: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        inputAmount: BigNumber;
        outputAmount: BigNumber;
        exclusiveRelayer: SvmAddress | EvmAddress | TvmAddress | RawAddress;
        quoteTimestamp: number;
        fillDeadline: number;
        depositId: BigNumber;
        exclusivityDeadline: number;
        messageHash: string;
        quoteBlockNumber: number;
        fromLiteChain: boolean;
        toLiteChain: boolean;
        blockNumber: number;
        logIndex: number;
        lpFeePct: BigNumber;
        updatedOutputAmount?: BigNumber | undefined;
        updatedRecipient?: SvmAddress | EvmAddress | TvmAddress | RawAddress | undefined;
        updatedMessage?: string | undefined;
        speedUpSignature?: string | undefined;
        txnIndex?: number | undefined;
        txnRef?: string | undefined;
        relayerFeePct?: BigNumber | undefined;
        transactionHash?: string | undefined;
        transactionIndex?: number | undefined;
    }[]>>, null>;
    bundleFillsV3: import("superstruct").Struct<Record<string, Record<string, {
        fills: {
            destinationChainId: number;
            originChainId: number;
            depositor: SvmAddress | EvmAddress | TvmAddress | RawAddress;
            recipient: SvmAddress | EvmAddress | TvmAddress | RawAddress;
            inputToken: SvmAddress | EvmAddress | TvmAddress | RawAddress;
            outputToken: SvmAddress | EvmAddress | TvmAddress | RawAddress;
            inputAmount: BigNumber;
            outputAmount: BigNumber;
            exclusiveRelayer: SvmAddress | EvmAddress | TvmAddress | RawAddress;
            quoteTimestamp: number;
            fillDeadline: number;
            depositId: BigNumber;
            exclusivityDeadline: number;
            repaymentChainId: number;
            relayer: SvmAddress | EvmAddress | TvmAddress | RawAddress;
            messageHash: string;
            relayExecutionInfo: {
                updatedOutputAmount: BigNumber;
                updatedRecipient: SvmAddress | EvmAddress | TvmAddress | RawAddress;
                updatedMessageHash: string;
                fillType: number;
                updatedMessage?: string | undefined;
            };
            blockNumber: number;
            logIndex: number;
            lpFeePct: BigNumber;
            message?: string | undefined;
            txnIndex?: number | undefined;
            txnRef?: string | undefined;
            transactionHash?: string | undefined;
            transactionIndex?: number | undefined;
        }[];
        realizedLpFees: BigNumber;
        refunds: Record<string, BigNumber>;
        totalRefundAmount: BigNumber;
    }>>, null>;
}>;
export type BundleData = Infer<typeof BundleDataSS>;
//# sourceMappingURL=SuperstructUtils.d.ts.map