import { createSlice } from '@reduxjs/toolkit'; import type { PayloadAction } from '@reduxjs/toolkit'; import type { RootState } from '../../store'; import type { Guest } from '../../models'; type GuestAuth = { guest?: Guest; token?: string; }; const guestSlice = createSlice({ name: 'guest', initialState: { guest: undefined, token: undefined } as GuestAuth, reducers: { setGuest: ( state, { payload: { guest, token } }: PayloadAction ) => { state.guest = guest; state.token = token; }, }, }); export const { setGuest } = guestSlice.actions; export default guestSlice.reducer; export const selectGuest = (state: RootState) => state.guest.guest;