import { TypedUseSelectorHook, useDispatch, useSelector } from "react-redux"; import type { RootState, AppDispatch } from "./store"; // Use throughout your app instead of plain `useDispatch` and `useSelector` export const useAppDispatch = () => useDispatch(); export const useAppSelector: TypedUseSelectorHook = useSelector; export const dispatchStatus = (action: string, status: ".success" | ".failure", payload: any) => (dispatch: any) => dispatch({ type: action + status, payload: payload });