-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.ts
20 lines (16 loc) · 814 Bytes
/
index.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import { configureStore } from "@reduxjs/toolkit";
import { useDispatch, TypedUseSelectorHook, useSelector } from "react-redux";
import { itunesApi } from "@features/itunes/api/getTracks";
import middlewares from "./middlewares";
import { trackDetailsApi } from "@app/features/trackDetails/api/getTrackDetails";
export const store = configureStore({
reducer: {
[itunesApi.reducerPath]: itunesApi.reducer,
[trackDetailsApi.reducerPath]: trackDetailsApi.reducer,
},
middleware: getDefaultMiddleware => getDefaultMiddleware().concat(middlewares),
});
export type RootState = ReturnType<typeof store.getState>;
export type AppDispatch = typeof store.dispatch;
export const useAppDispatch = () => useDispatch<AppDispatch>();
export const useAppSelector: TypedUseSelectorHook<RootState> = useSelector;