import type { LucideIcon } from "lucide-react"; import type { ReactNode } from "react"; interface AdminPageShellProps { icon?: LucideIcon; title: string; subtitle?: string; actions?: ReactNode; tabs?: ReactNode; children: ReactNode; className?: string; } /** Shared admin page chrome: icon title, optional actions/tabs, then body. */ export function AdminPageShell({ icon: Icon, title, subtitle, actions, tabs, children, className = "", }: AdminPageShellProps) { return (
{Icon ? (
) : null}

{title}

{subtitle ? (

{subtitle}

) : null}
{actions ? (
{actions}
) : null}
{tabs}
{children}
); }