import { useState } from 'react'; import { TaskStatus } from '@/lib/types'; export function useColumnVisibility(initialHidden: TaskStatus[] = []) { const [hiddenStatuses, setHiddenStatuses] = useState>( new Set(initialHidden) ); const toggleStatusVisibility = (status: TaskStatus) => { setHiddenStatuses(prev => { const newSet = new Set(prev); if (newSet.has(status)) { newSet.delete(status); } else { newSet.add(status); } return newSet; }); }; const getVisibleStatuses = (statuses: T[]): T[] => { return statuses.filter(status => !hiddenStatuses.has(status.id)); }; const isStatusVisible = (status: TaskStatus): boolean => { return !hiddenStatuses.has(status); }; return { hiddenStatuses, toggleStatusVisibility, getVisibleStatuses, isStatusVisible }; }