import { create } from 'zustand'; export interface User { id: string; plexId: string; plexUsername: string; email: string | null; isAdmin: boolean; walletAddress: string | null; totalEarned: number; totalSpent: number; } interface AppState { user: User | null; token: string | null; isAuthenticated: boolean; setUser: (user: User | null) => void; setToken: (token: string | null) => void; logout: () => void; } export const useStore = create()((set) => ({ user: null, token: null, isAuthenticated: false, setUser: (user) => set({ user, isAuthenticated: !!user }), setToken: (token) => set({ token }), logout: () => { set({ user: null, token: null, isAuthenticated: false }); }, }));