20 lines
719 B
TypeScript
20 lines
719 B
TypeScript
import { configureStore } from '@reduxjs/toolkit';
|
|
import { setupListeners } from '@reduxjs/toolkit/query/react';
|
|
import { baseAPI } from '@/shared/api/base-api';
|
|
|
|
import { rootReducer } from './root-reducer';
|
|
|
|
export const store = configureStore({
|
|
reducer: rootReducer,
|
|
middleware: (getDefaultMiddleware) =>
|
|
getDefaultMiddleware().concat(baseAPI.middleware),
|
|
devTools: process.env.NODE_ENV === 'development',
|
|
});
|
|
|
|
setupListeners(store.dispatch);
|
|
|
|
// Infer the `RootState` and `AppDispatch` types from the store itself
|
|
export type RootState = ReturnType<typeof store.getState>;
|
|
// Inferred type: {posts: PostsState, comments: CommentsState, users: UsersState}
|
|
export type AppDispatch = typeof store.dispatch;
|