import { create } from 'zustand'; import type { CalendarTask } from '@/lib/jmap/types'; export type TaskViewFilter = 'all' | 'pending' | 'completed' | 'overdue'; interface TaskStore { tasks: CalendarTask[]; selectedTaskId: string | null; filter: TaskViewFilter; showCompleted: boolean; setTasks: (tasks: CalendarTask[]) => void; setSelectedTaskId: (id: string | null) => void; setFilter: (filter: TaskViewFilter) => void; setShowCompleted: (show: boolean) => void; } export const useTaskStore = create((set) => ({ tasks: [], selectedTaskId: null, filter: 'all', showCompleted: false, setTasks: (tasks) => set({ tasks }), setSelectedTaskId: (id) => set({ selectedTaskId: id }), setFilter: (filter) => set({ filter }), setShowCompleted: (show) => set({ showCompleted: show }), }));