import { ReactNode, useEffect } from 'react'; import { useRouter } from 'next/router'; import { useAuth } from '../hooks/useAuth'; import Sidebar from './Sidebar'; interface LayoutProps { children: ReactNode; requireAuth?: boolean; requireAdmin?: boolean; } export default function Layout({ children, requireAuth = true, requireAdmin = false }: LayoutProps) { const { user, loading, isAdmin } = useAuth(); const router = useRouter(); useEffect(() => { if (!loading) { if (requireAuth && !user) { router.push('/login'); } if (requireAdmin && !isAdmin) { router.push('/dashboard'); } } }, [user, loading, requireAuth, requireAdmin, isAdmin, router]); if (loading) { return (