import React, { type ReactNode } from 'react';
import type { StateSnapshot } from 'react-virtuoso';
import type { Hex } from 'viem';
import type { HistoryContentPages } from '../../utils/checkoutHistory';
import type { SelectedHomeTab } from './FunProfileViews/Home';
import type { FunProfileView } from './ProfileDetails';
export interface ReturnViewPresets {
    selectedView?: SelectedHomeTab;
    scrollState?: StateSnapshot;
}
export interface BaseActivitySelection {
    checkoutId: Hex;
    initialPage: HistoryContentPages;
    returnViewPresets: ReturnViewPresets;
}
export interface ActivitySelection extends BaseActivitySelection {
    onRedirect: () => void;
    returnView: FunProfileView;
}
export declare const ActivityTraversalContext: React.Context<{
    selectedPurchaseId: `0x${string}` | undefined;
    selectedPurchaseInitView: HistoryContentPages | undefined;
    returnView: FunProfileView | undefined;
    returnViewPresets: ReturnViewPresets;
    onSelectActivity: ({ checkoutId, initialPage, returnView, returnViewPresets, onRedirect, }: ActivitySelection) => void;
    resetActivityTraversal: () => void;
}>;
export declare const ActivityTraversalProvider: ({ children, }: {
    children: ReactNode;
}) => React.JSX.Element;
export declare const useActivityTraversal: () => {
    selectedPurchaseId: `0x${string}` | undefined;
    selectedPurchaseInitView: HistoryContentPages | undefined;
    returnView: FunProfileView | undefined;
    returnViewPresets: ReturnViewPresets;
    onSelectActivity: ({ checkoutId, initialPage, returnView, returnViewPresets, onRedirect, }: ActivitySelection) => void;
    resetActivityTraversal: () => void;
};
