import React, { createContext, FC, useContext } from 'react' interface Context { item: any loading: boolean onQuantityChange: (value: number) => void onRemove: () => void } interface ItemContextProviderProps { value: Context } const ItemContext = createContext(undefined) export const ItemContextProvider: FC = ({ value, children, }) => {children} export const useItemContext = () => { const context = useContext(ItemContext) if (context === undefined) { throw new Error('useItemContext must be used within a ItemContextProvider') } return context }