import type { CheckboxSize, CheckboxVariant } from './types'; import type { Snippet } from 'svelte'; type Props = { /** `true` (on), `false` (off), or `'indeterminate'` (mixed). */ checked: boolean | 'indeterminate'; /** Color variant — `'on-accent'` keeps a light box (ring + mark colored) for use over media / colored surfaces. @default 'default' */ variant?: CheckboxVariant; /** @default 'md' */ size?: CheckboxSize; disabled?: boolean; /** Label: plain text or a snippet for rich content (e.g. ``, ``). */ label?: string | Snippet; title?: string; on?: { change?: (value: boolean) => void; }; }; /** * Tri-state checkbox (off / on / mixed). Pass `checked={'indeterminate'}` to render the mixed * indicator (e.g. for a parent of partially-checked children); clicking advances to checked. * * Two variants: `default` fills the box with the accent color when checked; `on-accent` keeps a * light box and colors the ring + mark instead, for placement over media or colored surfaces. * Sizes `md` (16px box) and `lg` (20px box) scale the box and mark together. * * Clicking the label area also toggles the box. The component always stops click propagation * so it can be safely nested inside clickable rows. * * ### CSS Custom Properties * | Property | Description | Default | * |---|---|---| * | `--sc-kit--checkbox--size` | Box width and height | per size — `md` 16px, `lg` 20px | * | `--sc-kit--checkbox--border-radius` | Box corner rounding | `var(--sc-kit--radius--sm)` | * | `--sc-kit--checkbox--focus-ring-color` | Focus outline color | `var(--sc-kit--color--border--focus)` | * | `--sc-kit--checkbox--gap` | Gap between box and label | `var(--sc-kit--space--2)` | * | `--sc-kit--checkbox--label--font-size` | Label font size | `var(--sc-kit--font-size--md)` | * | `--sc-kit--checkbox--label--line-height` | Label line height | `var(--sc-kit--line-height--md)` | * | `--sc-kit--checkbox--label--color` | Label color | `var(--sc-kit--color--text--primary)` | */ declare const Cmp: import("svelte").Component; type Cmp = ReturnType; export default Cmp;