import appReducers from "@/models/appSlice"; import grlStatsReducers from "@/models/grlStatsSlice"; import grlEventsReducers from "@/models/grlEventsSlice"; import profilingQuestionsReducers from "@/models/profilingQuestionsSlice"; import type { Action, ThunkAction } from "@reduxjs/toolkit"; import { configureStore } from "@reduxjs/toolkit"; export const store = configureStore({ reducer: { app: appReducers, stats: grlStatsReducers, events: grlEventsReducers, profilingQuestions: profilingQuestionsReducers, }, }); // Infer the type of `store` export type AppStore = typeof store; // Infer the `AppDispatch` type from the store itself export type AppDispatch = typeof store.dispatch; // Same for the `RootState` type export type RootState = ReturnType; // Define a reusable type describing thunk functions export type AppThunk = ThunkAction< ThunkReturnType, RootState, unknown, Action >;