import { createSlice, PayloadAction } from '@reduxjs/toolkit' export interface UserInfoVO { userId: string username: string userType: string language: string brandId: string } interface AuthState { accessToken: string | null refreshToken: string | null userInfo: UserInfoVO | null } const initialState: AuthState = { accessToken: null, refreshToken: null, userInfo: null } const authSlice = createSlice({ name: 'auth', initialState, reducers: { setCredentials(state, action: PayloadAction<{ accessToken: string; refreshToken: string; userInfo: UserInfoVO }>) { state.accessToken = action.payload.accessToken state.refreshToken = action.payload.refreshToken state.userInfo = action.payload.userInfo }, clearCredentials(state) { state.accessToken = null state.refreshToken = null state.userInfo = null } } }) export const { setCredentials, clearCredentials } = authSlice.actions export default authSlice.reducer