<script lang="ts">
  // v0.2 Phase 4 alias wrapper around $lib/components/SettingsGroup.svelte.
  // Props mirror the underlying component so call sites get the same
  // type checking when they import from $lib/ui/.
  import SettingsGroup from "$lib/components/SettingsGroup.svelte";
  import type { Component, Snippet } from "svelte";

  interface Props {
    title: string;
    description?: string;
    open?: boolean;
    onopen?: () => void;
    icon?: Component<{ size?: number; class?: string; "aria-hidden"?: boolean | "true" | "false" }>;
    children?: Snippet;
  }
  let { title, description, open, onopen, icon, children }: Props = $props();
</script>

<SettingsGroup {title} {description} {open} {onopen} {icon}>
  {#if children}{@render children()}{/if}
</SettingsGroup>
