'use client'; import { createContext, useContext, useEffect, useState } from 'react'; import { User, onAuthStateChanged } from 'firebase/auth'; import { auth } from '@/lib/firebase'; interface AuthContextType { user: User | null; loading: boolean; } const AuthContext = createContext({ user: null, loading: true, }); export function AuthProvider({ children }: { children: React.ReactNode }) { const [user, setUser] = useState(null); const [loading, setLoading] = useState(true); useEffect(() => { const unsubscribe = onAuthStateChanged(auth, (user) => { setUser(user); setLoading(false); }); return () => unsubscribe(); }, []); return ( {children} ); } export function useAuth() { return useContext(AuthContext); }