import { configureStore } from '@reduxjs/toolkit' import { useDispatch, useSelector, type TypedUseSelectorHook } from 'react-redux' import artistsReducer from './slices/artistsSlice' import albumsReducer from './slices/albumsSlice' import albumTracksReducer from './slices/albumTracksSlice' import artistTracksReducer from './slices/artistTracksSlice' import trackDetailReducer from './slices/trackDetailSlice' export const store = configureStore({ reducer: { artists: artistsReducer, albums: albumsReducer, albumTracks: albumTracksReducer, artistTracks: artistTracksReducer, trackDetail: trackDetailReducer, }, }) export type RootState = ReturnType export type AppDispatch = typeof store.dispatch export const useAppDispatch = useDispatch.withTypes() export const useAppSelector: TypedUseSelectorHook = useSelector