import { createSlice } from "@reduxjs/toolkit";
interface AuthState {
  isLoggedIn: boolean;
  isHydrating: boolean;
}
export interface User {
  id: string;
  name: string;
  email: string;
}

const initialState: AuthState = {
  isLoggedIn: false,
  isHydrating: true,
};

const authSLice = createSlice({
  name: "auth",
  initialState,
  reducers: {
    login: (state) => {
      state.isLoggedIn = true;
      state.isHydrating = false;
    },
    logout: (state) => {
      state.isLoggedIn = false;
      state.isHydrating = false;
    },
    setHydrating: (state, action) => {
      state.isHydrating = action.payload;
    },
  },
});

export const { login, logout, setHydrating } = authSLice.actions;
export default authSLice.reducer;
