import { create } from 'zustand'; interface User { id: string; email: string; name: string; avatarUrl?: string; role: 'admin' | 'editor' | 'viewer'; } interface AuthState { user: User | null; isAuthenticated: boolean; isLoading: boolean; setUser: (user: User | null) => void; setLoading: (loading: boolean) => void; logout: () => void; } export const useAuthStore = create((set) => ({ user: null, isAuthenticated: false, isLoading: true, setUser: (user) => set({ user, isAuthenticated: !!user, isLoading: false }), setLoading: (isLoading) => set({ isLoading }), logout: () => set({ user: null, isAuthenticated: false, isLoading: false }), }));