/* eslint-disable import/no-cycle */
import { configureStore } from '@reduxjs/toolkit';

import applicationSlice from './application/applicationSlice';
import companiesSlice from './companies/companiesSlice';
import financialsSlice from './financials/financialsSlice';
import invitesSlice from './invites/invitesSlice';
import loginReducer from './login/loginSlice';
import paymentHistorySlice from './payment/paymentHistorySlice';

export const store = configureStore({
	reducer: {
		applicationGlobal: applicationSlice,
		login: loginReducer,
		companies: companiesSlice,
		financials: financialsSlice,
		payment: paymentHistorySlice,
		invites: invitesSlice
	}
});

export type RootState = ReturnType<typeof store.getState>;
export type AppDispatch = typeof store.dispatch;
