import type { ReactNode } from "react";
import type { SessionUser } from "@/lib/api";
import { AppSidebar } from "@/components/AppSidebar";
interface AppShellProps {
user: SessionUser;
title: string;
description?: string;
children: ReactNode;
}
export function AppShell({ user, title, description, children }: AppShellProps) {
return (
{title}
{description && (
{description}
)}
{children}
);
}
interface SettingsSectionProps {
title: string;
description?: string;
action?: ReactNode;
children: ReactNode;
}
export function SettingsSection({ title, description, action, children }: SettingsSectionProps) {
return (
{title}
{description && (
{description}
)}
{action}
{children}
);
}
interface SettingsRowProps {
label: string;
description?: string;
control: ReactNode;
htmlFor?: string;
}
export function SettingsRow({ label, description, control, htmlFor }: SettingsRowProps) {
return (
{control}
);
}