@assure-one/design-system 0.1.1 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1,185 +1,222 @@
1
1
  export { ColorName, ReferenceTokens, SystemTokens, colors, radii, reference, shadows, spacing, surfaces, systemTokens, typography } from './tokens/index.js';
2
+ import * as React$1 from 'react';
3
+ import { ReactNode } from 'react';
4
+ import * as AccordionPrimitive from '@radix-ui/react-accordion';
2
5
  import * as react_jsx_runtime from 'react/jsx-runtime';
3
- import * as react from 'react';
6
+ import * as AlertDialogPrimitive from '@radix-ui/react-alert-dialog';
7
+ import * as class_variance_authority_types from 'class-variance-authority/types';
8
+ import { VariantProps } from 'class-variance-authority';
9
+ import * as AspectRatioPrimitive from '@radix-ui/react-aspect-ratio';
10
+ import * as AvatarPrimitive from '@radix-ui/react-avatar';
11
+ import { DayPickerProps } from 'react-day-picker';
12
+ import * as CheckboxPrimitive from '@radix-ui/react-checkbox';
13
+ import * as CollapsiblePrimitive from '@radix-ui/react-collapsible';
14
+ import * as ContextMenuPrimitive from '@radix-ui/react-context-menu';
15
+ import * as DialogPrimitive from '@radix-ui/react-dialog';
16
+ import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
17
+ import * as HoverCardPrimitive from '@radix-ui/react-hover-card';
18
+ import * as LabelPrimitive from '@radix-ui/react-label';
19
+ import * as PopoverPrimitive from '@radix-ui/react-popover';
20
+ import * as ProgressPrimitive from '@radix-ui/react-progress';
21
+ import * as RadioGroupPrimitive from '@radix-ui/react-radio-group';
22
+ import * as ScrollAreaPrimitive from '@radix-ui/react-scroll-area';
23
+ import * as SelectPrimitive from '@radix-ui/react-select';
24
+ import * as SeparatorPrimitive from '@radix-ui/react-separator';
25
+ import * as SliderPrimitive from '@radix-ui/react-slider';
26
+ import * as SwitchPrimitive from '@radix-ui/react-switch';
27
+ import * as TabsPrimitive from '@radix-ui/react-tabs';
28
+ import * as ToggleGroupPrimitive from '@radix-ui/react-toggle-group';
29
+ import * as TooltipPrimitive from '@radix-ui/react-tooltip';
30
+ import * as VisuallyHiddenPrimitive from '@radix-ui/react-visually-hidden';
4
31
  import { ClassValue } from 'clsx';
5
32
 
6
- interface AccordionProps extends React.HTMLAttributes<HTMLDivElement> {
7
- type?: "single" | "multiple";
8
- defaultValue?: string[];
9
- value?: string[];
10
- onValueChange?: (value: string[]) => void;
11
- }
12
- declare function Accordion({ type, defaultValue, value: controlledValue, onValueChange, children, className, ...props }: AccordionProps): react_jsx_runtime.JSX.Element;
13
- interface AccordionItemProps extends React.HTMLAttributes<HTMLDivElement> {
14
- value: string;
15
- }
16
- declare function AccordionItem({ value, children, className, ...props }: AccordionItemProps): react_jsx_runtime.JSX.Element;
17
- type AccordionTriggerProps = React.ButtonHTMLAttributes<HTMLButtonElement>;
18
- declare function AccordionTrigger({ children, className, ...props }: AccordionTriggerProps): react_jsx_runtime.JSX.Element;
19
- type AccordionContentProps = React.HTMLAttributes<HTMLDivElement>;
20
- declare function AccordionContent({ children, className, ...props }: AccordionContentProps): react_jsx_runtime.JSX.Element;
21
-
22
- interface AlertDialogProps {
23
- children: React.ReactNode;
24
- open?: boolean;
25
- onOpenChange?: (open: boolean) => void;
26
- }
27
- declare function AlertDialog({ children, open: controlledOpen, onOpenChange, }: AlertDialogProps): react_jsx_runtime.JSX.Element;
28
- type AlertDialogTriggerProps = React.ButtonHTMLAttributes<HTMLButtonElement>;
29
- declare function AlertDialogTrigger({ children, className, ...props }: AlertDialogTriggerProps): react_jsx_runtime.JSX.Element;
30
- type AlertDialogContentProps = React.HTMLAttributes<HTMLDivElement>;
31
- declare function AlertDialogContent({ children, className, ...props }: AlertDialogContentProps): react.ReactPortal | null;
32
- type AlertDialogHeaderProps = React.HTMLAttributes<HTMLDivElement>;
33
- declare function AlertDialogHeader({ className, ...props }: AlertDialogHeaderProps): react_jsx_runtime.JSX.Element;
34
- type AlertDialogTitleProps = React.HTMLAttributes<HTMLHeadingElement>;
35
- declare function AlertDialogTitle({ className, ...props }: AlertDialogTitleProps): react_jsx_runtime.JSX.Element;
36
- type AlertDialogDescriptionProps = React.HTMLAttributes<HTMLParagraphElement>;
37
- declare function AlertDialogDescription({ className, ...props }: AlertDialogDescriptionProps): react_jsx_runtime.JSX.Element;
38
- type AlertDialogFooterProps = React.HTMLAttributes<HTMLDivElement>;
39
- declare function AlertDialogFooter({ className, ...props }: AlertDialogFooterProps): react_jsx_runtime.JSX.Element;
40
- type AlertDialogActionProps = React.ButtonHTMLAttributes<HTMLButtonElement>;
41
- declare function AlertDialogAction({ children, className, ...props }: AlertDialogActionProps): react_jsx_runtime.JSX.Element;
42
- type AlertDialogCancelProps = React.ButtonHTMLAttributes<HTMLButtonElement>;
43
- declare function AlertDialogCancel({ children, className, ...props }: AlertDialogCancelProps): react_jsx_runtime.JSX.Element;
44
-
45
- declare const variantStyles$4: {
46
- readonly info: "border-blue-200 bg-blue-50 text-blue-link [&_svg]:text-blue-link";
47
- readonly success: "border-green-light-border bg-green-lighter-bg text-green-action [&_svg]:text-green-action";
48
- readonly warning: "border-yellow-200 bg-amber-50 text-amber-dark [&_svg]:text-amber-dark";
49
- readonly destructive: "border-red-200 bg-red-50 text-red-action [&_svg]:text-red-action";
33
+ type AccordionProps = React$1.ComponentPropsWithoutRef<typeof AccordionPrimitive.Root>;
34
+ declare const Accordion: React$1.ForwardRefExoticComponent<AccordionProps & React$1.RefAttributes<HTMLDivElement>>;
35
+ declare const AccordionItem: React$1.ForwardRefExoticComponent<Omit<AccordionPrimitive.AccordionItemProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
36
+ declare const AccordionTrigger: React$1.ForwardRefExoticComponent<Omit<AccordionPrimitive.AccordionTriggerProps & React$1.RefAttributes<HTMLButtonElement>, "ref"> & React$1.RefAttributes<HTMLButtonElement>>;
37
+ declare const AccordionContent: React$1.ForwardRefExoticComponent<Omit<AccordionPrimitive.AccordionContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
38
+
39
+ declare const AlertDialog: React$1.FC<AlertDialogPrimitive.AlertDialogProps>;
40
+ declare const AlertDialogTrigger: React$1.ForwardRefExoticComponent<AlertDialogPrimitive.AlertDialogTriggerProps & React$1.RefAttributes<HTMLButtonElement>>;
41
+ declare const AlertDialogPortal: React$1.FC<AlertDialogPrimitive.AlertDialogPortalProps>;
42
+ declare const AlertDialogOverlay: React$1.ForwardRefExoticComponent<Omit<AlertDialogPrimitive.AlertDialogOverlayProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
43
+ declare const AlertDialogContent: React$1.ForwardRefExoticComponent<Omit<AlertDialogPrimitive.AlertDialogContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
44
+ declare const AlertDialogHeader: {
45
+ ({ className, ...props }: React$1.HTMLAttributes<HTMLDivElement>): react_jsx_runtime.JSX.Element;
46
+ displayName: string;
47
+ };
48
+ declare const AlertDialogFooter: {
49
+ ({ className, ...props }: React$1.HTMLAttributes<HTMLDivElement>): react_jsx_runtime.JSX.Element;
50
+ displayName: string;
50
51
  };
51
- interface AlertProps extends React.HTMLAttributes<HTMLDivElement> {
52
- variant?: keyof typeof variantStyles$4;
52
+ declare const AlertDialogTitle: React$1.ForwardRefExoticComponent<Omit<AlertDialogPrimitive.AlertDialogTitleProps & React$1.RefAttributes<HTMLHeadingElement>, "ref"> & React$1.RefAttributes<HTMLHeadingElement>>;
53
+ declare const AlertDialogDescription: React$1.ForwardRefExoticComponent<Omit<AlertDialogPrimitive.AlertDialogDescriptionProps & React$1.RefAttributes<HTMLParagraphElement>, "ref"> & React$1.RefAttributes<HTMLParagraphElement>>;
54
+ declare const AlertDialogAction: React$1.ForwardRefExoticComponent<Omit<AlertDialogPrimitive.AlertDialogActionProps & React$1.RefAttributes<HTMLButtonElement>, "ref"> & React$1.RefAttributes<HTMLButtonElement>>;
55
+ declare const AlertDialogCancel: React$1.ForwardRefExoticComponent<Omit<AlertDialogPrimitive.AlertDialogCancelProps & React$1.RefAttributes<HTMLButtonElement>, "ref"> & React$1.RefAttributes<HTMLButtonElement>>;
56
+
57
+ /**
58
+ * Alert — inline banner. Variants align with the three Assure status families
59
+ * (success, warning, danger) plus a cyan-accent `info` (per spec §3 — three
60
+ * statuses, not five).
61
+ */
62
+ declare const alertVariants: (props?: ({
63
+ variant?: "info" | "success" | "warning" | "destructive" | null | undefined;
64
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
65
+ interface AlertProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof alertVariants> {
53
66
  }
54
- declare function Alert({ variant, children, className, ...props }: AlertProps): react_jsx_runtime.JSX.Element;
55
- type AlertTitleProps = React.HTMLAttributes<HTMLHeadingElement>;
56
- declare function AlertTitle({ className, ...props }: AlertTitleProps): react_jsx_runtime.JSX.Element;
57
- type AlertDescriptionProps = React.HTMLAttributes<HTMLParagraphElement>;
58
- declare function AlertDescription({ className, ...props }: AlertDescriptionProps): react_jsx_runtime.JSX.Element;
67
+ declare const Alert: React$1.ForwardRefExoticComponent<AlertProps & React$1.RefAttributes<HTMLDivElement>>;
68
+ declare const AlertTitle: React$1.ForwardRefExoticComponent<React$1.HTMLAttributes<HTMLHeadingElement> & React$1.RefAttributes<HTMLHeadingElement>>;
69
+ declare const AlertDescription: React$1.ForwardRefExoticComponent<React$1.HTMLAttributes<HTMLParagraphElement> & React$1.RefAttributes<HTMLParagraphElement>>;
59
70
 
60
- interface AspectRatioProps extends React.HTMLAttributes<HTMLDivElement> {
71
+ interface AspectRatioProps extends React$1.ComponentPropsWithoutRef<typeof AspectRatioPrimitive.Root> {
61
72
  ratio?: number;
62
- children: React.ReactNode;
73
+ children: React$1.ReactNode;
63
74
  }
64
- declare function AspectRatio({ ratio, children, className, ...props }: AspectRatioProps): react_jsx_runtime.JSX.Element;
75
+ declare const AspectRatio: React$1.ForwardRefExoticComponent<AspectRatioProps & React$1.RefAttributes<HTMLDivElement>>;
65
76
 
66
- declare const sizeStyles$5: {
67
- readonly xs: "size-5 text-[10px]";
68
- readonly sm: "size-8 text-xs";
69
- readonly md: "size-10 text-sm";
70
- readonly lg: "size-14 text-base";
71
- };
77
+ declare const avatarVariants: (props?: ({
78
+ size?: "xs" | "sm" | "md" | "lg" | "xl" | null | undefined;
79
+ variant?: "initials" | "branded" | null | undefined;
80
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
72
81
  declare const statusStyles: {
73
- readonly online: "bg-success";
74
- readonly offline: "bg-app-gray-400";
75
- readonly busy: "bg-destructive";
82
+ readonly online: "bg-success-fg";
83
+ readonly away: "bg-warning-fg";
84
+ readonly busy: "bg-danger-fg";
85
+ readonly offline: "bg-fg-4";
76
86
  };
77
- interface AvatarProps extends React.HTMLAttributes<HTMLDivElement> {
87
+ interface AvatarProps extends Omit<React$1.ComponentPropsWithoutRef<typeof AvatarPrimitive.Root>, "children">, VariantProps<typeof avatarVariants> {
78
88
  src?: string | null;
79
89
  alt?: string;
80
90
  name?: string;
81
- size?: keyof typeof sizeStyles$5;
82
91
  status?: keyof typeof statusStyles;
83
92
  }
84
- declare function Avatar({ src, alt, name, size, status, className, ...props }: AvatarProps): react_jsx_runtime.JSX.Element;
93
+ declare const Avatar: React$1.ForwardRefExoticComponent<AvatarProps & React$1.RefAttributes<HTMLSpanElement>>;
85
94
 
86
- declare const variantStyles$3: {
87
- readonly default: "bg-primary text-primary-foreground";
88
- readonly secondary: "bg-secondary text-secondary-foreground";
89
- readonly destructive: "bg-destructive/10 text-destructive";
90
- readonly success: "bg-green-badge-bg text-green-action";
91
- readonly warning: "bg-amber-50 text-amber-dark";
92
- readonly info: "bg-blue-50 text-blue-link";
93
- readonly outline: "border border-border bg-transparent text-foreground";
94
- };
95
- declare const sizeStyles$4: {
96
- readonly sm: "px-2 py-0.5 text-xs";
97
- readonly md: "px-2.5 py-0.5 text-sm";
98
- };
99
- interface BadgeProps extends React.HTMLAttributes<HTMLSpanElement> {
100
- variant?: keyof typeof variantStyles$3;
101
- size?: keyof typeof sizeStyles$4;
95
+ /**
96
+ * Badge — status atom. Variants port the `.pill` family in `_shared.css`
97
+ * (lines 257-289). Default variant is the neutral pill.
98
+ */
99
+ declare const badgeVariants: (props?: ({
100
+ variant?: "info" | "success" | "warning" | "destructive" | "default" | "secondary" | "outline" | null | undefined;
101
+ size?: "sm" | "md" | null | undefined;
102
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
103
+ interface BadgeProps extends React.HTMLAttributes<HTMLSpanElement>, VariantProps<typeof badgeVariants> {
102
104
  dot?: boolean;
103
105
  icon?: React.ReactNode;
104
106
  }
105
- declare function Badge({ variant, size, dot, icon, children, className, ...props }: BadgeProps): react_jsx_runtime.JSX.Element;
107
+ declare const Badge: React$1.ForwardRefExoticComponent<BadgeProps & React$1.RefAttributes<HTMLSpanElement>>;
106
108
 
109
+ /**
110
+ * Blockquote — semantic quote with optional attribution. Uses `font-display`
111
+ * (Geist) at a comfortable reading scale; smart quotes are wrapped automatically.
112
+ */
107
113
  interface BlockquoteProps extends React.BlockquoteHTMLAttributes<HTMLQuoteElement> {
108
114
  author?: string;
109
115
  role?: string;
110
116
  }
111
- declare function Blockquote({ children, author, role: authorRole, className, ...props }: BlockquoteProps): react_jsx_runtime.JSX.Element;
117
+ declare const Blockquote: React$1.ForwardRefExoticComponent<BlockquoteProps & React$1.RefAttributes<HTMLQuoteElement>>;
112
118
 
119
+ /**
120
+ * Breadcrumb — semantic navigation primitive. Uses the catalog `ChevronRightIcon` as the
121
+ * default separator. Current page (BreadcrumbPage) leans on Pro purple to
122
+ * mirror the active-state language used elsewhere in the firm app.
123
+ *
124
+ * Public API preserved: Breadcrumb / BreadcrumbList / BreadcrumbItem /
125
+ * BreadcrumbLink / BreadcrumbPage / BreadcrumbSeparator.
126
+ */
113
127
  type BreadcrumbProps = React.HTMLAttributes<HTMLElement>;
114
- declare function Breadcrumb({ className, ...props }: BreadcrumbProps): react_jsx_runtime.JSX.Element;
128
+ declare const Breadcrumb: React$1.ForwardRefExoticComponent<BreadcrumbProps & React$1.RefAttributes<HTMLElement>>;
115
129
  type BreadcrumbListProps = React.HTMLAttributes<HTMLOListElement>;
116
- declare function BreadcrumbList({ className, ...props }: BreadcrumbListProps): react_jsx_runtime.JSX.Element;
130
+ declare const BreadcrumbList: React$1.ForwardRefExoticComponent<BreadcrumbListProps & React$1.RefAttributes<HTMLOListElement>>;
117
131
  type BreadcrumbItemProps = React.HTMLAttributes<HTMLLIElement>;
118
- declare function BreadcrumbItem({ className, ...props }: BreadcrumbItemProps): react_jsx_runtime.JSX.Element;
132
+ declare const BreadcrumbItem: React$1.ForwardRefExoticComponent<BreadcrumbItemProps & React$1.RefAttributes<HTMLLIElement>>;
119
133
  type BreadcrumbLinkProps = React.AnchorHTMLAttributes<HTMLAnchorElement>;
120
- declare function BreadcrumbLink({ className, ...props }: BreadcrumbLinkProps): react_jsx_runtime.JSX.Element;
134
+ declare const BreadcrumbLink: React$1.ForwardRefExoticComponent<BreadcrumbLinkProps & React$1.RefAttributes<HTMLAnchorElement>>;
121
135
  type BreadcrumbPageProps = React.HTMLAttributes<HTMLSpanElement>;
122
- declare function BreadcrumbPage({ className, ...props }: BreadcrumbPageProps): react_jsx_runtime.JSX.Element;
136
+ declare const BreadcrumbPage: React$1.ForwardRefExoticComponent<BreadcrumbPageProps & React$1.RefAttributes<HTMLSpanElement>>;
123
137
  type BreadcrumbSeparatorProps = React.HTMLAttributes<HTMLSpanElement>;
124
- declare function BreadcrumbSeparator({ children, className, ...props }: BreadcrumbSeparatorProps): react_jsx_runtime.JSX.Element;
125
-
126
- declare const variantStyles$2: {
127
- readonly primary: "bg-primary text-primary-foreground hover:bg-primary/90";
128
- readonly secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/80";
129
- readonly destructive: "bg-destructive text-destructive-foreground hover:bg-destructive/90";
130
- readonly success: "bg-green-action text-success-foreground hover:bg-green-dark";
131
- readonly ghost: "hover:bg-accent hover:text-accent-foreground";
132
- readonly outline: "border border-input bg-background hover:bg-accent hover:text-accent-foreground";
133
- readonly link: "text-primary underline-offset-4 hover:underline";
134
- };
135
- declare const sizeStyles$3: {
136
- readonly sm: "h-8 px-3 text-sm gap-1.5";
137
- readonly md: "h-10 px-4 text-sm gap-2";
138
- readonly lg: "h-12 px-6 text-base gap-2";
139
- readonly icon: "size-10";
140
- };
141
- interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
142
- variant?: keyof typeof variantStyles$2;
143
- size?: keyof typeof sizeStyles$3;
138
+ declare const BreadcrumbSeparator: React$1.ForwardRefExoticComponent<BreadcrumbSeparatorProps & React$1.RefAttributes<HTMLSpanElement>>;
139
+
140
+ /**
141
+ * Button Assure Pro action atom.
142
+ *
143
+ * Variants port the `.btn-*` rules in `_shared.css` (lines 164-203):
144
+ * - primary bg-pro-fg (Pro purple, the firm app's brand identity)
145
+ * - secondary → ghost surface bg-bg-2
146
+ * - destructive bg-danger-fg
147
+ * - success → bg-success-fg
148
+ * - ghost → transparent, hover:bg-bg-2
149
+ * - outline → bordered surface (matches `.btn-ghost` from spec)
150
+ * - link → text-accent (cyan) with underline-on-hover
151
+ * - accent → bg-accent (cyan CTA per spec §6.2)
152
+ *
153
+ * Sizes match shadcn convention; default `md` matches spec's 8px/14px padding.
154
+ * Use `asChild` to render as a different element (e.g. an anchor / next/link).
155
+ */
156
+ declare const buttonVariants: (props?: ({
157
+ variant?: "link" | "success" | "destructive" | "secondary" | "outline" | "primary" | "ghost" | "accent" | null | undefined;
158
+ size?: "sm" | "md" | "lg" | "icon" | null | undefined;
159
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
160
+ interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof buttonVariants> {
161
+ /** Render as the child element via Radix `Slot` (shadcn pattern). */
162
+ asChild?: boolean;
144
163
  loading?: boolean;
145
164
  iconLeft?: React.ReactNode;
146
165
  iconRight?: React.ReactNode;
147
166
  }
148
- declare const Button: react.ForwardRefExoticComponent<ButtonProps & react.RefAttributes<HTMLButtonElement>>;
167
+ declare const Button: React$1.ForwardRefExoticComponent<ButtonProps & React$1.RefAttributes<HTMLButtonElement>>;
149
168
 
169
+ type CalendarHighlightColor = "primary" | "success" | "warning" | "destructive";
150
170
  interface CalendarHighlight {
151
171
  date: Date;
152
- color?: "primary" | "success" | "warning" | "destructive";
172
+ color?: CalendarHighlightColor;
153
173
  }
154
- interface CalendarProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "onSelect"> {
174
+ interface CalendarProps extends Omit<DayPickerProps, "mode" | "selected" | "onSelect" | "modifiers" | "modifiersClassNames"> {
155
175
  selected?: Date | null;
156
176
  onSelect?: (date: Date) => void;
157
177
  highlights?: CalendarHighlight[];
158
178
  minDate?: Date;
159
179
  maxDate?: Date;
180
+ className?: string;
181
+ }
182
+ declare function Calendar({ selected, onSelect, highlights, minDate, maxDate, className, classNames, ...props }: CalendarProps): react_jsx_runtime.JSX.Element;
183
+ declare namespace Calendar {
184
+ var displayName: string;
160
185
  }
161
- declare function Calendar({ selected, onSelect, highlights, minDate, maxDate, className, ...props }: CalendarProps): react_jsx_runtime.JSX.Element;
162
-
163
- type CardProps = React.HTMLAttributes<HTMLDivElement>;
164
- declare function Card({ className, ...props }: CardProps): react_jsx_runtime.JSX.Element;
165
- type CardHeaderProps = React.HTMLAttributes<HTMLDivElement>;
166
- declare function CardHeader({ className, ...props }: CardHeaderProps): react_jsx_runtime.JSX.Element;
167
- type CardTitleProps = React.HTMLAttributes<HTMLHeadingElement>;
168
- declare function CardTitle({ className, ...props }: CardTitleProps): react_jsx_runtime.JSX.Element;
169
- type CardDescriptionProps = React.HTMLAttributes<HTMLParagraphElement>;
170
- declare function CardDescription({ className, ...props }: CardDescriptionProps): react_jsx_runtime.JSX.Element;
171
- type CardContentProps = React.HTMLAttributes<HTMLDivElement>;
172
- declare function CardContent({ className, ...props }: CardContentProps): react_jsx_runtime.JSX.Element;
173
- type CardFooterProps = React.HTMLAttributes<HTMLDivElement>;
174
- declare function CardFooter({ className, ...props }: CardFooterProps): react_jsx_runtime.JSX.Element;
175
- type CardActionProps = React.HTMLAttributes<HTMLDivElement>;
176
- declare function CardAction({ className, ...props }: CardActionProps): react_jsx_runtime.JSX.Element;
177
-
178
- interface CheckboxProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, "type"> {
186
+
187
+ /**
188
+ * Card — surface container. Default surfaces use the `.surface` rule from
189
+ * `_shared.css` (12px radius, 1px rule border, surface bg). Three variants:
190
+ *
191
+ * default — settled card on the page (current behavior, unchanged)
192
+ * interactive clickable card; hover darkens the border
193
+ * flat — borderless / shadowless transparent surface, for nesting
194
+ * inside Dialog/Sheet/Card without double-border
195
+ */
196
+ declare const cardVariants: (props?: ({
197
+ variant?: "flat" | "default" | "interactive" | null | undefined;
198
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
199
+ type CardVariants = VariantProps<typeof cardVariants>;
200
+ interface CardProps extends React.HTMLAttributes<HTMLDivElement>, CardVariants {
201
+ }
202
+ declare const Card: React$1.ForwardRefExoticComponent<CardProps & React$1.RefAttributes<HTMLDivElement>>;
203
+ declare const CardHeader: React$1.ForwardRefExoticComponent<React$1.HTMLAttributes<HTMLDivElement> & React$1.RefAttributes<HTMLDivElement>>;
204
+ declare const CardTitle: React$1.ForwardRefExoticComponent<React$1.HTMLAttributes<HTMLHeadingElement> & React$1.RefAttributes<HTMLHeadingElement>>;
205
+ declare const CardDescription: React$1.ForwardRefExoticComponent<React$1.HTMLAttributes<HTMLParagraphElement> & React$1.RefAttributes<HTMLParagraphElement>>;
206
+ declare const CardContent: React$1.ForwardRefExoticComponent<React$1.HTMLAttributes<HTMLDivElement> & React$1.RefAttributes<HTMLDivElement>>;
207
+ declare const CardFooter: React$1.ForwardRefExoticComponent<React$1.HTMLAttributes<HTMLDivElement> & React$1.RefAttributes<HTMLDivElement>>;
208
+ declare const CardAction: React$1.ForwardRefExoticComponent<React$1.HTMLAttributes<HTMLDivElement> & React$1.RefAttributes<HTMLDivElement>>;
209
+
210
+ interface CheckboxProps extends Omit<React$1.ComponentPropsWithoutRef<typeof CheckboxPrimitive.Root>, "checked" | "defaultChecked"> {
211
+ /** Optional inline label rendered to the right of the box */
179
212
  label?: string;
213
+ /** Tri-state support: true | false | "indeterminate" */
214
+ checked?: boolean | "indeterminate";
215
+ defaultChecked?: boolean | "indeterminate";
216
+ /** Convenience: render with indeterminate state. Mirrors legacy prop. */
180
217
  indeterminate?: boolean;
181
218
  }
182
- declare const Checkbox: react.ForwardRefExoticComponent<CheckboxProps & react.RefAttributes<HTMLInputElement>>;
219
+ declare const Checkbox: React$1.ForwardRefExoticComponent<CheckboxProps & React$1.RefAttributes<HTMLButtonElement>>;
183
220
 
184
221
  type ClientSelectOption = {
185
222
  id: string;
@@ -196,32 +233,34 @@ interface ClientSelectProps {
196
233
  placeholder?: string;
197
234
  }
198
235
  declare function ClientSelect({ clients, value, onChange, name, error, className, placeholder, }: ClientSelectProps): react_jsx_runtime.JSX.Element;
199
-
200
- interface CollapsibleProps extends React.HTMLAttributes<HTMLDivElement> {
201
- open?: boolean;
202
- defaultOpen?: boolean;
203
- onOpenChange?: (open: boolean) => void;
236
+ declare namespace ClientSelect {
237
+ var displayName: string;
204
238
  }
205
- declare function Collapsible({ open: controlledOpen, defaultOpen, onOpenChange, children, className, ...props }: CollapsibleProps): react_jsx_runtime.JSX.Element;
206
- type CollapsibleTriggerProps = React.ButtonHTMLAttributes<HTMLButtonElement>;
207
- declare function CollapsibleTrigger({ children, className, ...props }: CollapsibleTriggerProps): react_jsx_runtime.JSX.Element;
208
- type CollapsibleContentProps = React.HTMLAttributes<HTMLDivElement>;
209
- declare function CollapsibleContent({ children, className, ...props }: CollapsibleContentProps): react_jsx_runtime.JSX.Element;
210
239
 
240
+ declare const Collapsible: React$1.ForwardRefExoticComponent<Omit<CollapsiblePrimitive.CollapsibleProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
241
+ declare const CollapsibleTrigger: React$1.ForwardRefExoticComponent<Omit<CollapsiblePrimitive.CollapsibleTriggerProps & React$1.RefAttributes<HTMLButtonElement>, "ref"> & React$1.RefAttributes<HTMLButtonElement>>;
242
+ declare const CollapsibleContent: React$1.ForwardRefExoticComponent<Omit<CollapsiblePrimitive.CollapsibleContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
243
+
244
+ /**
245
+ * ComingSoon — placeholder pattern for unreleased modules. Pro-tinted icon
246
+ * halo, dashed Assure border, "In Development" pill.
247
+ *
248
+ * Public API preserved: `icon`, `title`, `description`, `features`.
249
+ */
211
250
  interface ComingSoonProps extends React.HTMLAttributes<HTMLDivElement> {
212
251
  icon: React.ReactNode;
213
252
  title: string;
214
253
  description: string;
215
254
  features: string[];
216
255
  }
217
- declare function ComingSoon({ icon, title, description, features, className, ...props }: ComingSoonProps): react_jsx_runtime.JSX.Element;
256
+ declare const ComingSoon: React$1.ForwardRefExoticComponent<ComingSoonProps & React$1.RefAttributes<HTMLDivElement>>;
218
257
 
219
258
  interface CommandItem {
220
259
  id: string;
221
260
  label: string;
222
261
  description?: string;
223
262
  group?: string;
224
- icon?: React.ReactNode;
263
+ icon?: React$1.ReactNode;
225
264
  shortcut?: string;
226
265
  onSelect: () => void;
227
266
  keywords?: string[];
@@ -233,38 +272,62 @@ interface CommandPaletteProps {
233
272
  placeholder?: string;
234
273
  }
235
274
 
236
- declare function CommandPalette({ items, open: controlledOpen, onOpenChange, placeholder, }: CommandPaletteProps): react.ReactPortal | null;
275
+ declare function CommandPalette({ items, open: controlledOpen, onOpenChange, placeholder, }: CommandPaletteProps): react_jsx_runtime.JSX.Element;
237
276
 
238
- interface ContextMenuProps {
239
- children: React.ReactNode;
240
- }
241
- declare function ContextMenu({ children }: ContextMenuProps): react_jsx_runtime.JSX.Element;
242
- interface ContextMenuTriggerProps extends React.HTMLAttributes<HTMLDivElement> {
243
- children: React.ReactNode;
244
- }
245
- declare function ContextMenuTrigger({ children, className, onContextMenu, ...rest }: ContextMenuTriggerProps): react_jsx_runtime.JSX.Element;
246
- interface ContextMenuContentProps extends React.HTMLAttributes<HTMLDivElement> {
247
- children: React.ReactNode;
248
- }
249
- declare function ContextMenuContent({ children, className, ...props }: ContextMenuContentProps): react_jsx_runtime.JSX.Element | null;
250
- interface ContextMenuItemProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
277
+ interface ConfirmActionButtonProps {
278
+ /** Element rendered as the dialog trigger via `<AlertDialogTrigger asChild>`. */
279
+ trigger: React$1.ReactNode;
280
+ title: React$1.ReactNode;
281
+ description?: React$1.ReactNode;
282
+ confirmLabel?: React$1.ReactNode;
283
+ cancelLabel?: React$1.ReactNode;
284
+ /** Awaited; dialog closes after resolve, stays open on reject. */
285
+ onConfirm: () => void | Promise<void>;
286
+ /** When true (default) the Action button uses the destructive palette;
287
+ * when false it uses the Pro primary palette (bg-pro-fg). */
251
288
  destructive?: boolean;
252
- }
253
- declare function ContextMenuItem({ destructive, children, className, onClick, ...rest }: ContextMenuItemProps): react_jsx_runtime.JSX.Element;
254
- type ContextMenuSeparatorProps = React.HTMLAttributes<HTMLDivElement>;
255
- declare function ContextMenuSeparator({ className, ...props }: ContextMenuSeparatorProps): react_jsx_runtime.JSX.Element;
289
+ /** Forwarded to AlertDialogContent for one-off layout overrides. */
290
+ contentClassName?: string;
291
+ }
292
+ declare function ConfirmActionButton({ trigger, title, description, confirmLabel, cancelLabel, onConfirm, destructive, contentClassName, }: ConfirmActionButtonProps): react_jsx_runtime.JSX.Element;
293
+
294
+ declare const ContextMenu: React$1.FC<ContextMenuPrimitive.ContextMenuProps>;
295
+ declare const ContextMenuTrigger: React$1.ForwardRefExoticComponent<ContextMenuPrimitive.ContextMenuTriggerProps & React$1.RefAttributes<HTMLSpanElement>>;
296
+ declare const ContextMenuGroup: React$1.ForwardRefExoticComponent<ContextMenuPrimitive.ContextMenuGroupProps & React$1.RefAttributes<HTMLDivElement>>;
297
+ declare const ContextMenuPortal: React$1.FC<ContextMenuPrimitive.ContextMenuPortalProps>;
298
+ declare const ContextMenuSub: React$1.FC<ContextMenuPrimitive.ContextMenuSubProps>;
299
+ declare const ContextMenuRadioGroup: React$1.ForwardRefExoticComponent<ContextMenuPrimitive.ContextMenuRadioGroupProps & React$1.RefAttributes<HTMLDivElement>>;
300
+ declare const ContextMenuSubTrigger: React$1.ForwardRefExoticComponent<Omit<ContextMenuPrimitive.ContextMenuSubTriggerProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & {
301
+ inset?: boolean;
302
+ } & React$1.RefAttributes<HTMLDivElement>>;
303
+ declare const ContextMenuSubContent: React$1.ForwardRefExoticComponent<Omit<ContextMenuPrimitive.ContextMenuSubContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
304
+ declare const ContextMenuContent: React$1.ForwardRefExoticComponent<Omit<ContextMenuPrimitive.ContextMenuContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
305
+ interface ContextMenuItemProps extends React$1.ComponentPropsWithoutRef<typeof ContextMenuPrimitive.Item> {
306
+ destructive?: boolean;
307
+ inset?: boolean;
308
+ }
309
+ declare const ContextMenuItem: React$1.ForwardRefExoticComponent<ContextMenuItemProps & React$1.RefAttributes<HTMLDivElement>>;
310
+ declare const ContextMenuCheckboxItem: React$1.ForwardRefExoticComponent<Omit<ContextMenuPrimitive.ContextMenuCheckboxItemProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
311
+ declare const ContextMenuRadioItem: React$1.ForwardRefExoticComponent<Omit<ContextMenuPrimitive.ContextMenuRadioItemProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
312
+ declare const ContextMenuLabel: React$1.ForwardRefExoticComponent<Omit<ContextMenuPrimitive.ContextMenuLabelProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & {
313
+ inset?: boolean;
314
+ } & React$1.RefAttributes<HTMLDivElement>>;
315
+ declare const ContextMenuSeparator: React$1.ForwardRefExoticComponent<Omit<ContextMenuPrimitive.ContextMenuSeparatorProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
316
+ declare const ContextMenuShortcut: {
317
+ ({ className, ...props }: React$1.HTMLAttributes<HTMLSpanElement>): react_jsx_runtime.JSX.Element;
318
+ displayName: string;
319
+ };
256
320
 
257
321
  interface CopyButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
258
322
  value: string;
259
323
  feedbackDuration?: number;
260
324
  }
261
- declare function CopyButton({ value, feedbackDuration, className, children, ...props }: CopyButtonProps): react_jsx_runtime.JSX.Element;
262
-
263
325
  /**
264
- * Single shared date picker. Displays MM/DD/YYYY everywhere; reads & emits
265
- * ISO YYYY-MM-DD via `value` / `onChange` / hidden form input so it is a
266
- * drop-in replacement for the previous native `<input type="date">`.
326
+ * CopyButton single-click clipboard copy with check-mark feedback.
327
+ * Renders the lucide `Copy` icon by default; pass `children` to override.
267
328
  */
329
+ declare const CopyButton: React$1.ForwardRefExoticComponent<CopyButtonProps & React$1.RefAttributes<HTMLButtonElement>>;
330
+
268
331
  interface DatePickerProps {
269
332
  value?: string;
270
333
  defaultValue?: string;
@@ -290,68 +353,90 @@ interface DatePickerProps {
290
353
  declare const DATE_DISPLAY_PLACEHOLDER = "MM/DD/YYYY";
291
354
  declare function isoToDisplay(iso: string | undefined | null): string;
292
355
  declare function displayToIso(display: string): string;
293
- declare const DatePicker: react.ForwardRefExoticComponent<DatePickerProps & react.RefAttributes<HTMLInputElement>>;
356
+ declare const DatePicker: React$1.ForwardRefExoticComponent<DatePickerProps & React$1.RefAttributes<HTMLInputElement>>;
294
357
 
295
- interface DialogProps {
296
- children: React.ReactNode;
297
- open?: boolean;
298
- onOpenChange?: (open: boolean) => void;
299
- }
300
- declare function Dialog({ children, open: controlledOpen, onOpenChange, }: DialogProps): react_jsx_runtime.JSX.Element;
301
- type DialogTriggerProps = React.ButtonHTMLAttributes<HTMLButtonElement>;
302
- declare function DialogTrigger({ children, className, ...props }: DialogTriggerProps): react_jsx_runtime.JSX.Element;
303
- declare const sizeStyles$2: {
358
+ declare const Dialog: React$1.FC<DialogPrimitive.DialogProps>;
359
+ declare const DialogTrigger: React$1.ForwardRefExoticComponent<DialogPrimitive.DialogTriggerProps & React$1.RefAttributes<HTMLButtonElement>>;
360
+ declare const DialogPortal: React$1.FC<DialogPrimitive.DialogPortalProps>;
361
+ declare const DialogOverlay: React$1.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogOverlayProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
362
+ declare const dialogSizeStyles: {
304
363
  readonly sm: "max-w-sm";
305
364
  readonly md: "max-w-lg";
306
365
  readonly lg: "max-w-2xl";
307
366
  readonly full: "max-w-[calc(100vw-2rem)]";
308
367
  };
309
- interface DialogContentProps extends React.HTMLAttributes<HTMLDivElement> {
310
- size?: keyof typeof sizeStyles$2;
311
- }
312
- declare function DialogContent({ size, children, className, ...props }: DialogContentProps): react.ReactPortal | null;
313
- type DialogHeaderProps = React.HTMLAttributes<HTMLDivElement>;
314
- declare function DialogHeader({ className, ...props }: DialogHeaderProps): react_jsx_runtime.JSX.Element;
315
- type DialogTitleProps = React.HTMLAttributes<HTMLHeadingElement>;
316
- declare function DialogTitle({ className, ...props }: DialogTitleProps): react_jsx_runtime.JSX.Element;
317
- type DialogDescriptionProps = React.HTMLAttributes<HTMLParagraphElement>;
318
- declare function DialogDescription({ className, ...props }: DialogDescriptionProps): react_jsx_runtime.JSX.Element;
319
- type DialogFooterProps = React.HTMLAttributes<HTMLDivElement>;
320
- declare function DialogFooter({ className, ...props }: DialogFooterProps): react_jsx_runtime.JSX.Element;
321
- type DialogCloseProps = React.ButtonHTMLAttributes<HTMLButtonElement>;
322
- declare function DialogClose({ children, className, ...props }: DialogCloseProps): react_jsx_runtime.JSX.Element;
323
-
324
- interface DropdownMenuProps {
325
- children: React.ReactNode;
326
- open?: boolean;
327
- onOpenChange?: (open: boolean) => void;
328
- }
329
- declare function DropdownMenu({ children, open: controlledOpen, onOpenChange, }: DropdownMenuProps): react_jsx_runtime.JSX.Element;
330
- type DropdownMenuTriggerProps = React.ButtonHTMLAttributes<HTMLButtonElement>;
331
- declare function DropdownMenuTrigger({ children, className, onClick, ...rest }: DropdownMenuTriggerProps): react_jsx_runtime.JSX.Element;
332
- interface DropdownMenuContentProps extends React.HTMLAttributes<HTMLDivElement> {
333
- align?: "start" | "center" | "end";
334
- side?: "bottom" | "top";
368
+ interface DialogContentProps extends React$1.ComponentPropsWithoutRef<typeof DialogPrimitive.Content> {
369
+ size?: keyof typeof dialogSizeStyles;
370
+ /**
371
+ * If false, the built-in close button is hidden. Default: true.
372
+ * Use `<DialogClose>` inside content to render your own close UI.
373
+ */
374
+ showCloseButton?: boolean;
335
375
  }
336
- declare function DropdownMenuContent({ align, side, children, className, ...props }: DropdownMenuContentProps): react.ReactPortal | null;
337
- interface DropdownMenuItemProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
376
+ declare const DialogContent: React$1.ForwardRefExoticComponent<DialogContentProps & React$1.RefAttributes<HTMLDivElement>>;
377
+ declare const DialogClose: React$1.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogCloseProps & React$1.RefAttributes<HTMLButtonElement>, "ref"> & React$1.RefAttributes<HTMLButtonElement>>;
378
+ declare const DialogHeader: {
379
+ ({ className, ...props }: React$1.HTMLAttributes<HTMLDivElement>): react_jsx_runtime.JSX.Element;
380
+ displayName: string;
381
+ };
382
+ declare const DialogFooter: {
383
+ ({ className, ...props }: React$1.HTMLAttributes<HTMLDivElement>): react_jsx_runtime.JSX.Element;
384
+ displayName: string;
385
+ };
386
+ declare const DialogTitle: React$1.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogTitleProps & React$1.RefAttributes<HTMLHeadingElement>, "ref"> & React$1.RefAttributes<HTMLHeadingElement>>;
387
+ declare const DialogDescription: React$1.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogDescriptionProps & React$1.RefAttributes<HTMLParagraphElement>, "ref"> & React$1.RefAttributes<HTMLParagraphElement>>;
388
+
389
+ declare const chipVariants: (props?: ({
390
+ variant?: "primary" | "neutral" | null | undefined;
391
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
392
+ interface DismissibleChipProps extends Omit<React$1.ButtonHTMLAttributes<HTMLButtonElement>, "onClick" | "children">, VariantProps<typeof chipVariants> {
393
+ label: React$1.ReactNode;
394
+ onDismiss: () => void;
395
+ }
396
+ declare const DismissibleChip: React$1.ForwardRefExoticComponent<DismissibleChipProps & React$1.RefAttributes<HTMLButtonElement>>;
397
+
398
+ declare const DropdownMenu: React$1.FC<DropdownMenuPrimitive.DropdownMenuProps>;
399
+ declare const DropdownMenuTrigger: React$1.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuTriggerProps & React$1.RefAttributes<HTMLButtonElement>>;
400
+ declare const DropdownMenuGroup: React$1.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuGroupProps & React$1.RefAttributes<HTMLDivElement>>;
401
+ declare const DropdownMenuPortal: React$1.FC<DropdownMenuPrimitive.DropdownMenuPortalProps>;
402
+ declare const DropdownMenuSub: React$1.FC<DropdownMenuPrimitive.DropdownMenuSubProps>;
403
+ declare const DropdownMenuRadioGroup: React$1.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuRadioGroupProps & React$1.RefAttributes<HTMLDivElement>>;
404
+ declare const DropdownMenuSubTrigger: React$1.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSubTriggerProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & {
405
+ inset?: boolean;
406
+ } & React$1.RefAttributes<HTMLDivElement>>;
407
+ declare const DropdownMenuSubContent: React$1.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSubContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
408
+ declare const DropdownMenuContent: React$1.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
409
+ interface DropdownMenuItemProps extends React$1.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Item> {
410
+ /** Render as a destructive (danger) action. */
338
411
  destructive?: boolean;
339
- }
340
- declare function DropdownMenuItem({ destructive, children, className, onClick, ...rest }: DropdownMenuItemProps): react_jsx_runtime.JSX.Element;
341
- type DropdownMenuSeparatorProps = React.HTMLAttributes<HTMLDivElement>;
342
- declare function DropdownMenuSeparator({ className, ...props }: DropdownMenuSeparatorProps): react_jsx_runtime.JSX.Element;
343
- type DropdownMenuLabelProps = React.HTMLAttributes<HTMLDivElement>;
344
- declare function DropdownMenuLabel({ className, ...props }: DropdownMenuLabelProps): react_jsx_runtime.JSX.Element;
345
- type DropdownMenuGroupProps = React.HTMLAttributes<HTMLDivElement>;
346
- declare function DropdownMenuGroup({ className, ...props }: DropdownMenuGroupProps): react_jsx_runtime.JSX.Element;
412
+ /** Increase left padding to align with checkbox/radio items. */
413
+ inset?: boolean;
414
+ }
415
+ declare const DropdownMenuItem: React$1.ForwardRefExoticComponent<DropdownMenuItemProps & React$1.RefAttributes<HTMLDivElement>>;
416
+ declare const DropdownMenuCheckboxItem: React$1.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuCheckboxItemProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
417
+ declare const DropdownMenuRadioItem: React$1.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuRadioItemProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
418
+ declare const DropdownMenuLabel: React$1.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuLabelProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & {
419
+ inset?: boolean;
420
+ } & React$1.RefAttributes<HTMLDivElement>>;
421
+ declare const DropdownMenuSeparator: React$1.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSeparatorProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
422
+ declare const DropdownMenuShortcut: {
423
+ ({ className, ...props }: React$1.HTMLAttributes<HTMLSpanElement>): react_jsx_runtime.JSX.Element;
424
+ displayName: string;
425
+ };
347
426
 
427
+ /**
428
+ * EmptyState — restated with Assure Pro tokens. Display headline (Geist),
429
+ * fg-3 description, neutral icon halo on bg-2.
430
+ *
431
+ * Public API preserved: `icon`, `title`, `description`, `action`.
432
+ */
348
433
  interface EmptyStateProps extends React.HTMLAttributes<HTMLDivElement> {
349
434
  icon?: React.ReactNode;
350
435
  title: string;
351
436
  description?: string;
352
437
  action?: React.ReactNode;
353
438
  }
354
- declare function EmptyState({ icon, title, description, action, className, ...props }: EmptyStateProps): react_jsx_runtime.JSX.Element;
439
+ declare const EmptyState: React$1.ForwardRefExoticComponent<EmptyStateProps & React$1.RefAttributes<HTMLDivElement>>;
355
440
 
356
441
  interface FileUploadProps extends React.HTMLAttributes<HTMLDivElement> {
357
442
  accept?: string;
@@ -365,25 +450,24 @@ declare function FileUpload({ accept, maxSize, multiple, onFilesSelected, disabl
365
450
  interface FormErrorProps extends React.HTMLAttributes<HTMLParagraphElement> {
366
451
  children: React.ReactNode;
367
452
  }
453
+ /**
454
+ * Inline form error — paired below an input to communicate validation failure.
455
+ * Uses architectural --color-danger-fg token.
456
+ */
368
457
  declare function FormError({ children, className, ...props }: FormErrorProps): react_jsx_runtime.JSX.Element;
369
458
  interface FormSuccessProps extends React.HTMLAttributes<HTMLParagraphElement> {
370
459
  children: React.ReactNode;
371
460
  }
461
+ /**
462
+ * Inline form success — paired below an input to confirm a saved value.
463
+ * Uses architectural --color-success-fg token.
464
+ */
372
465
  declare function FormSuccess({ children, className, ...props }: FormSuccessProps): react_jsx_runtime.JSX.Element;
373
466
 
374
- interface HoverCardProps {
375
- children: React.ReactNode;
376
- openDelay?: number;
377
- closeDelay?: number;
378
- }
379
- declare function HoverCard({ children, openDelay, closeDelay, }: HoverCardProps): react_jsx_runtime.JSX.Element;
380
- type HoverCardTriggerProps = React.HTMLAttributes<HTMLSpanElement>;
381
- declare function HoverCardTrigger({ children, className, ...props }: HoverCardTriggerProps): react_jsx_runtime.JSX.Element;
382
- interface HoverCardContentProps extends React.HTMLAttributes<HTMLDivElement> {
383
- side?: "top" | "bottom";
384
- align?: "start" | "center" | "end";
385
- }
386
- declare function HoverCardContent({ side, align, children, className, ...props }: HoverCardContentProps): react_jsx_runtime.JSX.Element | null;
467
+ declare const HoverCard: React$1.FC<HoverCardPrimitive.HoverCardProps>;
468
+ declare const HoverCardTrigger: React$1.ForwardRefExoticComponent<HoverCardPrimitive.HoverCardTriggerProps & React$1.RefAttributes<HTMLAnchorElement>>;
469
+ declare const HoverCardPortal: React$1.FC<HoverCardPrimitive.HoverCardPortalProps>;
470
+ declare const HoverCardContent: React$1.ForwardRefExoticComponent<Omit<HoverCardPrimitive.HoverCardContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
387
471
 
388
472
  interface IconProps extends React.SVGAttributes<SVGElement> {
389
473
  size?: number;
@@ -467,59 +551,137 @@ declare function AlertTriangleIcon({ size, ...props }: IconProps): react_jsx_run
467
551
  declare function ArrowRightSmallIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
468
552
  declare function ArrowLeftIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
469
553
  declare function CreditCardIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
554
+ declare function AlertCircleIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
555
+ declare function ArrowDownIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
556
+ declare function ArrowUpIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
557
+ declare function BriefcaseIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
558
+ declare function Building2Icon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
559
+ declare function CheckCircle2Icon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
560
+ declare function ChevronsUpDownIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
561
+ declare function CircleIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
562
+ declare function CircleDotIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
563
+ declare function CommandIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
564
+ declare function CornerDownLeftIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
565
+ declare function EyeOffIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
566
+ declare function HomeIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
567
+ declare function InboxIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
568
+ declare function ListChecksIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
569
+ declare function MinusIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
570
+ declare function SlashIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
571
+ declare function SparklesIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
572
+ declare function Trash2Icon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
573
+ declare function UserIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
574
+ declare function BoldIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
575
+ declare function ItalicIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
576
+ declare function UnderlineIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
577
+ declare function StrikethroughIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
578
+ declare function ListIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
579
+ declare function ListOrderedIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
580
+ declare function InfoIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
581
+ declare function HelpCircleIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
582
+ declare function DollarSignIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
583
+ declare function ReplyIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
584
+ declare function KanbanIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
585
+ declare function TableIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
586
+ declare function HistoryIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
587
+ declare function SaveIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
588
+ /**
589
+ * LoaderIcon — animated spinner. Render with `className="animate-spin"`
590
+ * (or `motion-safe:animate-spin` if you want to respect `prefers-reduced-
591
+ * motion`; the catalog doesn't gate this itself because the spinner IS
592
+ * the indicator for many flows).
593
+ *
594
+ * Visual contract: a dim full-circle ring + a brighter quarter-arc on top.
595
+ * When rotated, the bright arc creates the "leading edge" of the spinner.
596
+ */
597
+ declare function LoaderIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
598
+ /**
599
+ * GoogleBrandIcon — Google four-color "G" mark. Brand-locked colors,
600
+ * does NOT respond to currentColor. Use only in provider-list UIs
601
+ * (OAuth buttons, integration chips). Standard 24-grid.
602
+ */
603
+ declare function GoogleBrandIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
604
+ /**
605
+ * MicrosoftBrandIcon — Microsoft four-square mark in red / green / blue /
606
+ * yellow. Brand-locked colors, does NOT respond to currentColor. Use
607
+ * inside Microsoft OAuth signin buttons, Outlook / Office integration
608
+ * chips, and similar provider-list UIs. Standard 24-grid (10×10 squares
609
+ * with 2u gaps).
610
+ */
611
+ declare function MicrosoftBrandIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
612
+ /**
613
+ * FilterIcon — funnel mark used for filter popover triggers across list
614
+ * pages (clients, workflow, billing, organizers…). Renders the same
615
+ * lucide-style polygon at any size; pair with a corner notification dot
616
+ * to surface active filter count.
617
+ */
618
+ declare function FilterIcon({ size, ...props }: IconProps): react_jsx_runtime.JSX.Element;
470
619
 
471
- interface InputProps$1 extends React.InputHTMLAttributes<HTMLInputElement> {
620
+ /**
621
+ * Input variants. Mirrors the raw HTML `<input>` styled per Assure Pro tokens
622
+ * (rule-strong border, surface bg, accent focus ring).
623
+ */
624
+ declare const inputVariants: (props?: ({
625
+ variant?: "default" | "ghost" | null | undefined;
626
+ inputSize?: "sm" | "md" | "lg" | null | undefined;
627
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
628
+ type InputVariants = VariantProps<typeof inputVariants>;
629
+ interface InputProps$1 extends Omit<React.InputHTMLAttributes<HTMLInputElement>, "size">, InputVariants {
472
630
  label?: string;
473
631
  error?: string;
474
632
  prefixIcon?: React.ReactNode;
475
633
  suffixIcon?: React.ReactNode;
476
634
  }
477
- declare const Input: react.ForwardRefExoticComponent<InputProps$1 & react.RefAttributes<HTMLInputElement>>;
635
+ declare const Input: React$1.ForwardRefExoticComponent<InputProps$1 & React$1.RefAttributes<HTMLInputElement>>;
478
636
 
479
- declare function KeyboardShortcutsDialog(): react.ReactPortal | null;
637
+ declare function KeyboardShortcutsDialog(): react_jsx_runtime.JSX.Element;
480
638
 
481
- interface LabelProps extends React.LabelHTMLAttributes<HTMLLabelElement> {
639
+ declare const labelVariants: (props?: class_variance_authority_types.ClassProp | undefined) => string;
640
+ interface LabelProps extends React$1.ComponentPropsWithoutRef<typeof LabelPrimitive.Root>, VariantProps<typeof labelVariants> {
482
641
  required?: boolean;
483
642
  }
484
- declare function Label({ children, required, className, ...props }: LabelProps): react_jsx_runtime.JSX.Element;
643
+ declare const Label: React$1.ForwardRefExoticComponent<LabelProps & React$1.RefAttributes<HTMLLabelElement>>;
485
644
 
486
- declare const variantStyles$1: {
487
- readonly primary: "bg-primary text-primary-foreground hover:bg-primary/90";
488
- readonly secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/80";
489
- readonly destructive: "bg-destructive text-destructive-foreground hover:bg-destructive/90";
490
- readonly ghost: "hover:bg-accent hover:text-accent-foreground";
491
- readonly outline: "border border-input bg-background hover:bg-accent hover:text-accent-foreground";
492
- readonly link: "text-primary underline-offset-4 hover:underline";
493
- };
494
- declare const sizeStyles$1: {
495
- readonly sm: "h-8 px-3 text-sm gap-1.5";
496
- readonly md: "h-10 px-4 text-sm gap-2";
497
- readonly lg: "h-12 px-6 text-base gap-2";
498
- };
499
- interface LinkButtonProps {
645
+ type ButtonVariant = "primary" | "secondary" | "destructive" | "success" | "ghost" | "outline" | "link" | "accent";
646
+ type ButtonSize = "sm" | "md" | "lg";
647
+ interface LinkButtonProps$1 extends Omit<React.AnchorHTMLAttributes<HTMLAnchorElement>, "href"> {
500
648
  href: string;
501
- variant?: keyof typeof variantStyles$1;
502
- size?: keyof typeof sizeStyles$1;
649
+ variant?: ButtonVariant;
650
+ size?: ButtonSize;
503
651
  iconLeft?: React.ReactNode;
504
652
  iconRight?: React.ReactNode;
505
653
  children: React.ReactNode;
506
654
  className?: string;
507
- onClick?: React.MouseEventHandler<HTMLAnchorElement>;
508
655
  }
509
- declare function LinkButton({ href, variant, size, iconLeft, iconRight, children, className, ...props }: LinkButtonProps): react_jsx_runtime.JSX.Element;
656
+ /**
657
+ * LinkButton — visually identical to `<Button>` but renders a `next/link`.
658
+ * Shares `buttonVariants` so styling stays in lock-step.
659
+ */
660
+ declare const LinkButton: React$1.ForwardRefExoticComponent<LinkButtonProps$1 & React$1.RefAttributes<HTMLAnchorElement>>;
510
661
 
662
+ /**
663
+ * Logo — Assure Pro wordmark. Per spec §4 and §6.2, the firm-app brand is
664
+ * "Assure Pro": "Assure" in fg + "Pro" in pro-fg purple, set in Geist
665
+ * (font-display). Mirrors the `.wordmark` rule in `_shared.css` (lines 226-249).
666
+ *
667
+ * Public API kept stable: `size`, `href`, `showText`, `inverted`, plus the
668
+ * style-override hooks (`className`, `iconClassName`, `textClassName`).
669
+ */
511
670
  declare const sizeStyles: {
512
671
  readonly sm: {
513
- readonly icon: 24;
672
+ readonly icon: 20;
514
673
  readonly text: "text-sm";
674
+ readonly gap: "gap-2";
515
675
  };
516
676
  readonly md: {
517
- readonly icon: 32;
518
- readonly text: "text-lg";
677
+ readonly icon: 24;
678
+ readonly text: "text-[17px]";
679
+ readonly gap: "gap-2.5";
519
680
  };
520
681
  readonly lg: {
521
- readonly icon: 40;
682
+ readonly icon: 32;
522
683
  readonly text: "text-xl";
684
+ readonly gap: "gap-3";
523
685
  };
524
686
  };
525
687
  interface LogoProps {
@@ -529,14 +691,14 @@ interface LogoProps {
529
691
  className?: string;
530
692
  iconClassName?: string;
531
693
  textClassName?: string;
532
- /** Render wordmark for dark/brand surfaces: white "Light" + gold "Taxes". */
694
+ /** When true, render on dark/brand surfaces (white "Assure" + lighter "Pro"). */
533
695
  inverted?: boolean;
534
696
  }
535
697
  declare function Logo({ size, href, showText, className, iconClassName, textClassName, inverted, }: LogoProps): react_jsx_runtime.JSX.Element;
536
698
 
537
699
  interface MultiFilterPillProps {
538
700
  label: string;
539
- icon?: React.ReactNode;
701
+ icon?: React$1.ReactNode;
540
702
  selected: Set<string>;
541
703
  options: {
542
704
  key: string;
@@ -547,6 +709,9 @@ interface MultiFilterPillProps {
547
709
  onClear: () => void;
548
710
  }
549
711
  declare function MultiFilterPill({ label, icon, selected, options, onToggle, onClear, }: MultiFilterPillProps): react_jsx_runtime.JSX.Element;
712
+ declare namespace MultiFilterPill {
713
+ var displayName: string;
714
+ }
550
715
 
551
716
  interface MultiSelectFieldProps {
552
717
  label: string;
@@ -554,8 +719,15 @@ interface MultiSelectFieldProps {
554
719
  value: string;
555
720
  onChange: (value: string) => void;
556
721
  className?: string;
722
+ /** Visual size; default "md" matches the form-row default. */
723
+ size?: "sm" | "md";
724
+ /** Optional id, used to associate the visible label with the group. */
725
+ id?: string;
726
+ }
727
+ declare function MultiSelectField({ label, options, value, onChange, className, size, id, }: MultiSelectFieldProps): react_jsx_runtime.JSX.Element;
728
+ declare namespace MultiSelectField {
729
+ var displayName: string;
557
730
  }
558
- declare function MultiSelectField({ label, options, value, onChange, className, }: MultiSelectFieldProps): react_jsx_runtime.JSX.Element;
559
731
 
560
732
  interface OTPInputProps {
561
733
  name: string;
@@ -564,9 +736,31 @@ interface OTPInputProps {
564
736
  autoFocus?: boolean;
565
737
  className?: string;
566
738
  defaultValue?: string;
739
+ /** Optional controlled value (additive). */
740
+ value?: string;
741
+ /** Optional controlled onChange (additive). */
742
+ onChange?: (value: string) => void;
743
+ /** Optional callback fired when all slots are filled (additive). */
744
+ onComplete?: (value: string) => void;
745
+ /** Optional id for the underlying input (additive). */
746
+ id?: string;
747
+ /** Optional disabled flag (additive). */
748
+ disabled?: boolean;
749
+ }
750
+ declare function OTPInput({ name, length, error, autoFocus, className, defaultValue, value, onChange, onComplete, id, disabled, }: OTPInputProps): react_jsx_runtime.JSX.Element;
751
+ declare namespace OTPInput {
752
+ var displayName: string;
567
753
  }
568
- declare function OTPInput({ name, length, error, autoFocus, className, defaultValue, }: OTPInputProps): react_jsx_runtime.JSX.Element;
569
754
 
755
+ /**
756
+ * Pagination — custom (no Radix equivalent).
757
+ * Restyled to Assure Pro tokens: tabular-nums numerals, mono context label,
758
+ * cyan accent for the current page (matches the `.tab.is-active` treatment
759
+ * in `_shared.css`), `border-rule` divider boundaries.
760
+ *
761
+ * Public API preserved for 988 firm + 174 portal call sites:
762
+ * currentPage, totalPages, onPageChange, siblingCount, totalItems, pageSize.
763
+ */
570
764
  interface PaginationProps extends React.HTMLAttributes<HTMLElement> {
571
765
  currentPage: number;
572
766
  totalPages: number;
@@ -577,7 +771,7 @@ interface PaginationProps extends React.HTMLAttributes<HTMLElement> {
577
771
  /** Items per page — used with totalItems for range display */
578
772
  pageSize?: number;
579
773
  }
580
- declare function Pagination({ currentPage, totalPages, onPageChange, siblingCount, totalItems, pageSize, className, ...props }: PaginationProps): react_jsx_runtime.JSX.Element | null;
774
+ declare const Pagination: React$1.ForwardRefExoticComponent<PaginationProps & React$1.RefAttributes<HTMLElement>>;
581
775
 
582
776
  type InputProps = React.ComponentProps<typeof Input>;
583
777
  interface PhoneInputProps extends Omit<InputProps, "type" | "onChange" | "value" | "defaultValue"> {
@@ -585,41 +779,50 @@ interface PhoneInputProps extends Omit<InputProps, "type" | "onChange" | "value"
585
779
  defaultValue?: string;
586
780
  onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;
587
781
  }
588
- declare function PhoneInput({ value, defaultValue, onChange, name, ...props }: PhoneInputProps): react_jsx_runtime.JSX.Element;
782
+ declare const PhoneInput: React$1.ForwardRefExoticComponent<Omit<PhoneInputProps, "ref"> & React$1.RefAttributes<HTMLInputElement>>;
589
783
 
590
- type Side$2 = "top" | "bottom" | "left" | "right";
591
- type Align = "start" | "center" | "end";
592
- interface PopoverProps {
593
- children: React.ReactNode;
594
- open?: boolean;
595
- onOpenChange?: (open: boolean) => void;
596
- }
597
- declare function Popover({ children, open: controlledOpen, onOpenChange }: PopoverProps): react_jsx_runtime.JSX.Element;
598
- type PopoverTriggerProps = React.ButtonHTMLAttributes<HTMLButtonElement>;
599
- declare function PopoverTrigger({ children, className, ...props }: PopoverTriggerProps): react_jsx_runtime.JSX.Element;
600
- interface PopoverContentProps extends React.HTMLAttributes<HTMLDivElement> {
601
- side?: Side$2;
602
- align?: Align;
603
- }
604
- declare function PopoverContent({ side, align, children, className, ...props }: PopoverContentProps): react.ReactPortal | null;
605
-
606
- declare const variantStyles: {
607
- readonly default: "bg-primary";
608
- readonly success: "bg-success";
609
- readonly warning: "bg-warning";
610
- readonly destructive: "bg-destructive";
611
- readonly info: "bg-info";
612
- };
613
- interface ProgressBarProps extends React.HTMLAttributes<HTMLDivElement> {
614
- value: number;
784
+ declare const Popover: React$1.FC<PopoverPrimitive.PopoverProps>;
785
+ declare const PopoverTrigger: React$1.ForwardRefExoticComponent<PopoverPrimitive.PopoverTriggerProps & React$1.RefAttributes<HTMLButtonElement>>;
786
+ declare const PopoverAnchor: React$1.ForwardRefExoticComponent<PopoverPrimitive.PopoverAnchorProps & React$1.RefAttributes<HTMLDivElement>>;
787
+ declare const PopoverPortal: React$1.FC<PopoverPrimitive.PopoverPortalProps>;
788
+ declare const PopoverClose: React$1.ForwardRefExoticComponent<PopoverPrimitive.PopoverCloseProps & React$1.RefAttributes<HTMLButtonElement>>;
789
+ declare const PopoverContent: React$1.ForwardRefExoticComponent<Omit<PopoverPrimitive.PopoverContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
790
+
791
+ /**
792
+ * ProgressBar — Radix-driven determinate (or indeterminate) progress meter.
793
+ * Track sits on `bg-3`; fills follow the status palette. Variants are an
794
+ * explicit cva enum; if `variant` is omitted, it auto-resolves from value:
795
+ * <50% → default (Pro purple)
796
+ * ≥50% → warning
797
+ * ≥80% → success
798
+ *
799
+ * Public API preserved: `value`, `max`, `label`, `showPercentage`, `variant`.
800
+ * Pass `value={null}` (or omit when in-doubt) to render Radix's indeterminate
801
+ * state — but for back-compat we still accept `value: number`.
802
+ */
803
+ declare const progressBarVariants: (props?: ({
804
+ variant?: "info" | "success" | "warning" | "destructive" | "default" | null | undefined;
805
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
806
+ interface ProgressBarProps extends Omit<React.ComponentPropsWithoutRef<typeof ProgressPrimitive.Root>, "value">, VariantProps<typeof progressBarVariants> {
807
+ /** 0..max. Set to `null` for an indeterminate track. */
808
+ value: number | null;
615
809
  max?: number;
616
810
  label?: string;
617
811
  showPercentage?: boolean;
618
- variant?: keyof typeof variantStyles;
619
812
  }
620
- declare function ProgressBar({ value, max, label, showPercentage, variant, className, ...props }: ProgressBarProps): react_jsx_runtime.JSX.Element;
813
+ declare const ProgressBar: React$1.ForwardRefExoticComponent<ProgressBarProps & React$1.RefAttributes<HTMLDivElement>>;
621
814
 
622
- interface ProgressRingProps extends React.HTMLAttributes<HTMLDivElement> {
815
+ /**
816
+ * ProgressRing — custom SVG ring meter (no Radix equivalent).
817
+ * Track is `bg-3`, the indicator picks up the active variant. Variants and
818
+ * value-driven auto-resolve mirror ProgressBar so consumers can mix freely.
819
+ *
820
+ * Public API preserved: `value`, `max`, `size`, `strokeWidth`, `label`, `sublabel`.
821
+ */
822
+ declare const progressRingVariants: (props?: ({
823
+ variant?: "info" | "success" | "warning" | "destructive" | "default" | null | undefined;
824
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
825
+ interface ProgressRingProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof progressRingVariants> {
623
826
  value: number;
624
827
  max?: number;
625
828
  size?: number;
@@ -627,33 +830,32 @@ interface ProgressRingProps extends React.HTMLAttributes<HTMLDivElement> {
627
830
  label?: string;
628
831
  sublabel?: string;
629
832
  }
630
- declare function ProgressRing({ value, max, size, strokeWidth, label, sublabel, className, ...props }: ProgressRingProps): react_jsx_runtime.JSX.Element;
833
+ declare const ProgressRing: React$1.ForwardRefExoticComponent<ProgressRingProps & React$1.RefAttributes<HTMLDivElement>>;
631
834
 
632
- interface RadioGroupProps extends React.HTMLAttributes<HTMLDivElement> {
633
- value?: string;
634
- defaultValue?: string;
635
- onValueChange?: (value: string) => void;
636
- name?: string;
637
- }
638
- declare function RadioGroup({ value: controlledValue, defaultValue, onValueChange, name: providedName, children, className, ...props }: RadioGroupProps): react_jsx_runtime.JSX.Element;
639
- interface RadioGroupItemProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, "type" | "onChange"> {
640
- value: string;
835
+ declare const RadioGroup: React$1.ForwardRefExoticComponent<Omit<RadioGroupPrimitive.RadioGroupProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
836
+ interface RadioGroupItemProps extends React$1.ComponentPropsWithoutRef<typeof RadioGroupPrimitive.Item> {
837
+ /** Optional inline label rendered to the right of the radio */
641
838
  label?: string;
642
839
  }
643
- declare function RadioGroupItem({ value, label, className, id: providedId, ...props }: RadioGroupItemProps): react_jsx_runtime.JSX.Element;
840
+ declare const RadioGroupItem: React$1.ForwardRefExoticComponent<RadioGroupItemProps & React$1.RefAttributes<HTMLButtonElement>>;
644
841
 
645
- interface ScrollAreaProps extends React.HTMLAttributes<HTMLDivElement> {
646
- children: React.ReactNode;
842
+ interface ScrollAreaProps extends React$1.ComponentPropsWithoutRef<typeof ScrollAreaPrimitive.Root> {
843
+ children: React$1.ReactNode;
647
844
  }
648
- declare function ScrollArea({ children, className, ...props }: ScrollAreaProps): react_jsx_runtime.JSX.Element;
845
+ declare const ScrollArea: React$1.ForwardRefExoticComponent<ScrollAreaProps & React$1.RefAttributes<HTMLDivElement>>;
846
+ declare const ScrollBar: React$1.ForwardRefExoticComponent<Omit<ScrollAreaPrimitive.ScrollAreaScrollbarProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
649
847
 
650
- interface SearchInputProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, "type" | "onChange"> {
848
+ declare const searchInputVariants: (props?: ({
849
+ inputSize?: "sm" | "md" | "lg" | null | undefined;
850
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
851
+ type SearchInputVariants = VariantProps<typeof searchInputVariants>;
852
+ interface SearchInputProps extends Omit<React$1.InputHTMLAttributes<HTMLInputElement>, "type" | "onChange" | "size">, SearchInputVariants {
651
853
  value: string;
652
854
  onValueChange: (value: string) => void;
653
855
  onSearch?: (value: string) => void;
654
856
  debounceMs?: number;
655
857
  }
656
- declare function SearchInput({ value, onValueChange, onSearch, debounceMs, className, placeholder, ...props }: SearchInputProps): react_jsx_runtime.JSX.Element;
858
+ declare const SearchInput: React$1.ForwardRefExoticComponent<SearchInputProps & React$1.RefAttributes<HTMLInputElement>>;
657
859
 
658
860
  interface SearchSelectOption {
659
861
  id: string;
@@ -670,7 +872,14 @@ interface SearchSelectProps {
670
872
  disabled?: boolean;
671
873
  }
672
874
  declare function SearchSelect({ options, selected, onSelect, onRemove, onCreate, placeholder, className, disabled, }: SearchSelectProps): react_jsx_runtime.JSX.Element;
875
+ declare namespace SearchSelect {
876
+ var displayName: string;
877
+ }
673
878
 
879
+ /**
880
+ * SectionHeader — title + description block for marketing-style sections.
881
+ * Uses Geist (`font-display`) with the spec's `-0.022em` letterspacing.
882
+ */
674
883
  interface SectionHeaderProps {
675
884
  title: string;
676
885
  description?: string;
@@ -679,6 +888,11 @@ interface SectionHeaderProps {
679
888
  }
680
889
  declare function SectionHeader({ title, description, align, className, }: SectionHeaderProps): react_jsx_runtime.JSX.Element;
681
890
 
891
+ /**
892
+ * Section — max-width centered wrapper for marketing/section content.
893
+ * The `--content-pad` token (32px) is the canonical app-content gutter,
894
+ * but Section keeps its 24px (`px-6`) gutter for narrower marketing pages.
895
+ */
682
896
  declare const maxWidthStyles: {
683
897
  readonly sm: "max-w-3xl";
684
898
  readonly md: "max-w-4xl";
@@ -689,68 +903,124 @@ interface SectionProps extends React.HTMLAttributes<HTMLElement> {
689
903
  maxWidth?: keyof typeof maxWidthStyles;
690
904
  as?: "section" | "div";
691
905
  }
692
- declare function Section({ maxWidth, as: Tag, children, className, ...props }: SectionProps): react_jsx_runtime.JSX.Element;
693
-
906
+ declare const Section: React$1.ForwardRefExoticComponent<SectionProps & React$1.RefAttributes<HTMLElement>>;
907
+ interface SectionHeadProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "title"> {
908
+ eyebrow?: React.ReactNode;
909
+ title?: React.ReactNode;
910
+ meta?: React.ReactNode;
911
+ }
912
+ declare const SectionHead: React$1.ForwardRefExoticComponent<SectionHeadProps & React$1.RefAttributes<HTMLDivElement>>;
913
+
914
+ declare const SelectRoot: React$1.FC<SelectPrimitive.SelectProps>;
915
+ declare const SelectGroup: React$1.ForwardRefExoticComponent<SelectPrimitive.SelectGroupProps & React$1.RefAttributes<HTMLDivElement>>;
916
+ declare const SelectValue: React$1.ForwardRefExoticComponent<SelectPrimitive.SelectValueProps & React$1.RefAttributes<HTMLSpanElement>>;
917
+ declare const SelectTrigger: React$1.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectTriggerProps & React$1.RefAttributes<HTMLButtonElement>, "ref"> & React$1.RefAttributes<HTMLButtonElement>>;
918
+ declare const SelectScrollUpButton: React$1.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectScrollUpButtonProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
919
+ declare const SelectScrollDownButton: React$1.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectScrollDownButtonProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
920
+ declare const SelectContent: React$1.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
921
+ declare const SelectLabel: React$1.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectLabelProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
922
+ declare const SelectItem: React$1.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectItemProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
923
+ declare const SelectSeparator: React$1.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectSeparatorProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
924
+ /**
925
+ * SelectOption shape — preserved verbatim from the legacy Select:
926
+ * { value, label, disabled?, labelSuffix? }
927
+ */
694
928
  interface SelectOption {
695
929
  value: string;
696
930
  label: string;
697
931
  disabled?: boolean;
698
- labelSuffix?: React.ReactNode;
932
+ labelSuffix?: React$1.ReactNode;
699
933
  }
700
934
  interface SelectProps {
701
- children?: React.ReactNode;
935
+ /** Option list. Required to preserve legacy API. */
936
+ options: SelectOption[];
937
+ /** Controlled value. */
702
938
  value?: string;
939
+ /** Uncontrolled initial value. */
703
940
  defaultValue?: string;
704
941
  onValueChange?: (value: string) => void;
705
- options: SelectOption[];
706
942
  placeholder?: string;
943
+ /** Accepted for back-compat. NO-OP — see file header for migration. */
707
944
  searchable?: boolean;
945
+ disabled?: boolean;
946
+ name?: string;
947
+ required?: boolean;
948
+ className?: string;
949
+ /** Forwarded to the trigger. */
950
+ triggerClassName?: string;
951
+ /** Forwarded to the content. */
952
+ contentClassName?: string;
953
+ /** aria-invalid + danger styling on trigger. */
954
+ "aria-invalid"?: boolean;
955
+ /** aria-label fallback when there is no visible label. */
956
+ "aria-label"?: string;
708
957
  }
709
- declare function Select({ children, value: controlledValue, defaultValue, onValueChange, options, placeholder, searchable, }: SelectProps): react_jsx_runtime.JSX.Element;
710
- type SelectTriggerProps = React.ButtonHTMLAttributes<HTMLButtonElement>;
711
- declare function SelectTrigger({ className, ...props }: SelectTriggerProps): react_jsx_runtime.JSX.Element;
712
- type SelectContentProps = React.HTMLAttributes<HTMLDivElement> & {
713
- position?: "bottom" | "top";
714
- };
715
- declare function SelectContent({ className, position, ...props }: SelectContentProps): react_jsx_runtime.JSX.Element | null;
716
-
717
- interface SeparatorProps extends React.HTMLAttributes<HTMLDivElement> {
718
- orientation?: "horizontal" | "vertical";
719
- decorative?: boolean;
958
+ /**
959
+ * Convenience `Select` — preserved options-driven API.
960
+ *
961
+ * For full composition, import the lower-level slots:
962
+ * <SelectRoot>
963
+ * <SelectTrigger><SelectValue /></SelectTrigger>
964
+ * <SelectContent>
965
+ * <SelectGroup>
966
+ * <SelectLabel>Label</SelectLabel>
967
+ * <SelectItem value="">…</SelectItem>
968
+ * </SelectGroup>
969
+ * </SelectContent>
970
+ * </SelectRoot>
971
+ */
972
+ declare function Select({ options, value, defaultValue, onValueChange, placeholder, searchable, disabled, name, required, className, triggerClassName, contentClassName, "aria-invalid": ariaInvalid, "aria-label": ariaLabel, }: SelectProps): react_jsx_runtime.JSX.Element;
973
+ declare namespace Select {
974
+ var displayName: string;
720
975
  }
721
- declare function Separator({ orientation, decorative, className, ...props }: SeparatorProps): react_jsx_runtime.JSX.Element;
722
976
 
723
- type Side$1 = "right" | "left" | "bottom";
724
- interface SheetProps {
725
- children: React.ReactNode;
726
- open?: boolean;
727
- onOpenChange?: (open: boolean) => void;
728
- side?: Side$1;
977
+ declare const Separator: React$1.ForwardRefExoticComponent<Omit<SeparatorPrimitive.SeparatorProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
978
+
979
+ type Side = "top" | "right" | "bottom" | "left";
980
+ interface SheetProps extends React$1.ComponentPropsWithoutRef<typeof DialogPrimitive.Root> {
981
+ /**
982
+ * Default side for SheetContent if it doesn't specify its own.
983
+ * Backwards-compat shim — prefer `<SheetContent side="…" />`.
984
+ */
985
+ side?: Side;
729
986
  }
730
- declare function Sheet({ children, open: controlledOpen, onOpenChange, side, }: SheetProps): react_jsx_runtime.JSX.Element;
731
- type SheetTriggerProps = React.ButtonHTMLAttributes<HTMLButtonElement>;
732
- declare function SheetTrigger({ children, className, ...props }: SheetTriggerProps): react_jsx_runtime.JSX.Element;
733
- interface SheetContentProps extends React.HTMLAttributes<HTMLDivElement> {
987
+ declare const Sheet: {
988
+ ({ side, children, ...props }: SheetProps): react_jsx_runtime.JSX.Element;
989
+ displayName: string;
990
+ };
991
+ declare const SheetTrigger: React$1.ForwardRefExoticComponent<DialogPrimitive.DialogTriggerProps & React$1.RefAttributes<HTMLButtonElement>>;
992
+ declare const SheetClose: React$1.ForwardRefExoticComponent<DialogPrimitive.DialogCloseProps & React$1.RefAttributes<HTMLButtonElement>>;
993
+ declare const SheetPortal: React$1.FC<DialogPrimitive.DialogPortalProps>;
994
+ declare const SheetOverlay: React$1.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogOverlayProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
995
+ declare const sheetVariants: (props?: ({
996
+ side?: "left" | "right" | "top" | "bottom" | null | undefined;
997
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
998
+ interface SheetContentProps extends React$1.ComponentPropsWithoutRef<typeof DialogPrimitive.Content>, VariantProps<typeof sheetVariants> {
999
+ /** If false, the built-in close button is hidden. Default: true. */
734
1000
  showCloseButton?: boolean;
735
1001
  }
736
- declare function SheetContent({ children, className, showCloseButton, ...props }: SheetContentProps): react.ReactPortal | null;
737
- type SheetHeaderProps = React.HTMLAttributes<HTMLDivElement>;
738
- declare function SheetHeader({ className, ...props }: SheetHeaderProps): react_jsx_runtime.JSX.Element;
739
- type SheetTitleProps = React.HTMLAttributes<HTMLHeadingElement>;
740
- declare function SheetTitle({ className, ...props }: SheetTitleProps): react_jsx_runtime.JSX.Element;
741
- type SheetDescriptionProps = React.HTMLAttributes<HTMLParagraphElement>;
742
- declare function SheetDescription({ className, ...props }: SheetDescriptionProps): react_jsx_runtime.JSX.Element;
743
- type SheetFooterProps = React.HTMLAttributes<HTMLDivElement>;
744
- declare function SheetFooter({ className, ...props }: SheetFooterProps): react_jsx_runtime.JSX.Element;
745
- type SheetCloseProps = React.ButtonHTMLAttributes<HTMLButtonElement>;
746
- declare function SheetClose({ children, className, ...props }: SheetCloseProps): react_jsx_runtime.JSX.Element;
747
-
748
- interface SideDrawerProps {
1002
+ declare const SheetContent: React$1.ForwardRefExoticComponent<SheetContentProps & React$1.RefAttributes<HTMLDivElement>>;
1003
+ declare const SheetHeader: {
1004
+ ({ className, ...props }: React$1.HTMLAttributes<HTMLDivElement>): react_jsx_runtime.JSX.Element;
1005
+ displayName: string;
1006
+ };
1007
+ declare const SheetFooter: {
1008
+ ({ className, ...props }: React$1.HTMLAttributes<HTMLDivElement>): react_jsx_runtime.JSX.Element;
1009
+ displayName: string;
1010
+ };
1011
+ declare const SheetTitle: React$1.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogTitleProps & React$1.RefAttributes<HTMLHeadingElement>, "ref"> & React$1.RefAttributes<HTMLHeadingElement>>;
1012
+ declare const SheetDescription: React$1.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogDescriptionProps & React$1.RefAttributes<HTMLParagraphElement>, "ref"> & React$1.RefAttributes<HTMLParagraphElement>>;
1013
+
1014
+ declare const sideDrawerVariants: (props?: ({
1015
+ side?: "left" | "right" | null | undefined;
1016
+ width?: "sm" | "md" | "lg" | null | undefined;
1017
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
1018
+ interface SideDrawerProps extends VariantProps<typeof sideDrawerVariants> {
749
1019
  open: boolean;
750
1020
  onClose: () => void;
751
1021
  width?: "sm" | "md" | "lg";
752
1022
  side?: "right" | "left";
753
- children: React.ReactNode;
1023
+ children: React$1.ReactNode;
754
1024
  }
755
1025
  declare function SideDrawer({ open, onClose, width, side, children, }: SideDrawerProps): react_jsx_runtime.JSX.Element;
756
1026
  declare namespace SideDrawer {
@@ -766,49 +1036,82 @@ interface SideDrawerHeaderProps {
766
1036
  }
767
1037
  declare function SideDrawerHeader({ title, subtitle, onClose, className }: SideDrawerHeaderProps): react_jsx_runtime.JSX.Element;
768
1038
  interface SideDrawerBodyProps {
769
- children: React.ReactNode;
1039
+ children: React$1.ReactNode;
770
1040
  className?: string;
771
1041
  }
772
1042
  declare function SideDrawerBody({ children, className }: SideDrawerBodyProps): react_jsx_runtime.JSX.Element;
773
1043
  interface SideDrawerFooterProps {
774
- children: React.ReactNode;
1044
+ children: React$1.ReactNode;
775
1045
  className?: string;
776
1046
  }
777
1047
  declare function SideDrawerFooter({ children, className }: SideDrawerFooterProps): react_jsx_runtime.JSX.Element;
778
1048
 
1049
+ /**
1050
+ * Skeleton — animated placeholder. The `.skeleton` global class supplies
1051
+ * the shimmer animation (defined in tokens.css). All three primitives are
1052
+ * `aria-hidden` because they're decorative loading affordances.
1053
+ */
779
1054
  interface SkeletonProps extends React.HTMLAttributes<HTMLDivElement> {
780
1055
  className?: string;
781
1056
  }
782
- declare function Skeleton({ className, ...props }: SkeletonProps): react_jsx_runtime.JSX.Element;
1057
+ declare const Skeleton: React$1.ForwardRefExoticComponent<SkeletonProps & React$1.RefAttributes<HTMLDivElement>>;
783
1058
  interface SkeletonTextProps extends React.HTMLAttributes<HTMLDivElement> {
784
1059
  lines?: number;
785
1060
  }
786
- declare function SkeletonText({ lines, className, ...props }: SkeletonTextProps): react_jsx_runtime.JSX.Element;
1061
+ declare const SkeletonText: React$1.ForwardRefExoticComponent<SkeletonTextProps & React$1.RefAttributes<HTMLDivElement>>;
787
1062
  interface SkeletonCircleProps extends React.HTMLAttributes<HTMLDivElement> {
788
1063
  size?: number;
789
1064
  }
790
- declare function SkeletonCircle({ size, className, ...props }: SkeletonCircleProps): react_jsx_runtime.JSX.Element;
1065
+ declare const SkeletonCircle: React$1.ForwardRefExoticComponent<SkeletonCircleProps & React$1.RefAttributes<HTMLDivElement>>;
791
1066
 
792
- interface SliderProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, "type"> {
1067
+ interface SliderProps extends React$1.ComponentPropsWithoutRef<typeof SliderPrimitive.Root> {
1068
+ /** Optional inline label rendered above the track */
793
1069
  label?: string;
1070
+ /** When true, renders the current value to the right of the label */
794
1071
  showValue?: boolean;
795
1072
  }
796
- declare const Slider: react.ForwardRefExoticComponent<SliderProps & react.RefAttributes<HTMLInputElement>>;
1073
+ declare const Slider: React$1.ForwardRefExoticComponent<SliderProps & React$1.RefAttributes<HTMLSpanElement>>;
797
1074
 
798
- interface StarRatingProps {
1075
+ /**
1076
+ * StarRating — display-only rating atom built on lucide `Star`. Supports
1077
+ * fractional ratings (half-star fill via clip path) and a sized cva variant.
1078
+ *
1079
+ * Public API preserved: `rating`, `max`, `size`, `className`. The original
1080
+ * accepted `size` as a number; that still works (overrides the variant). The
1081
+ * new optional `sizeVariant` reads via cva (`sm` / `md` / `lg`).
1082
+ */
1083
+ declare const starRatingVariants: (props?: ({
1084
+ sizeVariant?: "sm" | "md" | "lg" | null | undefined;
1085
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
1086
+ interface StarRatingProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "role">, VariantProps<typeof starRatingVariants> {
799
1087
  rating: number;
800
1088
  max?: number;
1089
+ /** Pixel size override; if set, takes precedence over `sizeVariant`. */
801
1090
  size?: number;
802
- className?: string;
803
1091
  }
804
- declare function StarRating({ rating, max, size, className, }: StarRatingProps): react_jsx_runtime.JSX.Element;
1092
+ declare const StarRating: React$1.ForwardRefExoticComponent<StarRatingProps & React$1.RefAttributes<HTMLDivElement>>;
805
1093
 
1094
+ /**
1095
+ * Stat — paired numeric display + caption, the StatNum primitive from
1096
+ * spec §4. Numerals are set in `font-display` (Geist) at a fluid clamp size
1097
+ * with `font-variant-numeric: tabular-nums` for vertical alignment, ported
1098
+ * from the `.stat-num` rule in `_shared.css` (lines 152-161).
1099
+ */
806
1100
  interface StatProps extends React.HTMLAttributes<HTMLDivElement> {
807
1101
  value: string;
808
1102
  label: string;
809
1103
  }
810
- declare function Stat({ value, label, className, ...props }: StatProps): react_jsx_runtime.JSX.Element;
1104
+ declare const Stat: React$1.ForwardRefExoticComponent<StatProps & React$1.RefAttributes<HTMLDivElement>>;
811
1105
 
1106
+ /**
1107
+ * Stepper — custom progress indicator. No Radix equivalent.
1108
+ * Active step uses Pro purple; completed steps use the success palette;
1109
+ * connector lines pick up the same status. Supports horizontal (default)
1110
+ * and vertical orientation.
1111
+ *
1112
+ * Public API preserved: `steps`, `currentStep`, plus the new optional
1113
+ * `orientation` prop for vertical layouts.
1114
+ */
812
1115
  interface Step {
813
1116
  label: string;
814
1117
  description?: string;
@@ -816,70 +1119,68 @@ interface Step {
816
1119
  interface StepperProps extends React.HTMLAttributes<HTMLDivElement> {
817
1120
  steps: Step[];
818
1121
  currentStep: number;
1122
+ orientation?: "horizontal" | "vertical";
819
1123
  }
820
- declare function Stepper({ steps, currentStep, className, ...props }: StepperProps): react_jsx_runtime.JSX.Element;
1124
+ declare const Stepper: React$1.ForwardRefExoticComponent<StepperProps & React$1.RefAttributes<HTMLDivElement>>;
821
1125
 
822
- interface SubmitButtonProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "type"> {
1126
+ interface SubmitButtonProps extends Omit<ButtonProps, "type" | "loading"> {
823
1127
  pendingText?: string;
824
1128
  children: React.ReactNode;
825
1129
  }
826
- declare function SubmitButton({ pendingText, children, className, ...props }: SubmitButtonProps): react_jsx_runtime.JSX.Element;
1130
+ /**
1131
+ * SubmitButton — react-dom `useFormStatus`-aware Button.
1132
+ * Auto-disables and shows `pendingText` (or spinner) while the form is pending.
1133
+ */
1134
+ declare const SubmitButton: React$1.ForwardRefExoticComponent<SubmitButtonProps & React$1.RefAttributes<HTMLButtonElement>>;
827
1135
 
828
- declare const sizeConfig: {
829
- readonly sm: {
830
- readonly track: "h-5 w-9";
831
- readonly thumb: "size-3.5";
832
- readonly translate: "translate-x-4";
833
- };
834
- readonly md: {
835
- readonly track: "h-6 w-11";
836
- readonly thumb: "size-4.5";
837
- readonly translate: "translate-x-5";
838
- };
839
- };
840
- interface SwitchProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "onChange"> {
841
- checked?: boolean;
842
- defaultChecked?: boolean;
843
- onCheckedChange?: (checked: boolean) => void;
1136
+ declare const switchVariants: (props?: ({
1137
+ size?: "sm" | "md" | null | undefined;
1138
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
1139
+ interface SwitchProps extends Omit<React$1.ComponentPropsWithoutRef<typeof SwitchPrimitive.Root>, "size">, VariantProps<typeof switchVariants> {
844
1140
  label?: string;
845
- size?: keyof typeof sizeConfig;
846
1141
  }
847
- declare function Switch({ checked: controlledChecked, defaultChecked, onCheckedChange, label, size, className, id: providedId, ...props }: SwitchProps): react_jsx_runtime.JSX.Element;
1142
+ declare const Switch: React$1.ForwardRefExoticComponent<SwitchProps & React$1.RefAttributes<HTMLButtonElement>>;
848
1143
 
1144
+ /**
1145
+ * Table — semantic data-table primitives. Ports the `.data-table` rules
1146
+ * from `_shared.css` (lines 542-590):
1147
+ * - mono uppercase headers (10px, 0.12em tracking) on `bg-surface-2`
1148
+ * - 1px `border-rule` under header, `border-rule-soft` between rows
1149
+ * - 13px body cells in `text-fg-2`, hover row gets `bg-bg-2`
1150
+ *
1151
+ * Public API preserved: Table / TableHeader / TableBody / TableRow /
1152
+ * TableHead / TableCell / TableCaption. `wrapperClassName` still wraps
1153
+ * the responsive overflow container.
1154
+ */
849
1155
  interface TableProps extends React.TableHTMLAttributes<HTMLTableElement> {
1156
+ /** Class for the wrapping `div` that handles overflow. */
850
1157
  wrapperClassName?: string;
851
1158
  }
852
- declare function Table({ className, wrapperClassName, ...props }: TableProps): react_jsx_runtime.JSX.Element;
1159
+ declare const Table: React$1.ForwardRefExoticComponent<TableProps & React$1.RefAttributes<HTMLTableElement>>;
853
1160
  type TableHeaderProps = React.HTMLAttributes<HTMLTableSectionElement>;
854
- declare function TableHeader({ className, ...props }: TableHeaderProps): react_jsx_runtime.JSX.Element;
1161
+ declare const TableHeader: React$1.ForwardRefExoticComponent<TableHeaderProps & React$1.RefAttributes<HTMLTableSectionElement>>;
855
1162
  type TableBodyProps = React.HTMLAttributes<HTMLTableSectionElement>;
856
- declare function TableBody({ className, ...props }: TableBodyProps): react_jsx_runtime.JSX.Element;
1163
+ declare const TableBody: React$1.ForwardRefExoticComponent<TableBodyProps & React$1.RefAttributes<HTMLTableSectionElement>>;
1164
+ type TableFooterProps = React.HTMLAttributes<HTMLTableSectionElement>;
1165
+ declare const TableFooter: React$1.ForwardRefExoticComponent<TableFooterProps & React$1.RefAttributes<HTMLTableSectionElement>>;
857
1166
  type TableRowProps = React.HTMLAttributes<HTMLTableRowElement>;
858
- declare function TableRow({ className, ...props }: TableRowProps): react_jsx_runtime.JSX.Element;
1167
+ declare const TableRow: React$1.ForwardRefExoticComponent<TableRowProps & React$1.RefAttributes<HTMLTableRowElement>>;
859
1168
  type TableHeadProps = React.ThHTMLAttributes<HTMLTableCellElement>;
860
- declare function TableHead({ className, ...props }: TableHeadProps): react_jsx_runtime.JSX.Element;
1169
+ declare const TableHead: React$1.ForwardRefExoticComponent<TableHeadProps & React$1.RefAttributes<HTMLTableCellElement>>;
861
1170
  type TableCellProps = React.TdHTMLAttributes<HTMLTableCellElement>;
862
- declare function TableCell({ className, ...props }: TableCellProps): react_jsx_runtime.JSX.Element;
1171
+ declare const TableCell: React$1.ForwardRefExoticComponent<TableCellProps & React$1.RefAttributes<HTMLTableCellElement>>;
863
1172
  type TableCaptionProps = React.HTMLAttributes<HTMLTableCaptionElement>;
864
- declare function TableCaption({ className, ...props }: TableCaptionProps): react_jsx_runtime.JSX.Element;
1173
+ declare const TableCaption: React$1.ForwardRefExoticComponent<TableCaptionProps & React$1.RefAttributes<HTMLTableCaptionElement>>;
865
1174
 
866
- interface TabsProps extends React.HTMLAttributes<HTMLDivElement> {
867
- value?: string;
868
- defaultValue?: string;
869
- onValueChange?: (value: string) => void;
870
- }
871
- declare function Tabs({ value: controlledValue, defaultValue, onValueChange, children, className, ...props }: TabsProps): react_jsx_runtime.JSX.Element;
872
- type TabsListProps = React.HTMLAttributes<HTMLDivElement>;
873
- declare function TabsList({ children, className, ...props }: TabsListProps): react_jsx_runtime.JSX.Element;
874
- interface TabsTriggerProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
875
- value: string;
876
- variant?: "pill" | "underline";
1175
+ declare const Tabs: React$1.ForwardRefExoticComponent<Omit<TabsPrimitive.TabsProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
1176
+ declare const TabsList: React$1.ForwardRefExoticComponent<Omit<TabsPrimitive.TabsListProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
1177
+ declare const triggerVariants: (props?: ({
1178
+ variant?: "underline" | "pill" | null | undefined;
1179
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
1180
+ interface TabsTriggerProps extends React$1.ComponentPropsWithoutRef<typeof TabsPrimitive.Trigger>, VariantProps<typeof triggerVariants> {
877
1181
  }
878
- declare function TabsTrigger({ value, variant, children, className, ...props }: TabsTriggerProps): react_jsx_runtime.JSX.Element;
879
- interface TabsContentProps extends React.HTMLAttributes<HTMLDivElement> {
880
- value: string;
881
- }
882
- declare function TabsContent({ value, children, className, ...props }: TabsContentProps): react_jsx_runtime.JSX.Element | null;
1182
+ declare const TabsTrigger: React$1.ForwardRefExoticComponent<TabsTriggerProps & React$1.RefAttributes<HTMLButtonElement>>;
1183
+ declare const TabsContent: React$1.ForwardRefExoticComponent<Omit<TabsPrimitive.TabsContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
883
1184
 
884
1185
  interface TeamMember {
885
1186
  id: string;
@@ -892,16 +1193,25 @@ interface TeamMemberSelectProps {
892
1193
  onValueChange: (value: string) => void;
893
1194
  includeUnassigned?: boolean;
894
1195
  placeholder?: string;
1196
+ className?: string;
1197
+ }
1198
+ declare function TeamMemberSelect({ teamMembers, currentUserId, value, onValueChange, includeUnassigned, placeholder, className, }: TeamMemberSelectProps): react_jsx_runtime.JSX.Element;
1199
+ declare namespace TeamMemberSelect {
1200
+ var displayName: string;
895
1201
  }
896
- declare function TeamMemberSelect({ teamMembers, currentUserId, value, onValueChange, includeUnassigned, placeholder, }: TeamMemberSelectProps): react_jsx_runtime.JSX.Element;
897
1202
 
898
- interface TextareaProps extends React.TextareaHTMLAttributes<HTMLTextAreaElement> {
1203
+ declare const textareaVariants: (props?: ({
1204
+ variant?: "default" | "ghost" | null | undefined;
1205
+ inputSize?: "sm" | "md" | "lg" | null | undefined;
1206
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
1207
+ type TextareaVariants = VariantProps<typeof textareaVariants>;
1208
+ interface TextareaProps extends Omit<React.TextareaHTMLAttributes<HTMLTextAreaElement>, "size">, TextareaVariants {
899
1209
  label?: string;
900
1210
  error?: string;
901
1211
  showCount?: boolean;
902
1212
  autoResize?: boolean;
903
1213
  }
904
- declare const Textarea: react.ForwardRefExoticComponent<TextareaProps & react.RefAttributes<HTMLTextAreaElement>>;
1214
+ declare const Textarea: React$1.ForwardRefExoticComponent<TextareaProps & React$1.RefAttributes<HTMLTextAreaElement>>;
905
1215
 
906
1216
  type ToastVariant = "default" | "success" | "destructive" | "warning";
907
1217
  interface Toast {
@@ -912,7 +1222,8 @@ interface Toast {
912
1222
  duration?: number;
913
1223
  }
914
1224
  interface ToastContextValue {
915
- toast: (options: Omit<Toast, "id">) => void;
1225
+ toast: (options: Omit<Toast, "id">) => string;
1226
+ dismiss: (id?: string) => void;
916
1227
  }
917
1228
  declare function useToast(): ToastContextValue;
918
1229
  interface ToastProviderProps {
@@ -920,37 +1231,562 @@ interface ToastProviderProps {
920
1231
  }
921
1232
  declare function ToastProvider({ children }: ToastProviderProps): react_jsx_runtime.JSX.Element;
922
1233
 
923
- interface ToggleGroupProps extends React.HTMLAttributes<HTMLDivElement> {
924
- type?: "single" | "multiple";
925
- value?: string[];
926
- defaultValue?: string[];
927
- onValueChange?: (value: string[]) => void;
928
- variant?: "default" | "outline";
1234
+ declare const itemVariants: (props?: ({
1235
+ variant?: "default" | "outline" | null | undefined;
1236
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
1237
+ type ToggleGroupRootProps = React$1.ComponentPropsWithoutRef<typeof ToggleGroupPrimitive.Root> & VariantProps<typeof itemVariants>;
1238
+ declare const ToggleGroup: React$1.ForwardRefExoticComponent<ToggleGroupRootProps & React$1.RefAttributes<HTMLDivElement>>;
1239
+ interface ToggleGroupItemProps extends React$1.ComponentPropsWithoutRef<typeof ToggleGroupPrimitive.Item>, VariantProps<typeof itemVariants> {
1240
+ }
1241
+ declare const ToggleGroupItem: React$1.ForwardRefExoticComponent<ToggleGroupItemProps & React$1.RefAttributes<HTMLButtonElement>>;
1242
+
1243
+ declare const TooltipProvider: React$1.FC<TooltipPrimitive.TooltipProviderProps>;
1244
+ declare const TooltipTrigger: React$1.ForwardRefExoticComponent<TooltipPrimitive.TooltipTriggerProps & React$1.RefAttributes<HTMLButtonElement>>;
1245
+ declare const TooltipPortal: React$1.FC<TooltipPrimitive.TooltipPortalProps>;
1246
+ interface TooltipProps extends React$1.ComponentPropsWithoutRef<typeof TooltipPrimitive.Root> {
1247
+ /**
1248
+ * Backwards-compat alias for Radix's `delayDuration`. Kept so existing
1249
+ * call sites that passed `delayMs={…}` keep working unchanged.
1250
+ */
1251
+ delayMs?: number;
1252
+ /**
1253
+ * Optional delayDuration applied to the implicit Provider. Forwarded
1254
+ * here when no surrounding `<TooltipProvider>` is present.
1255
+ */
1256
+ delayDuration?: number;
1257
+ }
1258
+ declare const Tooltip: {
1259
+ ({ delayMs, delayDuration, children, ...props }: TooltipProps): react_jsx_runtime.JSX.Element;
1260
+ displayName: string;
1261
+ };
1262
+ declare const TooltipContent: React$1.ForwardRefExoticComponent<Omit<TooltipPrimitive.TooltipContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
1263
+
1264
+ /**
1265
+ * VisuallyHidden — hides content from sighted users while keeping it
1266
+ * available to assistive tech. Backed by `@radix-ui/react-visually-hidden`
1267
+ * (the canonical implementation; survives strict-mode + portals).
1268
+ */
1269
+ interface VisuallyHiddenProps extends React.ComponentPropsWithoutRef<typeof VisuallyHiddenPrimitive.Root> {
1270
+ children: React.ReactNode;
929
1271
  }
930
- declare function ToggleGroup({ type, value: controlledValue, defaultValue, onValueChange, variant, children, className, ...props }: ToggleGroupProps): react_jsx_runtime.JSX.Element;
931
- interface ToggleGroupItemProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
932
- value: string;
1272
+ declare const VisuallyHidden: React$1.ForwardRefExoticComponent<VisuallyHiddenProps & React$1.RefAttributes<HTMLSpanElement>>;
1273
+
1274
+ type ShellProps = React.HTMLAttributes<HTMLDivElement>;
1275
+ declare const Shell: React$1.ForwardRefExoticComponent<ShellProps & React$1.RefAttributes<HTMLDivElement>>;
1276
+ type MainProps = React.HTMLAttributes<HTMLElement>;
1277
+ declare const Main: React$1.ForwardRefExoticComponent<MainProps & React$1.RefAttributes<HTMLElement>>;
1278
+ interface ContentProps extends React.HTMLAttributes<HTMLDivElement> {
1279
+ /**
1280
+ * Override the bottom padding only — the rest of the content area keeps
1281
+ * `--content-pad` so the header alignment stays intact. Use this on
1282
+ * long-scroll pages (Kanban, document trees, large tables) that want
1283
+ * extra breathing room beneath the last row.
1284
+ *
1285
+ * Accepts any CSS length (e.g. `"64px"`, `"4rem"`). Omit to inherit
1286
+ * the symmetric default.
1287
+ */
1288
+ padBottom?: string;
1289
+ }
1290
+ declare const Content: React$1.ForwardRefExoticComponent<ContentProps & React$1.RefAttributes<HTMLDivElement>>;
1291
+
1292
+ type SidebarState = "expanded" | "rail";
1293
+ interface SidebarContextValue {
1294
+ state: SidebarState;
1295
+ setState: (next: SidebarState) => void;
1296
+ toggle: () => void;
1297
+ collapsible: boolean;
1298
+ }
1299
+ declare function useSidebarState(): SidebarContextValue;
1300
+ interface SidebarProviderProps {
1301
+ children?: React$1.ReactNode;
1302
+ state?: SidebarState;
1303
+ defaultState?: SidebarState;
1304
+ onStateChange?: (next: SidebarState) => void;
1305
+ /** Persist the user's intent across reloads under this localStorage key. */
1306
+ storageKey?: string;
1307
+ /** Global toggle shortcut. Pass `null` to disable. Defaults to `Mod+\`. */
1308
+ shortcut?: string | null;
1309
+ }
1310
+ declare function SidebarProvider({ children, state: controlled, defaultState, onStateChange, storageKey, shortcut, }: SidebarProviderProps): react_jsx_runtime.JSX.Element;
1311
+ declare namespace SidebarProvider {
1312
+ var displayName: string;
1313
+ }
1314
+ interface SidebarProps extends React$1.HTMLAttributes<HTMLElement> {
1315
+ /**
1316
+ * Opt into the rail / hover-peek behavior. When false (default), the
1317
+ * sidebar always renders expanded — the legacy behavior. When true,
1318
+ * the sidebar reads pinned state from <SidebarProvider>; if no
1319
+ * provider is mounted it still renders expanded, so dropping
1320
+ * `collapsible` alone is a no-op.
1321
+ */
1322
+ collapsible?: boolean;
1323
+ }
1324
+ declare const Sidebar: React$1.ForwardRefExoticComponent<SidebarProps & React$1.RefAttributes<HTMLElement>>;
1325
+ interface SidebarTriggerProps extends React$1.ButtonHTMLAttributes<HTMLButtonElement> {
1326
+ expandLabel?: string;
1327
+ collapseLabel?: string;
1328
+ }
1329
+ declare const SidebarTrigger: React$1.ForwardRefExoticComponent<SidebarTriggerProps & React$1.RefAttributes<HTMLButtonElement>>;
1330
+ type SidebarBrandProps = React$1.HTMLAttributes<HTMLDivElement>;
1331
+ declare const SidebarBrand: React$1.ForwardRefExoticComponent<SidebarBrandProps & React$1.RefAttributes<HTMLDivElement>>;
1332
+ /**
1333
+ * Text portion of the brand row. Hides itself when the sidebar
1334
+ * collapses to a rail. Use to wrap product names / wordmarks so the
1335
+ * logo glyph alone remains visible at 64px.
1336
+ */
1337
+ type SidebarBrandTextProps = React$1.HTMLAttributes<HTMLSpanElement>;
1338
+ declare const SidebarBrandText: React$1.ForwardRefExoticComponent<SidebarBrandTextProps & React$1.RefAttributes<HTMLSpanElement>>;
1339
+ interface SidebarSectionProps extends React$1.HTMLAttributes<HTMLDivElement> {
1340
+ label?: React$1.ReactNode;
1341
+ /**
1342
+ * Label color tone. Encodes the *meaning* of the section's
1343
+ * priority in the scan path:
1344
+ * - `"pro"` (default) — Pro-purple, for primary day-to-day work.
1345
+ * - `"muted"` — `text-fg-3`, for system-level or settings groups
1346
+ * that should sit lower in the visual hierarchy.
1347
+ *
1348
+ * Mirrors the `tone` API on `<SidebarLinkBadge>`.
1349
+ */
1350
+ tone?: "pro" | "muted";
1351
+ }
1352
+ declare const SidebarSection: React$1.ForwardRefExoticComponent<SidebarSectionProps & React$1.RefAttributes<HTMLDivElement>>;
1353
+ interface SidebarLinkProps extends React$1.AnchorHTMLAttributes<HTMLAnchorElement> {
1354
+ /** Required when rendered as `<a>`; ignored when `asChild` is true. */
1355
+ href?: string;
1356
+ icon?: React$1.ReactNode;
1357
+ active?: boolean;
1358
+ /**
1359
+ * Render via Radix `<Slot>` so the consumer can wrap a router-aware
1360
+ * component (e.g. Next.js `<Link>`, React Router `<NavLink>`) that
1361
+ * owns `href` and prefetch behavior. Without this, sidebar clicks
1362
+ * bypass client-side routing and trigger full page loads.
1363
+ */
1364
+ asChild?: boolean;
1365
+ }
1366
+ declare const SidebarLink: React$1.ForwardRefExoticComponent<SidebarLinkProps & React$1.RefAttributes<HTMLAnchorElement>>;
1367
+ /**
1368
+ * Label slot for `<SidebarLink asChild>` consumers.
1369
+ *
1370
+ * The default (non-`asChild`) `SidebarLink` already hides its label in rail
1371
+ * mode. When consumers opt into `asChild` to wrap a router-aware element,
1372
+ * the design system can't reach inside to apply that rule — so consumers
1373
+ * compose this atom around their label text. Removes the leaky requirement
1374
+ * that every consumer re-stamp `group-data-[labels=hide]/sidebar:hidden`
1375
+ * on their inner spans.
1376
+ */
1377
+ type SidebarLinkLabelProps = React$1.HTMLAttributes<HTMLSpanElement>;
1378
+ declare const SidebarLinkLabel: React$1.ForwardRefExoticComponent<SidebarLinkLabelProps & React$1.RefAttributes<HTMLSpanElement>>;
1379
+ /**
1380
+ * Optional trailing action inside a `<SidebarLink asChild>` (e.g. an
1381
+ * expand/collapse chevron for a nested section). Hides in rail because the
1382
+ * action is not meaningful when labels themselves are hidden.
1383
+ */
1384
+ type SidebarLinkActionProps = React$1.HTMLAttributes<HTMLSpanElement>;
1385
+ declare const SidebarLinkAction: React$1.ForwardRefExoticComponent<SidebarLinkActionProps & React$1.RefAttributes<HTMLSpanElement>>;
1386
+ declare const sidebarLinkBadgeVariants: (props?: ({
1387
+ tone?: "warning" | "default" | "neutral" | "danger" | null | undefined;
1388
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
1389
+ type SidebarLinkBadgeVariants = VariantProps<typeof sidebarLinkBadgeVariants>;
1390
+ interface SidebarLinkBadgeProps extends React$1.HTMLAttributes<HTMLSpanElement>, SidebarLinkBadgeVariants {
1391
+ }
1392
+ declare const SidebarLinkBadge: React$1.ForwardRefExoticComponent<SidebarLinkBadgeProps & React$1.RefAttributes<HTMLSpanElement>>;
1393
+ interface SidebarLinkGroupProps extends Omit<React$1.HTMLAttributes<HTMLDivElement>, "onClick"> {
1394
+ /**
1395
+ * Stable id used for exclusive-mode coordination. Defaults to a
1396
+ * generated React id, which is stable across renders within a
1397
+ * single tree.
1398
+ */
1399
+ id?: string;
1400
+ icon?: React$1.ReactNode;
1401
+ label: React$1.ReactNode;
1402
+ /** Body href — the body row renders as `<a href>`. */
1403
+ href?: string;
1404
+ /** Highlights the body row. Independent of the open state. */
1405
+ active?: boolean;
1406
+ defaultOpen?: boolean;
1407
+ open?: boolean;
1408
+ onOpenChange?: (open: boolean) => void;
1409
+ /**
1410
+ * Called when the body row is clicked, before the open state is
1411
+ * updated and before the section's exclusive lock is claimed. Call
1412
+ * `e.preventDefault()` to opt out of both. Use for navigation that
1413
+ * needs to run *before* the accordion behavior (rare).
1414
+ */
1415
+ onActivate?: (e: React$1.MouseEvent<HTMLAnchorElement>) => void;
1416
+ children?: React$1.ReactNode;
1417
+ }
1418
+ declare const SidebarLinkGroup: React$1.ForwardRefExoticComponent<SidebarLinkGroupProps & React$1.RefAttributes<HTMLDivElement>>;
1419
+ type SidebarFooterProps = React$1.HTMLAttributes<HTMLDivElement>;
1420
+ declare const SidebarFooter: React$1.ForwardRefExoticComponent<SidebarFooterProps & React$1.RefAttributes<HTMLDivElement>>;
1421
+ interface SidebarUserProps extends React$1.HTMLAttributes<HTMLDivElement> {
1422
+ name: string;
1423
+ subtitle?: React$1.ReactNode;
1424
+ avatarSrc?: string | null;
933
1425
  }
934
- declare function ToggleGroupItem({ value, children, className, ...props }: ToggleGroupItemProps): react_jsx_runtime.JSX.Element;
1426
+ declare const SidebarUser: React$1.ForwardRefExoticComponent<SidebarUserProps & React$1.RefAttributes<HTMLDivElement>>;
935
1427
 
936
- type Side = "top" | "right" | "bottom" | "left";
937
- interface TooltipProps {
938
- children: React.ReactNode;
939
- delayMs?: number;
1428
+ /**
1429
+ * AppHeader — sticky 56px-tall top bar mounted inside `<Main>`, above
1430
+ * `<Content>`. Ports `.app-header` from `_shared.css` (lines 393-404).
1431
+ *
1432
+ * Children flow horizontally:
1433
+ * breadcrumb → title → flex-1 spacer → search → actions
1434
+ *
1435
+ * Sub-components are layout slots; the consumer composes them in any order
1436
+ * and the AppHeaderSearch's `flex-1` collapses any remaining space.
1437
+ */
1438
+ type AppHeaderProps = React.HTMLAttributes<HTMLElement>;
1439
+ declare const AppHeader: React$1.ForwardRefExoticComponent<AppHeaderProps & React$1.RefAttributes<HTMLElement>>;
1440
+ type AppHeaderBreadcrumbProps = React.HTMLAttributes<HTMLElement>;
1441
+ declare const AppHeaderBreadcrumb: React$1.ForwardRefExoticComponent<AppHeaderBreadcrumbProps & React$1.RefAttributes<HTMLElement>>;
1442
+ type AppHeaderTitleProps = React.HTMLAttributes<HTMLSpanElement>;
1443
+ /**
1444
+ * App-shell title rendered inside the sticky header.
1445
+ *
1446
+ * Intentionally a `<span>` rather than `<h1>`: the page below the chrome
1447
+ * owns its own document heading (`<h1>` in the page body). The header is
1448
+ * navigational chrome; making it the page's `<h1>` would couple every page
1449
+ * heading to the chrome wrapper and confuse screen-reader heading nav.
1450
+ */
1451
+ declare const AppHeaderTitle: React$1.ForwardRefExoticComponent<AppHeaderTitleProps & React$1.RefAttributes<HTMLSpanElement>>;
1452
+ interface AppHeaderSearchProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
1453
+ /** Placeholder text rendered inside the search trigger. */
1454
+ placeholder?: string;
1455
+ /** Keyboard shortcut hint shown on the right. Defaults to ⌘K. */
1456
+ shortcut?: React.ReactNode;
940
1457
  }
941
- declare function Tooltip({ children, delayMs }: TooltipProps): react_jsx_runtime.JSX.Element;
942
- type TooltipTriggerProps = React.HTMLAttributes<HTMLSpanElement>;
943
- declare function TooltipTrigger({ children, className, ...props }: TooltipTriggerProps): react_jsx_runtime.JSX.Element;
944
- interface TooltipContentProps extends React.HTMLAttributes<HTMLDivElement> {
945
- side?: Side;
1458
+ declare const AppHeaderSearch: React$1.ForwardRefExoticComponent<AppHeaderSearchProps & React$1.RefAttributes<HTMLButtonElement>>;
1459
+ type AppHeaderActionsProps = React.HTMLAttributes<HTMLDivElement>;
1460
+ declare const AppHeaderActions: React$1.ForwardRefExoticComponent<AppHeaderActionsProps & React$1.RefAttributes<HTMLDivElement>>;
1461
+
1462
+ /**
1463
+ * PageHeader — top-of-page title block: eyebrow → headline → meta row.
1464
+ * Ports `.page-header` rules from `_shared.css` (lines 486-498).
1465
+ *
1466
+ * `title` is a string per the consumer-side contract (see
1467
+ * `assure-pro-spec/from-lighttaxes-claude.md`, "Page header" section).
1468
+ * If a consumer needs richer markup in the headline they should compose
1469
+ * around PageHeader rather than via this prop.
1470
+ */
1471
+ interface PageHeaderProps extends Omit<React.HTMLAttributes<HTMLElement>, "title"> {
1472
+ /** Slot above the title — usually `<Eyebrow numeric>`. */
1473
+ eyebrow?: React.ReactNode;
1474
+ /** Page title text. */
1475
+ title: string;
1476
+ /** Slot below the title for pills, specs, separators. */
1477
+ meta?: React.ReactNode;
946
1478
  }
947
- declare function TooltipContent({ side, children, className, ...props }: TooltipContentProps): react.ReactPortal | null;
1479
+ declare const PageHeader: React$1.ForwardRefExoticComponent<PageHeaderProps & React$1.RefAttributes<HTMLElement>>;
1480
+ type PageHeaderSpecProps = React.HTMLAttributes<HTMLSpanElement>;
1481
+ /**
1482
+ * PageHeaderSpec — small `.spec`-style span (Geist Mono w/ tnum/lnum/ss01).
1483
+ * Used inside the `meta` slot for numeric facts ("4 due today",
1484
+ * "EIN ·· 12-3456789").
1485
+ */
1486
+ declare const PageHeaderSpec: React$1.ForwardRefExoticComponent<PageHeaderSpecProps & React$1.RefAttributes<HTMLSpanElement>>;
1487
+ type PageHeaderSepProps = React.HTMLAttributes<HTMLSpanElement>;
1488
+ /** PageHeaderSep — the `·` dot separator used between meta items. */
1489
+ declare const PageHeaderSep: React$1.ForwardRefExoticComponent<PageHeaderSepProps & React$1.RefAttributes<HTMLSpanElement>>;
948
1490
 
949
- interface VisuallyHiddenProps extends React.HTMLAttributes<HTMLSpanElement> {
950
- children: React.ReactNode;
1491
+ interface DataTableProps extends React.HTMLAttributes<HTMLDivElement> {
1492
+ /** When true, renders the table card with a flat top edge so it
1493
+ * visually attaches to a `<DataTableToolbar>` above it. */
1494
+ withToolbar?: boolean;
1495
+ }
1496
+ /**
1497
+ * DataTable — outer wrapper. Children are typically:
1498
+ * <DataTableToolbar /> + <table> + <DataTablePagination />.
1499
+ *
1500
+ * The `<table>` is hand-written by the consumer; this wrapper renders
1501
+ * the surface card chrome on its descendant `<table>` element via a
1502
+ * Tailwind arbitrary-variant selector. When `withToolbar` is set, the
1503
+ * top corners flatten so the table visually joins the toolbar above.
1504
+ *
1505
+ * Children render in document order — toolbar (if any) then `<table>`
1506
+ * then pagination — with the table card and the pagination not sharing
1507
+ * a background.
1508
+ */
1509
+ declare const DataTable: React$1.ForwardRefExoticComponent<DataTableProps & React$1.RefAttributes<HTMLDivElement>>;
1510
+ type DataTableToolbarProps = React.HTMLAttributes<HTMLDivElement>;
1511
+ /**
1512
+ * DataTableToolbar — top row above the table. Renders the same surface
1513
+ * card as `<table>`, but with rounded corners only on top so the table
1514
+ * below visually attaches to it (see `.toolbar` rules in `_shared.css`,
1515
+ * lines 592-633).
1516
+ */
1517
+ declare const DataTableToolbar: React$1.ForwardRefExoticComponent<DataTableToolbarProps & React$1.RefAttributes<HTMLDivElement>>;
1518
+ interface DataTableSearchProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, "size"> {
1519
+ /** Override the default placeholder. */
1520
+ placeholder?: string;
1521
+ }
1522
+ /**
1523
+ * DataTableSearch — small search input slot inside the toolbar. Wraps
1524
+ * the `Input` primitive at `inputSize="sm"` with a leading search icon.
1525
+ */
1526
+ declare const DataTableSearch: React$1.ForwardRefExoticComponent<DataTableSearchProps & React$1.RefAttributes<HTMLInputElement>>;
1527
+ type DataTableSpacerProps = React.HTMLAttributes<HTMLSpanElement>;
1528
+ /** DataTableSpacer — `flex-1` spacer for arranging toolbar items. */
1529
+ declare const DataTableSpacer: React$1.ForwardRefExoticComponent<DataTableSpacerProps & React$1.RefAttributes<HTMLSpanElement>>;
1530
+ interface DataTableResultsCountProps extends Omit<React.HTMLAttributes<HTMLSpanElement>, "children"> {
1531
+ current: number;
1532
+ total: number;
1533
+ }
1534
+ /**
1535
+ * DataTableResultsCount — small spec-styled "12 of 247" indicator.
1536
+ * Mono + tabular per `.results-count` (`_shared.css` lines 628-633).
1537
+ */
1538
+ declare const DataTableResultsCount: React$1.ForwardRefExoticComponent<DataTableResultsCountProps & React$1.RefAttributes<HTMLSpanElement>>;
1539
+ /**
1540
+ * DataTableHead — wraps `<thead>`. Renders the surface-2 header row
1541
+ * with the rule-bottom divider (`.data-table th` styling lives on the
1542
+ * `DataTableHeader` cells themselves).
1543
+ */
1544
+ type DataTableHeadProps = React.HTMLAttributes<HTMLTableSectionElement>;
1545
+ declare const DataTableHead: React$1.ForwardRefExoticComponent<DataTableHeadProps & React$1.RefAttributes<HTMLTableSectionElement>>;
1546
+ type DataTableBodyProps = React.HTMLAttributes<HTMLTableSectionElement>;
1547
+ /** DataTableBody — wraps `<tbody>`. Last row drops its bottom border. */
1548
+ declare const DataTableBody: React$1.ForwardRefExoticComponent<DataTableBodyProps & React$1.RefAttributes<HTMLTableSectionElement>>;
1549
+ interface DataTableRowProps extends React.HTMLAttributes<HTMLTableRowElement> {
1550
+ /** Pro-tinted highlight for the current selection. */
1551
+ selected?: boolean;
1552
+ }
1553
+ /**
1554
+ * DataTableRow — `<tr>` with hover styling. `selected` switches the
1555
+ * row to the Pro-bg highlight (matches `data-[state=selected]` on the
1556
+ * Table primitive).
1557
+ */
1558
+ declare const DataTableRow: React$1.ForwardRefExoticComponent<DataTableRowProps & React$1.RefAttributes<HTMLTableRowElement>>;
1559
+ type SortDirection = "asc" | "desc";
1560
+ interface DataTableHeaderProps extends React.ThHTMLAttributes<HTMLTableCellElement> {
1561
+ /** When true, the cell becomes a clickable button that toggles sort
1562
+ * state and renders a chevron indicator. */
1563
+ sortable?: boolean;
1564
+ /** Initial sort direction when the header mounts in a sorted state. */
1565
+ defaultSort?: SortDirection;
1566
+ /** Optional controlled sort state. When provided, `onSortChange` should
1567
+ * also be wired up — the header becomes fully controlled. */
1568
+ sort?: SortDirection | null;
1569
+ /** Fires whenever the user clicks a sortable header. */
1570
+ onSortChange?: (sort: SortDirection | null) => void;
1571
+ }
1572
+ /**
1573
+ * DataTableHeader — `<th>` cell. Mono uppercase label with optional
1574
+ * sort indicator. Sort cycle when uncontrolled:
1575
+ * unsorted → asc → desc → unsorted (3-state).
1576
+ * `defaultSort` seeds the initial state. Pass `sort` + `onSortChange`
1577
+ * for fully-controlled usage when an upstream store owns the sort.
1578
+ */
1579
+ declare const DataTableHeader: React$1.ForwardRefExoticComponent<DataTableHeaderProps & React$1.RefAttributes<HTMLTableCellElement>>;
1580
+ type DataTableCellProps = React.TdHTMLAttributes<HTMLTableCellElement>;
1581
+ /** DataTableCell — default cell, 13px / fg-2. */
1582
+ declare const DataTableCell: React$1.ForwardRefExoticComponent<DataTableCellProps & React$1.RefAttributes<HTMLTableCellElement>>;
1583
+ /**
1584
+ * DataTableCellName — primary identifier of the row. Display font,
1585
+ * fg color, medium weight (matches `.cell-name` in `_shared.css`
1586
+ * line 586).
1587
+ */
1588
+ declare const DataTableCellName: React$1.ForwardRefExoticComponent<DataTableCellProps & React$1.RefAttributes<HTMLTableCellElement>>;
1589
+ /**
1590
+ * DataTableCellMono — currency / IDs / numerics. Geist Mono with
1591
+ * tabular numerals and the same tight tracking the spec uses
1592
+ * (`.cell-mono`, `_shared.css` lines 579-584).
1593
+ */
1594
+ declare const DataTableCellMono: React$1.ForwardRefExoticComponent<DataTableCellProps & React$1.RefAttributes<HTMLTableCellElement>>;
1595
+ /**
1596
+ * DataTableCellId — muted mono ID (EIN, UUID, "5h ago"). Matches
1597
+ * `.cell-mono.cell-id` from the spec.
1598
+ */
1599
+ declare const DataTableCellId: React$1.ForwardRefExoticComponent<DataTableCellProps & React$1.RefAttributes<HTMLTableCellElement>>;
1600
+ interface DataTableCellDueProps extends Omit<React.TdHTMLAttributes<HTMLTableCellElement>, "children"> {
1601
+ /** Date this row is due. */
1602
+ value: Date;
1603
+ /** Optional override for the displayed label (defaults to the
1604
+ * formatted date). */
1605
+ children?: ReactNode;
1606
+ }
1607
+ /**
1608
+ * DataTableCellDue — accepts a Date and auto-colors:
1609
+ * diff < 0 → text-danger-fg (overdue)
1610
+ * diff < 14d → text-warning-fg (due-near)
1611
+ * otherwise → text-fg-3 (default)
1612
+ *
1613
+ * The 14-day threshold and day-rounding (`Math.floor`) match the
1614
+ * `.cell-due-near` / `.cell-due-overdue` CSS classes in the mockup.
1615
+ */
1616
+ declare const DataTableCellDue: React$1.ForwardRefExoticComponent<DataTableCellDueProps & React$1.RefAttributes<HTMLTableCellElement>>;
1617
+ interface DataTableCheckboxProps extends Omit<React.TdHTMLAttributes<HTMLTableCellElement>, "onChange" | "defaultChecked"> {
1618
+ /** Forwarded to the inner `Checkbox` primitive. */
1619
+ checked?: boolean | "indeterminate";
1620
+ defaultChecked?: boolean | "indeterminate";
1621
+ onCheckedChange?: (checked: boolean | "indeterminate") => void;
1622
+ /** Accessible label for the checkbox (e.g. "Select row Acme Corp."). */
1623
+ ariaLabel?: string;
1624
+ disabled?: boolean;
1625
+ /** Render the cell as `<th>` (for the select-all header) instead of `<td>`. */
1626
+ asHeader?: boolean;
1627
+ }
1628
+ /**
1629
+ * DataTableCheckbox — `<td>` containing the row-selection checkbox.
1630
+ * Tightened to a 32px column with no right padding to match
1631
+ * `.row-checkbox` in the spec.
1632
+ */
1633
+ declare const DataTableCheckbox: React$1.ForwardRefExoticComponent<DataTableCheckboxProps & React$1.RefAttributes<HTMLTableCellElement>>;
1634
+ interface DataTablePaginationProps extends Omit<React.HTMLAttributes<HTMLElement>, "onChange"> {
1635
+ /** 1-indexed current page. */
1636
+ current: number;
1637
+ /** Total number of items across all pages. */
1638
+ total: number;
1639
+ /** Items per page. Default 25. */
1640
+ pageSize?: number;
1641
+ onPageChange?: (page: number) => void;
1642
+ siblingCount?: number;
1643
+ }
1644
+ /**
1645
+ * DataTablePagination — full pagination strip. Wraps the existing
1646
+ * `Pagination` primitive: derives `pageCount` from `total / pageSize`
1647
+ * and forwards the page label ("1–25 of 327"). Page size defaults to
1648
+ * 25 (the consumer contract did not specify; this matches the most
1649
+ * common firm-app table page size).
1650
+ */
1651
+ declare const DataTablePagination: React$1.ForwardRefExoticComponent<DataTablePaginationProps & React$1.RefAttributes<HTMLElement>>;
1652
+
1653
+ /**
1654
+ * Detail layout composites — port of the `.detail-grid` / `.detail-spine`
1655
+ * pattern from `_shared.css` (lines 814-822) and the canonical detail page
1656
+ * mockup (`assure-pro-spec/mockups/04-client-detail.html`).
1657
+ *
1658
+ * Two-column layout: a sticky left rail (the "spine", 320px) holding
1659
+ * identity + key facts, and a scrollable main column for tabs, sections,
1660
+ * tables, and activity feeds.
1661
+ */
1662
+ type DetailGridProps = React.HTMLAttributes<HTMLDivElement>;
1663
+ declare const DetailGrid: React$1.ForwardRefExoticComponent<DetailGridProps & React$1.RefAttributes<HTMLDivElement>>;
1664
+ type DetailSpineProps = React.HTMLAttributes<HTMLElement>;
1665
+ declare const DetailSpine: React$1.ForwardRefExoticComponent<DetailSpineProps & React$1.RefAttributes<HTMLElement>>;
1666
+ interface DetailSpineHeaderProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "title"> {
1667
+ /** Image src or initials/name string passed through to <Avatar>. */
1668
+ avatar: string;
1669
+ /** Display name / entity title. */
1670
+ title: string;
1671
+ /** Smaller line under the title — entity type, classification, etc. */
1672
+ subtitle: string;
1673
+ }
1674
+ declare const DetailSpineHeader: React$1.ForwardRefExoticComponent<DetailSpineHeaderProps & React$1.RefAttributes<HTMLDivElement>>;
1675
+ interface DetailSpineSectionProps extends React.HTMLAttributes<HTMLDivElement> {
1676
+ /** Small caps label rendered above the section content. */
1677
+ eyebrow: string;
951
1678
  }
952
- declare function VisuallyHidden({ children, className, ...props }: VisuallyHiddenProps): react_jsx_runtime.JSX.Element;
1679
+ declare const DetailSpineSection: React$1.ForwardRefExoticComponent<DetailSpineSectionProps & React$1.RefAttributes<HTMLDivElement>>;
1680
+ type DetailSpineStatsProps = React.HTMLAttributes<HTMLDivElement>;
1681
+ declare const DetailSpineStats: React$1.ForwardRefExoticComponent<DetailSpineStatsProps & React$1.RefAttributes<HTMLDivElement>>;
1682
+ type DetailMainProps = React.HTMLAttributes<HTMLElement>;
1683
+ declare const DetailMain: React$1.ForwardRefExoticComponent<DetailMainProps & React$1.RefAttributes<HTMLElement>>;
1684
+
1685
+ /**
1686
+ * ActivityList — vertical feed of activity rows.
1687
+ * Ports `.activity-list` / `.activity-item` from `_shared.css` (lines 635-664)
1688
+ * with the simplified row API from `from-lighttaxes-claude.md` (line 71):
1689
+ *
1690
+ * <ActivityList>
1691
+ * <ActivityItem dot="success" actor="Anna" text="filed" target="1120S" time="2h ago" />
1692
+ * </ActivityList>
1693
+ */
1694
+ type ActivityListProps = React.HTMLAttributes<HTMLUListElement>;
1695
+ declare const ActivityList: React$1.ForwardRefExoticComponent<ActivityListProps & React$1.RefAttributes<HTMLUListElement>>;
1696
+ type ActivityDotVariant = "default" | "success" | "warn" | "accent";
1697
+ interface ActivityItemProps extends Omit<React.LiHTMLAttributes<HTMLLIElement>, "children"> {
1698
+ dot?: ActivityDotVariant;
1699
+ actor: string;
1700
+ text: string;
1701
+ target?: string;
1702
+ time: string;
1703
+ }
1704
+ declare const ActivityItem: React$1.ForwardRefExoticComponent<ActivityItemProps & React$1.RefAttributes<HTMLLIElement>>;
1705
+
1706
+ /**
1707
+ * Kanban — flex container for board columns.
1708
+ * Ports `.kanban` / `.kanban-col` / `.kanban-card` from `_shared.css`
1709
+ * (lines 700-778). API per `from-lighttaxes-claude.md` line 81-84.
1710
+ */
1711
+ type KanbanProps = React.HTMLAttributes<HTMLDivElement>;
1712
+ declare const Kanban: React$1.ForwardRefExoticComponent<KanbanProps & React$1.RefAttributes<HTMLDivElement>>;
1713
+ interface KanbanColumnProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "title"> {
1714
+ title: string;
1715
+ count: number;
1716
+ }
1717
+ declare const KanbanColumn: React$1.ForwardRefExoticComponent<KanbanColumnProps & React$1.RefAttributes<HTMLDivElement>>;
1718
+ declare const kanbanCardVariants: (props?: ({
1719
+ variant?: "default" | "pro" | "danger" | "warn" | null | undefined;
1720
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
1721
+ interface KanbanCardProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof kanbanCardVariants> {
1722
+ }
1723
+ declare const KanbanCard: React$1.ForwardRefExoticComponent<KanbanCardProps & React$1.RefAttributes<HTMLDivElement>>;
1724
+
1725
+ /**
1726
+ * Toolbar — horizontal row of controls used above lists, dashboards, etc.
1727
+ * Ports `.toolbar` from `_shared.css` (lines 591-633). FilterChip is a
1728
+ * simpler atom than `MultiFilterPill` — single filter, not multi-select.
1729
+ */
1730
+ type ToolbarProps = React.HTMLAttributes<HTMLDivElement>;
1731
+ declare const Toolbar: React$1.ForwardRefExoticComponent<ToolbarProps & React$1.RefAttributes<HTMLDivElement>>;
1732
+ declare const filterChipVariants: (props?: ({
1733
+ active?: boolean | null | undefined;
1734
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
1735
+ interface FilterChipProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, keyof VariantProps<typeof filterChipVariants>>, VariantProps<typeof filterChipVariants> {
1736
+ count?: number;
1737
+ }
1738
+ declare const FilterChip: React$1.ForwardRefExoticComponent<FilterChipProps & React$1.RefAttributes<HTMLButtonElement>>;
1739
+
1740
+ /**
1741
+ * Intent-named action wrappers (Phase 4).
1742
+ *
1743
+ * Thin wrappers over Button / LinkButton. Bake in the right variant + size
1744
+ * so the correct call is shorter than the raw call.
1745
+ *
1746
+ * Note: `Button` has no `variant="icon"`. `IconAction` uses `variant="ghost"`
1747
+ * + `size="icon"` (the existing icon size token).
1748
+ */
1749
+ type LinkButtonProps = React.ComponentProps<typeof LinkButton>;
1750
+ interface PrimaryActionProps extends Omit<ButtonProps, "variant" | "size"> {
1751
+ arrow?: boolean;
1752
+ }
1753
+ declare const PrimaryAction: React$1.ForwardRefExoticComponent<PrimaryActionProps & React$1.RefAttributes<HTMLButtonElement>>;
1754
+ type SecondaryActionProps = Omit<ButtonProps, "variant" | "size">;
1755
+ declare const SecondaryAction: React$1.ForwardRefExoticComponent<SecondaryActionProps & React$1.RefAttributes<HTMLButtonElement>>;
1756
+ interface DangerActionProps extends Omit<ButtonProps, "variant" | "size" | "onClick"> {
1757
+ /** Required — explicit name forces the consumer to acknowledge intent. */
1758
+ onConfirm: () => void;
1759
+ }
1760
+ declare const DangerAction: React$1.ForwardRefExoticComponent<DangerActionProps & React$1.RefAttributes<HTMLButtonElement>>;
1761
+ interface IconActionProps extends Omit<ButtonProps, "variant" | "size"> {
1762
+ /** Required — icon-only buttons must announce themselves to assistive tech. */
1763
+ "aria-label": string;
1764
+ }
1765
+ declare const IconAction: React$1.ForwardRefExoticComponent<IconActionProps & React$1.RefAttributes<HTMLButtonElement>>;
1766
+ interface LinkActionProps extends Omit<LinkButtonProps, "variant" | "size"> {
1767
+ arrow?: boolean;
1768
+ }
1769
+ declare const LinkAction: React$1.ForwardRefExoticComponent<Omit<LinkActionProps, "ref"> & React$1.RefAttributes<HTMLAnchorElement>>;
1770
+
1771
+ /**
1772
+ * Intent-named atom wrappers (Phase 4).
1773
+ *
1774
+ * Thin <span>/<div>/<kbd> wrappers that bake in the right typography +
1775
+ * color tokens. Compose with the addressable utility classes in tokens.css
1776
+ * (`.tabular`, `.font-spec`, `.eyebrow`, `.eyebrow-num`).
1777
+ */
1778
+ type NumericProps = React.HTMLAttributes<HTMLSpanElement>;
1779
+ declare const Numeric: React$1.ForwardRefExoticComponent<NumericProps & React$1.RefAttributes<HTMLSpanElement>>;
1780
+ type MutedSpecProps = React.HTMLAttributes<HTMLSpanElement>;
1781
+ declare const MutedSpec: React$1.ForwardRefExoticComponent<MutedSpecProps & React$1.RefAttributes<HTMLSpanElement>>;
1782
+ interface EyebrowProps extends React.HTMLAttributes<HTMLDivElement> {
1783
+ /** When true, switches to spec font + Pro purple (the `01 — Today` pattern). */
1784
+ numeric?: boolean;
1785
+ }
1786
+ declare const Eyebrow: React$1.ForwardRefExoticComponent<EyebrowProps & React$1.RefAttributes<HTMLDivElement>>;
1787
+ type KbdHintProps = React.HTMLAttributes<HTMLElement>;
1788
+ declare const KbdHint: React$1.ForwardRefExoticComponent<KbdHintProps & React$1.RefAttributes<HTMLElement>>;
953
1789
 
954
1790
  declare function cn(...inputs: ClassValue[]): string;
955
1791
 
956
- export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, Alert, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AlertTriangleIcon, ArrowLeftIcon, ArrowRightIcon, ArrowRightSmallIcon, AspectRatio, AtSignIcon, Avatar, Badge, BarChartIcon, BellIcon, Blockquote, Breadcrumb, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, BuildingIcon, Button, Calendar, CalendarIcon, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, ChatBubbleIcon, CheckIcon, Checkbox, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, ClientSelect, type ClientSelectOption, ClipboardCheckIcon, ClockIcon, CloseIcon, Collapsible, CollapsibleContent, CollapsibleTrigger, ComingSoon, type CommandItem, CommandPalette, ContextMenu, ContextMenuContent, ContextMenuItem, ContextMenuSeparator, ContextMenuTrigger, CopyButton, CopyIcon, CreditCardIcon, DATE_DISPLAY_PLACEHOLDER, DatePicker, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, DocumentIcon, DownloadIcon, DropdownMenu, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuTrigger, EmptyState, EyeIcon, FileIcon, FileReturnIcon, FileTextIcon, FileUpload, FlagIcon, FolderClosedIcon, FolderOpenIcon, FolderPlusIcon, FormError, FormSuccess, GlobeIcon, HoverCard, HoverCardContent, HoverCardTrigger, Input, KeyIcon, KeyboardShortcutsDialog, Label, LayoutDashboardIcon, LayoutGridIcon, LayoutListIcon, LightningIcon, Link2Icon, LinkButton, LinkIcon, LockIcon, LockKeyholeIcon, LockOpenIcon, LogOutIcon, Logo, MailIcon, MapPinIcon, MenuIcon, MessageCircleIcon, MessageCircleWarningIcon, MonitorIcon, MoonIcon, MoreHorizontalIcon, MoveIcon, MultiFilterPill, MultiSelectField, OTPInput, Pagination, PaletteIcon, PanelLeftCloseIcon, PanelLeftIcon, PaperclipIcon, PenSignIcon, PencilIcon, PhoneIcon, PhoneInput, PlusIcon, Popover, PopoverContent, PopoverTrigger, ProgressBar, ProgressRing, RadioGroup, RadioGroupItem, ReceiptIcon, RotateCcwIcon, ScrollArea, SearchIcon, SearchInput, SearchSelect, type SearchSelectOption, Section, SectionHeader, Select, SelectContent, SelectTrigger, SendIcon, Separator, SettingsIcon, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger, ShieldIcon, SideDrawer, Skeleton, SkeletonCircle, SkeletonText, Slider, SmartphoneIcon, SparkleIcon, StarIcon, StarRating, Stat, Stepper, SubmitButton, SunIcon, Switch, Table, TableBody, TableCaption, TableCell, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, TagIcon, TeamIcon, TeamMemberSelect, Textarea, ToastProvider, ToggleGroup, ToggleGroupItem, Tooltip, TooltipContent, TooltipTrigger, TrashIcon, UploadIcon, UserCircleIcon, UsersIcon, VisuallyHidden, WorkflowIcon, XIcon, ZoomInIcon, ZoomOutIcon, cn, displayToIso, isoToDisplay, useToast };
1792
+ export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, type ActivityDotVariant, ActivityItem, type ActivityItemProps, ActivityList, type ActivityListProps, Alert, AlertCircleIcon, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, type AlertProps, AlertTitle, AlertTriangleIcon, AppHeader, AppHeaderActions, type AppHeaderActionsProps, AppHeaderBreadcrumb, type AppHeaderBreadcrumbProps, type AppHeaderProps, AppHeaderSearch, type AppHeaderSearchProps, AppHeaderTitle, type AppHeaderTitleProps, ArrowDownIcon, ArrowLeftIcon, ArrowRightIcon, ArrowRightSmallIcon, ArrowUpIcon, AspectRatio, AtSignIcon, Avatar, Badge, type BadgeProps, BarChartIcon, BellIcon, Blockquote, BoldIcon, Breadcrumb, BreadcrumbItem, type BreadcrumbItemProps, BreadcrumbLink, type BreadcrumbLinkProps, BreadcrumbList, type BreadcrumbListProps, BreadcrumbPage, type BreadcrumbPageProps, type BreadcrumbProps, BreadcrumbSeparator, type BreadcrumbSeparatorProps, BriefcaseIcon, Building2Icon, BuildingIcon, Button, type ButtonProps, Calendar, type CalendarHighlight, type CalendarHighlightColor, CalendarIcon, type CalendarProps, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, type CardVariants, ChatBubbleIcon, CheckCircle2Icon, CheckIcon, Checkbox, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, ChevronsUpDownIcon, CircleDotIcon, CircleIcon, ClientSelect, type ClientSelectOption, ClipboardCheckIcon, ClockIcon, CloseIcon, Collapsible, CollapsibleContent, CollapsibleTrigger, ComingSoon, type ComingSoonProps, CommandIcon, type CommandItem, CommandPalette, ConfirmActionButton, type ConfirmActionButtonProps, Content, type ContentProps, ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, CopyButton, CopyIcon, CornerDownLeftIcon, CreditCardIcon, DATE_DISPLAY_PLACEHOLDER, DangerAction, type DangerActionProps, DataTable, DataTableBody, type DataTableBodyProps, DataTableCell, DataTableCellDue, type DataTableCellDueProps, DataTableCellId, DataTableCellMono, DataTableCellName, type DataTableCellProps, DataTableCheckbox, type DataTableCheckboxProps, DataTableHead, type DataTableHeadProps, DataTableHeader, type DataTableHeaderProps, DataTablePagination, type DataTablePaginationProps, type DataTableProps, DataTableResultsCount, type DataTableResultsCountProps, DataTableRow, type DataTableRowProps, DataTableSearch, type DataTableSearchProps, DataTableSpacer, type DataTableSpacerProps, DataTableToolbar, type DataTableToolbarProps, DatePicker, DetailGrid, type DetailGridProps, DetailMain, type DetailMainProps, DetailSpine, DetailSpineHeader, type DetailSpineHeaderProps, type DetailSpineProps, DetailSpineSection, type DetailSpineSectionProps, DetailSpineStats, type DetailSpineStatsProps, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DismissibleChip, DocumentIcon, DollarSignIcon, DownloadIcon, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmptyState, type EmptyStateProps, EyeIcon, EyeOffIcon, Eyebrow, type EyebrowProps, FileIcon, FileReturnIcon, FileTextIcon, FileUpload, FilterChip, type FilterChipProps, FilterIcon, FlagIcon, FolderClosedIcon, FolderOpenIcon, FolderPlusIcon, FormError, FormSuccess, GlobeIcon, GoogleBrandIcon, HelpCircleIcon, HistoryIcon, HomeIcon, HoverCard, HoverCardContent, HoverCardPortal, HoverCardTrigger, IconAction, type IconActionProps, InboxIcon, InfoIcon, Input, type InputVariants, ItalicIcon, Kanban, KanbanCard, type KanbanCardProps, KanbanColumn, type KanbanColumnProps, KanbanIcon, type KanbanProps, KbdHint, type KbdHintProps, KeyIcon, KeyboardShortcutsDialog, Label, LayoutDashboardIcon, LayoutGridIcon, LayoutListIcon, LightningIcon, Link2Icon, LinkAction, type LinkActionProps, LinkButton, LinkIcon, ListChecksIcon, ListIcon, ListOrderedIcon, LoaderIcon, LockIcon, LockKeyholeIcon, LockOpenIcon, LogOutIcon, Logo, MailIcon, Main, type MainProps, MapPinIcon, MenuIcon, MessageCircleIcon, MessageCircleWarningIcon, MicrosoftBrandIcon, MinusIcon, MonitorIcon, MoonIcon, MoreHorizontalIcon, MoveIcon, MultiFilterPill, MultiSelectField, MutedSpec, type MutedSpecProps, Numeric, type NumericProps, OTPInput, PageHeader, type PageHeaderProps, PageHeaderSep, type PageHeaderSepProps, PageHeaderSpec, type PageHeaderSpecProps, Pagination, type PaginationProps, PaletteIcon, PanelLeftCloseIcon, PanelLeftIcon, PaperclipIcon, PenSignIcon, PencilIcon, PhoneIcon, PhoneInput, PlusIcon, Popover, PopoverAnchor, PopoverClose, PopoverContent, PopoverPortal, PopoverTrigger, PrimaryAction, type PrimaryActionProps, ProgressBar, type ProgressBarProps, ProgressRing, type ProgressRingProps, RadioGroup, RadioGroupItem, ReceiptIcon, ReplyIcon, RotateCcwIcon, SaveIcon, ScrollArea, ScrollBar, SearchIcon, SearchInput, type SearchInputVariants, SearchSelect, type SearchSelectOption, SecondaryAction, type SecondaryActionProps, Section, SectionHead, SectionHeader, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, type SelectOption, type SelectProps, SelectRoot, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, SendIcon, Separator, SettingsIcon, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, Shell, type ShellProps, ShieldIcon, SideDrawer, Sidebar, SidebarBrand, type SidebarBrandProps, SidebarBrandText, type SidebarBrandTextProps, SidebarFooter, type SidebarFooterProps, SidebarLink, SidebarLinkAction, type SidebarLinkActionProps, SidebarLinkBadge, type SidebarLinkBadgeProps, type SidebarLinkBadgeVariants, SidebarLinkGroup, type SidebarLinkGroupProps, SidebarLinkLabel, type SidebarLinkLabelProps, type SidebarLinkProps, type SidebarProps, SidebarProvider, type SidebarProviderProps, SidebarSection, type SidebarSectionProps, type SidebarState, SidebarTrigger, type SidebarTriggerProps, SidebarUser, type SidebarUserProps, Skeleton, SkeletonCircle, SkeletonText, SlashIcon, Slider, SmartphoneIcon, type SortDirection, SparkleIcon, SparklesIcon, StarIcon, StarRating, type StarRatingProps, Stat, type Step, Stepper, type StepperProps, StrikethroughIcon, SubmitButton, SunIcon, Switch, Table, TableBody, type TableBodyProps, TableCaption, type TableCaptionProps, TableCell, type TableCellProps, TableFooter, type TableFooterProps, TableHead, type TableHeadProps, TableHeader, type TableHeaderProps, TableIcon, type TableProps, TableRow, type TableRowProps, Tabs, TabsContent, TabsList, TabsTrigger, TagIcon, TeamIcon, TeamMemberSelect, Textarea, type TextareaVariants, ToastProvider, ToggleGroup, ToggleGroupItem, Toolbar, type ToolbarProps, Tooltip, TooltipContent, TooltipPortal, TooltipProvider, TooltipTrigger, Trash2Icon, TrashIcon, UnderlineIcon, UploadIcon, UserCircleIcon, UserIcon, UsersIcon, VisuallyHidden, WorkflowIcon, XIcon, ZoomInIcon, ZoomOutIcon, alertVariants, badgeVariants, buttonVariants, cardVariants, cn, displayToIso, filterChipVariants, inputVariants, isoToDisplay, kanbanCardVariants, labelVariants, progressBarVariants, progressRingVariants, searchInputVariants, sidebarLinkBadgeVariants, starRatingVariants, textareaVariants, useSidebarState, useToast };