'use client'; import { createContext, useContext, useCallback, ReactNode } from 'react'; interface NavBadgesContextType { refreshNavBadges: () => Promise; } const NavBadgesContext = createContext(null); export function useNavBadgesRefresh(): (() => Promise) | null { const ctx = useContext(NavBadgesContext); return ctx?.refreshNavBadges ?? null; } interface NavBadgesProviderProps { children: ReactNode; refreshNavBadges: () => Promise; } export function NavBadgesProvider({ children, refreshNavBadges }: NavBadgesProviderProps) { const value = { refreshNavBadges: useCallback(refreshNavBadges, [refreshNavBadges]) }; return ( {children} ); }