export declare const PAYMENT_LEAF_V1 = 1;
export declare const PAYMENT_LEAF_V2 = 2;
export type PaymentLeafV1Input = {
    txHash: string;
    from: string;
    to: string;
    /** Wei used in Merkle / on-chain leaf (native or effective token amount). */
    value: bigint | string | number;
    blockNumber: bigint | string | number;
    blockTimestamp: bigint | string | number;
    gasUsed: bigint | string | number;
    success: boolean;
};
export type PaymentLeafV2Input = PaymentLeafV1Input & {
    token: string;
    logIndex?: bigint | string | number;
};
/** Matches CheckpointLeaf.paymentLeafV1 */
export declare function paymentLeafV1Hash(chainId: number | bigint, leaf: PaymentLeafV1Input): string;
/** Matches CheckpointLeaf.paymentLeafV2 */
export declare function paymentLeafV2Hash(chainId: number | bigint, leaf: PaymentLeafV2Input): string;
/** Historical batches 1–50: verify with native/on-chain wei only. */
export declare function merkleVerifyValueWei(record: Record<string, unknown>): bigint;
export declare function effectiveTokenOrNativeWei(record: {
    value?: unknown;
    token?: unknown;
    tokenValue?: unknown;
}): bigint;
