import { configureStore } from '@reduxjs/toolkit'; import styleReducer from './styleSlice'; import mainReducer from './mainSlice'; import authSlice from './authSlice'; import openAiSlice from './openAiSlice'; import usersSlice from './users/usersSlice'; import admissionsSlice from './admissions/admissionsSlice'; import attendanceSlice from './attendance/attendanceSlice'; import coursesSlice from './courses/coursesSlice'; import departmentsSlice from './departments/departmentsSlice'; import eventsSlice from './events/eventsSlice'; import examsSlice from './exams/examsSlice'; import facultySlice from './faculty/facultySlice'; import feesSlice from './fees/feesSlice'; import gradesSlice from './grades/gradesSlice'; import librarySlice from './library/librarySlice'; import studentsSlice from './students/studentsSlice'; import rolesSlice from './roles/rolesSlice'; import permissionsSlice from './permissions/permissionsSlice'; import paymentSlice from './payment/paymentSlice'; export const store = configureStore({ reducer: { style: styleReducer, main: mainReducer, auth: authSlice, openAi: openAiSlice, users: usersSlice, admissions: admissionsSlice, attendance: attendanceSlice, courses: coursesSlice, departments: departmentsSlice, events: eventsSlice, exams: examsSlice, faculty: facultySlice, fees: feesSlice, grades: gradesSlice, library: librarySlice, students: studentsSlice, roles: rolesSlice, permissions: permissionsSlice, payment: paymentSlice, }, }); // Infer the `RootState` and `AppDispatch` types from the store itself export type RootState = ReturnType; // Inferred type: {posts: PostsState, comments: CommentsState, users: UsersState} export type AppDispatch = typeof store.dispatch;