import React, { createContext, useContext, useMemo, useState } from "react"; interface DateRangePickerContextProps { isCustomRange: boolean; setIsCustomRange: React.Dispatch> | undefined; } interface DateRangePickerProviderProps { children: React.ReactNode; } const DateRangePickerContext = createContext({ isCustomRange: false, setIsCustomRange: undefined, }); export const useDateRangePicker = () => { return useContext(DateRangePickerContext); }; export const DateRangePickerProvider: React.FC< DateRangePickerProviderProps > = ({ children }) => { const [isCustomRange, setIsCustomRange] = useState(false); const dateRangePickerContextValue = useMemo( () => ({ isCustomRange, setIsCustomRange }), [isCustomRange, setIsCustomRange] ); return ( {children} ); };