@mondrianai/runyourai-design-system 0.0.1 → 0.0.3

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.mts CHANGED
@@ -5,6 +5,8 @@ import * as react_jsx_runtime from 'react/jsx-runtime';
5
5
  import * as class_variance_authority_types from 'class-variance-authority/types';
6
6
  import { VariantProps } from 'class-variance-authority';
7
7
  import * as _radix_ui_react_context from '@radix-ui/react-context';
8
+ import { PaginationState, OnChangeFn, RowSelectionState } from '@tanstack/react-table';
9
+ export { OnChangeFn, PaginationState, RowSelectionState, SortingState } from '@tanstack/react-table';
8
10
 
9
11
  declare const Accordion: React$1.ForwardRefExoticComponent<(Accordion$1.AccordionSingleProps | Accordion$1.AccordionMultipleProps) & React$1.RefAttributes<HTMLDivElement>>;
10
12
  declare const AccordionItem: React$1.ForwardRefExoticComponent<Omit<Accordion$1.AccordionItemProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
@@ -41,14 +43,11 @@ interface AvatarProps {
41
43
  src?: string;
42
44
  /** 이미지 alt 텍스트 */
43
45
  alt?: string;
46
+ /** 이미지 fallback으로 이니셜 표시. 미제공 시 User 아이콘 표시 */
47
+ username?: string;
44
48
  /**
45
- * 이미지 없거나 로드 실패 시 표시할 이니셜 텍스트.
46
- * square 아바타에서는 항상 표시.
47
- */
48
- fallback?: string;
49
- /**
50
- * circle (기본) — 원형, 사진 아바타
51
- * square — 모서리 둥근 사각형, 이니셜 아바타 (bg-gray-500 + 흰 글자)
49
+ * circle(기본): 원형, 사진 아바타
50
+ * square: 모서리 둥근 사각형, 이니셜 아바타 (bg-gray-500 + 흰 글자)
52
51
  */
53
52
  shape?: 'circle' | 'square';
54
53
  /** sm (24px) | md (32px, 기본) | lg (40px) */
@@ -58,16 +57,16 @@ interface AvatarProps {
58
57
  interface AvatarGroupItem {
59
58
  /** 고유 식별자 (key prop으로 사용) */
60
59
  id: string;
60
+ username?: string;
61
61
  src?: string;
62
62
  alt?: string;
63
- fallback?: string;
64
63
  }
65
64
  interface AvatarGroupProps {
66
65
  avatars: AvatarGroupItem[];
67
66
  size?: AvatarSize;
68
67
  className?: string;
69
68
  }
70
- declare function Avatar({ src, alt, fallback, shape, size, className, }: AvatarProps): react_jsx_runtime.JSX.Element;
69
+ declare function Avatar({ src, alt, username, shape, size, className, }: AvatarProps): react_jsx_runtime.JSX.Element;
71
70
  declare function AvatarGroup({ avatars, size, className }: AvatarGroupProps): react_jsx_runtime.JSX.Element;
72
71
 
73
72
  /**
@@ -96,14 +95,19 @@ interface BadgeProps {
96
95
  declare const BADGE_VARIANT_STYLES: Record<BadgeVariant, string>;
97
96
  declare function Badge({ text, variant, spin, iconName, className, }: BadgeProps): react_jsx_runtime.JSX.Element;
98
97
 
99
- declare function Breadcrumb({ className, ...props }: React__default.ComponentPropsWithoutRef<"nav">): react_jsx_runtime.JSX.Element;
100
- declare function BreadcrumbList({ className, ...props }: React__default.ComponentPropsWithoutRef<"ol">): react_jsx_runtime.JSX.Element;
101
- declare function BreadcrumbItem({ className, ...props }: React__default.ComponentPropsWithoutRef<"li">): react_jsx_runtime.JSX.Element;
102
- declare function BreadcrumbLink({ className, ...props }: React__default.ComponentPropsWithoutRef<"a">): react_jsx_runtime.JSX.Element;
103
- declare function BreadcrumbPage({ className, ...props }: React__default.ComponentPropsWithoutRef<"span">): react_jsx_runtime.JSX.Element;
104
- declare function BreadcrumbSeparator({ children, className, ...props }: React__default.ComponentPropsWithoutRef<"li">): react_jsx_runtime.JSX.Element;
105
- declare function BreadcrumbEllipsis({ className, ...props }: React__default.ComponentPropsWithoutRef<"span">): react_jsx_runtime.JSX.Element;
106
- declare function BreadcrumbDropdownItem({ children, className, ...props }: React__default.ComponentPropsWithoutRef<"button">): react_jsx_runtime.JSX.Element;
98
+ interface BreadcrumbProps extends React__default.ComponentPropsWithoutRef<'nav'> {
99
+ items: {
100
+ label: string;
101
+ href?: string;
102
+ }[];
103
+ separator?: BreadcrumbSeparator;
104
+ collapse?: 'dropdown' | 'ellipsis';
105
+ }
106
+ declare function Breadcrumb({ items, separator, collapse, className, }: BreadcrumbProps): react_jsx_runtime.JSX.Element;
107
+ type BreadcrumbSeparator = 'slash' | 'chevron-right';
108
+ declare function BreadcrumbSeparator({ iconName, className, ...props }: React__default.ComponentPropsWithoutRef<'li'> & {
109
+ iconName: 'slash' | 'chevron-right';
110
+ }): react_jsx_runtime.JSX.Element;
107
111
 
108
112
  declare const buttonVariants: (props?: ({
109
113
  variant?: "link" | "default" | "secondary" | "outline" | "ghost" | "destructive" | null | undefined;
@@ -156,6 +160,16 @@ interface CardProps {
156
160
  }
157
161
  declare function Card({ machineType, availability, machineName, machineInitial, tags, specs, onSelect, selectLabel, className, }: CardProps): react_jsx_runtime.JSX.Element;
158
162
 
163
+ interface DataSectionProps {
164
+ /** 섹션 제목 */
165
+ title?: string;
166
+ children: React$1.ReactNode;
167
+ left?: React$1.ReactNode;
168
+ right?: React$1.ReactNode;
169
+ className?: string;
170
+ }
171
+ declare function DataSection({ title, left, right, className, children, }: DataSectionProps): react_jsx_runtime.JSX.Element;
172
+
159
173
  interface CheckboxProps extends React$1.ComponentPropsWithoutRef<typeof Checkbox$1.Root> {
160
174
  /** Optional label rendered to the right of the checkbox */
161
175
  label?: string;
@@ -356,7 +370,7 @@ interface UserMenuSection {
356
370
  label?: string;
357
371
  items: UserMenuSectionItem[];
358
372
  }
359
- interface NotificationItem$1 {
373
+ interface NotificationItem {
360
374
  id: string;
361
375
  badge?: string;
362
376
  date?: string;
@@ -378,7 +392,7 @@ interface HeaderProps {
378
392
  onUpgrade?: () => void;
379
393
  userEmail?: string;
380
394
  userMenuSections?: UserMenuSection[];
381
- notifications?: NotificationItem$1[];
395
+ notifications?: NotificationItem[];
382
396
  onViewAllNotifications?: () => void;
383
397
  hasNotification?: boolean;
384
398
  languages?: LanguageItem[];
@@ -404,6 +418,21 @@ interface IconProps extends React$1.SVGProps<SVGSVGElement> {
404
418
  */
405
419
  declare function Icon({ name, className, strokeWidth, ...props }: IconProps): react_jsx_runtime.JSX.Element | null;
406
420
 
421
+ interface KbCardProps {
422
+ name: string;
423
+ size: string;
424
+ updatedAt: string;
425
+ connectedAgents: number | null;
426
+ icon?: React$1.ReactNode;
427
+ selectable?: boolean;
428
+ checked?: boolean;
429
+ onCheckedChange?: (checked: boolean) => void;
430
+ /** 카드 클릭 핸들러. selectable(편집 모드)일 때는 동작하지 않음. */
431
+ onClick?: () => void;
432
+ className?: string;
433
+ }
434
+ declare function KbCard({ name, size, updatedAt, connectedAgents, icon, selectable, checked, onCheckedChange, onClick, className, }: KbCardProps): react_jsx_runtime.JSX.Element;
435
+
407
436
  declare function MarkdownMessage({ content, isStreaming, footerMeta, className, }: {
408
437
  content: string;
409
438
  isStreaming?: boolean;
@@ -415,6 +444,51 @@ declare function MarkdownMessage({ content, isStreaming, footerMeta, className,
415
444
  className?: string;
416
445
  }): react_jsx_runtime.JSX.Element;
417
446
 
447
+ interface ModalProps {
448
+ id?: string;
449
+ /**
450
+ * 모달을 여는 트리거 — render prop 패턴.
451
+ * open 함수를 인자로 받아 원하는 요소에 직접 연결.
452
+ * ex) trigger={(open) => <Button onClick={open}>열기</Button>}
453
+ */
454
+ trigger?: (open: () => void) => React$1.ReactNode;
455
+ /**
456
+ * footer 버튼 렌더 방식
457
+ * confirm — 취소 + default(검정) 확인 버튼
458
+ * danger — 취소 + destructive(빨강) 확인 버튼
459
+ * dialog — footer 없음 (children으로 모든 콘텐츠 처리)
460
+ */
461
+ variant?: 'confirm' | 'danger' | 'dialog';
462
+ /** 모달 제목 */
463
+ title: string;
464
+ /** 제목 아래 부제목 (선택) */
465
+ description?: string;
466
+ /** 우상단 X 닫기 버튼 표시 여부 */
467
+ showCloseButton?: boolean;
468
+ /** 모달 본문 */
469
+ children?: React$1.ReactNode;
470
+ /** 취소 버튼 레이블 (기본: "취소") */
471
+ cancelLabel?: string;
472
+ /** 확인 버튼 레이블 (기본: "확인") */
473
+ confirmLabel?: string;
474
+ /**
475
+ * 확인 버튼 콜백.
476
+ * Promise를 반환하면 resolve될 때까지 loading 상태를 내부에서 자동 처리하고
477
+ * 완료 후 모달을 닫음.
478
+ */
479
+ onConfirm?: () => void | Promise<void>;
480
+ /** 취소/닫기 시 콜백 (cancel 버튼, X 버튼, ESC, 오버레이 클릭) */
481
+ onCancel?: () => void;
482
+ /** 확인 버튼 비활성화 */
483
+ confirmDisabled?: boolean;
484
+ isLoading?: boolean;
485
+ /** 오버레이 클릭 시 닫기 (기본: true) */
486
+ closeOnOverlayClick?: boolean;
487
+ /** 모달 패널에 추가할 className */
488
+ className?: string;
489
+ }
490
+ declare function Modal({ id, trigger, variant, title, description, showCloseButton, children, cancelLabel, confirmLabel, onConfirm, onCancel, confirmDisabled, closeOnOverlayClick, className, isLoading, }: ModalProps): react_jsx_runtime.JSX.Element;
491
+
418
492
  declare const Menubar: React$1.ForwardRefExoticComponent<Omit<Menubar$1.MenubarProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
419
493
  declare const MenubarMenu: {
420
494
  (props: Menubar$1.MenubarMenuProps & {
@@ -467,6 +541,14 @@ interface SegmentedControlProps<T extends string> {
467
541
  }
468
542
  declare function SegmentedControl<T extends string>({ value, onChange, items, }: SegmentedControlProps<T>): react_jsx_runtime.JSX.Element;
469
543
 
544
+ interface SearchInputProps extends Omit<React$1.InputHTMLAttributes<HTMLInputElement>, 'onChange' | 'type'> {
545
+ value: string;
546
+ onChange: (value: string) => void;
547
+ placeholder?: string;
548
+ className?: string;
549
+ }
550
+ declare function SearchInput({ value, onChange, placeholder, className, ...props }: SearchInputProps): react_jsx_runtime.JSX.Element;
551
+
470
552
  interface SelectOption {
471
553
  /** Unique identifier for the option */
472
554
  value: string;
@@ -512,81 +594,66 @@ interface SheetProps {
512
594
  declare function Sheet({ open, onClose, title, description, children, footer }: SheetProps): react_jsx_runtime.JSX.Element;
513
595
 
514
596
  /**
515
- * 링크 렌더링 함수. next/link, react-router <Link> 소비 라우터에 맞게 주입한다.
516
- * 미지정 시 기본 <a> 태그로 렌더링된다.
597
+ * 링크 컴포넌트 타입. next/link의 Link, react-router Link 등을 그대로 전달할 있습니다.
598
+ * 미지정 시 기본 <a> 태그로 렌더링됩니다.
517
599
  */
518
- type RenderLinkFn = (props: {
600
+ type SidebarLinkComponent = React$1.ComponentType<{
519
601
  href: string;
602
+ children: React$1.ReactNode;
520
603
  className?: string;
521
604
  style?: React$1.CSSProperties;
522
605
  onClick?: () => void;
523
- children: React$1.ReactNode;
524
- }) => React$1.ReactNode;
525
- type SidebarNavItem = {
606
+ }>;
607
+ type SidebarSubMenuItem = {
608
+ id: string;
609
+ title: string;
526
610
  href: string;
527
- label: string;
528
611
  icon: React$1.ReactNode;
529
- isActive: boolean;
612
+ isActive?: boolean;
613
+ titleBadge?: string | number;
530
614
  onClick?: () => void;
531
- /** true이면 이 항목 앞에 구분선을 렌더링합니다. */
532
- dividerBefore?: boolean;
533
615
  };
534
- type SidebarTaskMenuItem = {
535
- label: string;
536
- icon?: React$1.ReactNode;
537
- onSelect?: () => void;
538
- variant?: 'default' | 'destructive';
539
- /** true이면 이 항목 앞에 구분선(간격)을 렌더링합니다. */
540
- separatorBefore?: boolean;
541
- };
542
- type SidebarTask = {
616
+ type SidebarMainMenuItem = {
543
617
  id: string;
544
618
  title: string;
545
- /** 클릭 시 이동할 경로. renderLink 또는 기본 <a>로 렌더링됩니다. */
546
619
  href: string;
547
- icon?: React$1.ReactNode;
548
- favorited?: boolean;
549
- };
550
- type SidebarUtilityLink = {
551
- label: string;
552
620
  icon: React$1.ReactNode;
553
- /** 외부 링크 URL. 없으면 button으로 렌더링됩니다. */
554
- href?: string;
621
+ isActive?: boolean;
555
622
  onClick?: () => void;
623
+ onHover?: (e: React$1.MouseEvent<HTMLElement>) => void;
624
+ subMenus?: SidebarSubMenuItem[];
556
625
  };
557
- /** 하드코딩된 한국어 문자열을 외부에서 교체할 수 있는 레이블 모음 */
558
- type SidebarLabels = {
559
- taskSectionTitle?: string;
560
- taskSectionHide?: string;
561
- taskSectionShow?: string;
562
- taskEmptyMessage?: string;
563
- };
564
- interface NotificationItem {
626
+ type SidebarUtilityItem = {
565
627
  id: string;
566
- badge?: string;
567
- date?: string;
568
- title: string;
569
- description: string;
570
- }
571
- declare function Sidebar({ className, logo, navRailItems, sectionTitle, navItems, tasks, activeTaskId, showTaskSection, hasNotification, notifications, onViewAllNotifications, utilityLinks, username, onRenameTask, onToggleFavorite, onDeleteTask, labels, renderLink, }: {
628
+ /**
629
+ * popover가 지정된 경우 icon·label·href·onClick은 무시됩니다.
630
+ * Sidebar는 단순 렌더링만 수행합니다.
631
+ */
632
+ popover?: React$1.ReactNode;
633
+ icon?: React$1.ReactNode;
634
+ label?: string;
635
+ href?: string;
636
+ onClick?: (e: React$1.MouseEvent<HTMLElement>) => void;
637
+ onHover?: (e: React$1.MouseEvent<HTMLElement>) => void;
638
+ notiBadge?: boolean | number;
639
+ };
640
+ declare function SidebarLink({ href, className, style, onClick, children, }: {
641
+ href: string;
572
642
  className?: string;
573
- logo?: React$1.ReactNode;
574
- navRailItems?: SidebarNavItem[];
575
- sectionTitle?: string;
576
- navItems: SidebarNavItem[];
577
- tasks: SidebarTask[];
578
- activeTaskId: string | null;
579
- showTaskSection?: boolean;
580
- hasNotification?: boolean;
581
- notifications?: NotificationItem[];
582
- onViewAllNotifications?: () => void;
583
- utilityLinks?: SidebarUtilityLink[];
584
- username?: string;
585
- onRenameTask?: (id: string, newTitle: string) => void;
586
- onToggleFavorite?: (id: string) => void;
587
- onDeleteTask?: (id: string) => void;
588
- labels?: SidebarLabels;
589
- renderLink?: RenderLinkFn;
643
+ style?: React$1.CSSProperties;
644
+ onClick?: () => void;
645
+ children: React$1.ReactNode;
646
+ }): React$1.ReactElement<unknown, string | React$1.JSXElementConstructor<any>>;
647
+ declare function Sidebar({ logo, menus, avatar, utilities, panelTopContent, panelCenterContent, panelBottomContent, className, LinkComponent, }: {
648
+ logo: React$1.ReactNode;
649
+ menus: SidebarMainMenuItem[];
650
+ avatar: React$1.ReactNode;
651
+ utilities?: SidebarUtilityItem[];
652
+ panelTopContent?: React$1.ReactNode;
653
+ panelCenterContent?: React$1.ReactNode;
654
+ panelBottomContent?: React$1.ReactNode;
655
+ className?: string;
656
+ LinkComponent: SidebarLinkComponent;
590
657
  }): react_jsx_runtime.JSX.Element;
591
658
 
592
659
  declare const Slider: React$1.ForwardRefExoticComponent<Omit<Slider$1.SliderProps & React$1.RefAttributes<HTMLSpanElement>, "ref"> & React$1.RefAttributes<HTMLSpanElement>>;
@@ -617,6 +684,94 @@ interface SwitchFieldProps extends React__default.ComponentPropsWithoutRef<typeo
617
684
  }
618
685
  declare function SwitchField({ label, description, className, id, ...props }: SwitchFieldProps): react_jsx_runtime.JSX.Element;
619
686
 
687
+ type SortDirection = 'asc' | 'desc' | null;
688
+ interface TableColumn<T> {
689
+ key: string;
690
+ header: string;
691
+ sortable?: boolean;
692
+ /** 정렬 기준값 추출. sortable=true 시 필수 */
693
+ sortValue?: (row: T) => string | number;
694
+ /** 헤더·셀 text-align. 기본값 "left" */
695
+ align?: 'left' | 'center' | 'right';
696
+ cellClassName?: string;
697
+ headerClassName?: string;
698
+ /**
699
+ * true이면 셀 내용을 한 줄로 잘라내고 hover 시 tooltip으로 전체 내용을 표시.
700
+ * tooltip에 표시할 텍스트를 별도로 지정하려면 ellipsisTooltip을 함께 사용.
701
+ */
702
+ ellipsis?: boolean;
703
+ /** ellipsis=true 일 때 tooltip에 표시할 내용. 미제공 시 cell 렌더 결과를 그대로 사용. */
704
+ ellipsisTooltip?: (row: T) => React$1.ReactNode;
705
+ cell: (row: T) => React$1.ReactNode;
706
+ }
707
+ /**
708
+ * TanStack Table의 pagination 옵션을 그대로 노출.
709
+ * 상세 동작은 TanStack Table 공식 문서 참고:
710
+ * https://tanstack.com/table/latest/docs/api/features/pagination
711
+ */
712
+ interface TablePaginationConfig extends Partial<Pick<PaginationState, 'pageSize' | 'pageIndex'>> {
713
+ onPaginationChange?: OnChangeFn<PaginationState>;
714
+ /** 서버사이드 페이지네이션 시 true로 설정 */
715
+ manualPagination?: boolean;
716
+ /** manualPagination=true 일 때 전체 페이지 수 */
717
+ pageCount?: number;
718
+ /** manualPagination=true 일 때 전체 행 수 (pageCount 대신 사용 가능) */
719
+ rowCount?: number;
720
+ }
721
+ interface TableSortingItem {
722
+ /** TableColumn.key 와 일치해야 함 */
723
+ key: TableColumn<never>['key'];
724
+ desc?: boolean;
725
+ }
726
+ interface TableProps<T> {
727
+ columns: TableColumn<T>[];
728
+ data: T[];
729
+ /**
730
+ * 각 행의 고유 키.
731
+ * - keyof T (예: "id") — T[key]를 string으로 변환해 사용
732
+ * - (row: T) => string — 함수로 직접 계산
733
+ */
734
+ rowKey: keyof T | ((row: T) => string);
735
+ /**
736
+ * 페이지네이션 설정. 미전달 시 페이지네이션 비활성화.
737
+ * TanStack Table pagination 옵션을 그대로 수용.
738
+ */
739
+ pagination?: TablePaginationConfig;
740
+ /**
741
+ * 초기 정렬 상태. 복수 컬럼 정렬 지원.
742
+ * 각 항목의 key는 TableColumn.key 와 일치해야 함.
743
+ */
744
+ defaultSorting?: TableSortingItem[];
745
+ /** 데이터 로딩 중 상태. true이면 tbody 대신 스피너를 표시 */
746
+ loading?: boolean;
747
+ /** true이면 각 행 앞에 체크박스가 추가되어 row multi-select 활성화 */
748
+ enableRowSelection?: boolean;
749
+ /** 외부에서 selection 상태를 제어할 때 사용 (controlled) */
750
+ rowSelection?: RowSelectionState;
751
+ /** selection 상태 변경 콜백 */
752
+ onRowSelectionChange?: OnChangeFn<RowSelectionState>;
753
+ /**
754
+ * 각 행 오른쪽 끝에 렌더링할 액션 영역.
755
+ * row 데이터를 받아 ReactNode를 반환하는 함수.
756
+ * 예: hover 시 나타나는 삭제·편집 버튼 등.
757
+ */
758
+ rowActions?: (row: T) => React$1.ReactNode;
759
+ /** 행 클릭 핸들러. enableRowSelection=true(편집 모드)일 때는 동작하지 않음. */
760
+ onRowClick?: (row: T) => void;
761
+ className?: string;
762
+ }
763
+ declare function SortIcon({ direction }: {
764
+ direction: SortDirection;
765
+ }): react_jsx_runtime.JSX.Element;
766
+ interface TablePaginationProps {
767
+ currentPage: number;
768
+ totalPages: number;
769
+ onPageChange: (page: number) => void;
770
+ className?: string;
771
+ }
772
+ declare function TablePagination({ currentPage, totalPages, onPageChange, className, }: TablePaginationProps): react_jsx_runtime.JSX.Element;
773
+ declare function Table<T>({ columns, data, rowKey, pagination, defaultSorting, loading, enableRowSelection, rowSelection: rowSelectionProp, onRowSelectionChange, rowActions, onRowClick, className, }: TableProps<T>): react_jsx_runtime.JSX.Element;
774
+
620
775
  declare const TooltipProvider: React$1.FC<Tooltip$1.TooltipProviderProps>;
621
776
  interface TooltipProps extends Pick<React$1.ComponentPropsWithoutRef<typeof Tooltip$1.Root>, 'open' | 'defaultOpen' | 'onOpenChange' | 'delayDuration'>, Omit<React$1.ComponentPropsWithoutRef<typeof Tooltip$1.Content>, 'children' | 'content'> {
622
777
  /** 툴팁 말풍선에 표시할 내용 */
@@ -738,6 +893,15 @@ declare function BoldIcon({ className }: {
738
893
  className?: string;
739
894
  }): react_jsx_runtime.JSX.Element;
740
895
 
896
+ /**
897
+ * Book-open icon — SVG downloaded directly from Figma design system.
898
+ * Uses stroke="currentColor" for CSS color control.
899
+ * Source: Figma node 616-3399, stroke-width: 1.25
900
+ */
901
+ declare function BookOpenIcon({ className }: {
902
+ className?: string;
903
+ }): react_jsx_runtime.JSX.Element;
904
+
741
905
  interface BookUpIconProps {
742
906
  className?: string;
743
907
  }
@@ -766,6 +930,15 @@ declare function CircleCheckFillIcon({ className }: {
766
930
  className?: string;
767
931
  }): react_jsx_runtime.JSX.Element;
768
932
 
933
+ /**
934
+ * Circle-help icon — SVG downloaded directly from Figma design system.
935
+ * Uses stroke="currentColor" for CSS color control.
936
+ * Source: Figma node 616-3399, stroke-width: 1.25
937
+ */
938
+ declare function CircleHelpIcon({ className }: {
939
+ className?: string;
940
+ }): react_jsx_runtime.JSX.Element;
941
+
769
942
  /**
770
943
  * Circle-outline icon — stroke-only circle.
771
944
  * SVG downloaded from Figma design system.
@@ -790,6 +963,15 @@ declare function CodeSquareIcon({ className }: {
790
963
  className?: string;
791
964
  }): react_jsx_runtime.JSX.Element;
792
965
 
966
+ /**
967
+ * Credit icon — SVG downloaded directly from Figma design system.
968
+ * Uses stroke="currentColor" for CSS color control.
969
+ * Source: Figma node 616-3399, stroke-width: 1.25
970
+ */
971
+ declare function CreditIcon({ className }: {
972
+ className?: string;
973
+ }): react_jsx_runtime.JSX.Element;
974
+
793
975
  declare function DownloadIcon({ className }: {
794
976
  className?: string;
795
977
  }): react_jsx_runtime.JSX.Element;
@@ -819,6 +1001,15 @@ declare function FolderAmberIcon({ className }: {
819
1001
  className?: string;
820
1002
  }): react_jsx_runtime.JSX.Element;
821
1003
 
1004
+ /**
1005
+ * Folder-closed icon — SVG downloaded directly from Figma design system.
1006
+ * Uses stroke="currentColor" for CSS color control.
1007
+ * Source: Figma node 616-3399, stroke-width: 1.02
1008
+ */
1009
+ declare function FolderClosedIcon({ className }: {
1010
+ className?: string;
1011
+ }): react_jsx_runtime.JSX.Element;
1012
+
822
1013
  /**
823
1014
  * Heading icon — SVG downloaded from Figma design system.
824
1015
  * Source: Figma node (lucide/heading)
@@ -855,6 +1046,15 @@ declare function ItalicIcon({ className }: {
855
1046
  className?: string;
856
1047
  }): react_jsx_runtime.JSX.Element;
857
1048
 
1049
+ /**
1050
+ * Key-round icon — SVG downloaded directly from Figma design system.
1051
+ * Uses stroke="currentColor" for CSS color control.
1052
+ * Source: Figma node 616-3399, stroke-width: 1.02
1053
+ */
1054
+ declare function KeyRoundIcon({ className }: {
1055
+ className?: string;
1056
+ }): react_jsx_runtime.JSX.Element;
1057
+
858
1058
  declare function LayersIcon({ className }: {
859
1059
  className?: string;
860
1060
  }): react_jsx_runtime.JSX.Element;
@@ -900,6 +1100,24 @@ declare function ListOrderedIcon({ className }: {
900
1100
  className?: string;
901
1101
  }): react_jsx_runtime.JSX.Element;
902
1102
 
1103
+ /**
1104
+ * Message-circle icon — SVG downloaded directly from Figma design system.
1105
+ * Uses stroke="currentColor" for CSS color control.
1106
+ * Source: Figma node 616-3399, stroke-width: 1.25
1107
+ */
1108
+ declare function MessageCircleIcon({ className }: {
1109
+ className?: string;
1110
+ }): react_jsx_runtime.JSX.Element;
1111
+
1112
+ /**
1113
+ * Messages-square icon — SVG downloaded directly from Figma design system.
1114
+ * Uses stroke="currentColor" for CSS color control.
1115
+ * Source: Figma node 616-3399, stroke-width: 1.25
1116
+ */
1117
+ declare function MessagesSquareIcon({ className }: {
1118
+ className?: string;
1119
+ }): react_jsx_runtime.JSX.Element;
1120
+
903
1121
  declare function MyPageIcon({ className }: {
904
1122
  className?: string;
905
1123
  }): react_jsx_runtime.JSX.Element;
@@ -912,6 +1130,15 @@ declare function OutdentIcon({ className }: {
912
1130
  className?: string;
913
1131
  }): react_jsx_runtime.JSX.Element;
914
1132
 
1133
+ /**
1134
+ * Panel-left icon — SVG downloaded directly from Figma design system.
1135
+ * Uses stroke="currentColor" for CSS color control.
1136
+ * Source: Figma node 616-3399, stroke-width: 1.25
1137
+ */
1138
+ declare function PanelLeftIcon({ className }: {
1139
+ className?: string;
1140
+ }): react_jsx_runtime.JSX.Element;
1141
+
915
1142
  interface PenLineIconProps {
916
1143
  className?: string;
917
1144
  }
@@ -934,6 +1161,14 @@ declare function PresentationIcon({ className }: {
934
1161
  className?: string;
935
1162
  }): react_jsx_runtime.JSX.Element;
936
1163
 
1164
+ /**
1165
+ * Shopping Bag icon — SVG from public/icons/shopping-bag.svg
1166
+ * Uses stroke="currentColor" for CSS color control.
1167
+ */
1168
+ declare function ShoppingBagIcon({ className }: {
1169
+ className?: string;
1170
+ }): react_jsx_runtime.JSX.Element;
1171
+
937
1172
  /**
938
1173
  * Smile icon — SVG downloaded from Figma design system.
939
1174
  * Source: public/icons/smile.svg
@@ -1007,30 +1242,4 @@ declare function WandSparklesIcon({ className }: {
1007
1242
  className?: string;
1008
1243
  }): react_jsx_runtime.JSX.Element;
1009
1244
 
1010
- /**
1011
- * Message-circle icon — SVG downloaded directly from Figma design system.
1012
- * Uses stroke="currentColor" for CSS color control.
1013
- * Source: Figma node 616-3399, stroke-width: 1.25
1014
- */
1015
- declare function MessageCircleIcon({ className }: {
1016
- className?: string;
1017
- }): react_jsx_runtime.JSX.Element;
1018
-
1019
- /**
1020
- * Messages-square icon — SVG downloaded directly from Figma design system.
1021
- * Uses stroke="currentColor" for CSS color control.
1022
- * Source: Figma node 616-3399, stroke-width: 1.25
1023
- */
1024
- declare function MessagesSquareIcon({ className }: {
1025
- className?: string;
1026
- }): react_jsx_runtime.JSX.Element;
1027
-
1028
- /**
1029
- * Shopping Bag icon — SVG from public/icons/shopping-bag.svg
1030
- * Uses stroke="currentColor" for CSS color control.
1031
- */
1032
- declare function ShoppingBagIcon({ className }: {
1033
- className?: string;
1034
- }): react_jsx_runtime.JSX.Element;
1035
-
1036
- export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, AiAgentIcon, AiBuilderIcon, AiCloudIcon, AiDatacenterIcon, Alert, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AlignJustifyIcon, AlignLeftIcon, ArrowDownIcon, type AvailabilityStatus, Avatar, AvatarGroup, type AvatarGroupItem, type AvatarGroupProps, type AvatarProps, BADGE_VARIANT_STYLES, Badge, type BadgeProps, type BadgeVariant, BlockquoteIcon, BoldIcon, BookUpIcon, Breadcrumb, BreadcrumbDropdownItem, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Button, type ButtonProps, Card, type CardProps, type CardSpec, Checkbox, CheckboxCard, type CheckboxCardProps, type CheckboxProps, ChevronsUpDownIcon, ChoiceCardGroup, type ChoiceCardGroupProps, ChoiceCardItem, type ChoiceCardItemProps, CircleCheckFillIcon, CircleOutlineIcon, ClaudeIcon, CodeIcon, CodeSquareIcon, Collapsible, CollapsibleContent, type CollapsibleProps, CollapsibleRoot, CollapsibleTrigger, type CollapsibleWorkspace, Combobox, type ComboboxOption, type ComboboxProps, DeepSeekIcon, DownloadIcon, Field, FieldDivider, type FieldProps, FieldRow, type FieldRowProps, FieldSection, type FieldSectionProps, FileCodeIcon, FileSearchIcon, FolderAmberIcon, GeminiIcon, GoogleIcon, GroupedSelect, Header, type HeaderNavItem, type HeaderProps, HeadingIcon, ICON_NODES, Icon, type IconProps, ImageIcon, ImportIcon, IndentIcon, ItalicIcon, type LanguageItem, LayersIcon, LayoutGridIcon, LineChartIcon, LinkIcon, ListIcon, ListOrderedIcon, type MachineType, MarkdownMessage, Menubar, MenubarContent, MenubarGroup, MenubarItem, MenubarMenu, MenubarSeparator, MenubarShortcut, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarTrigger, MessageCircleIcon, MessageFooter, type MessageFooterProps, MessagesSquareIcon, type ModelGroup, type ModelItem, MyPageIcon, type NavDropdownItem, type NotificationItem$1 as NotificationItem, NumberBadge, type NumberBadgeProps, OpenAiIcon, OutdentIcon, PenLineIcon, PencilLineIcon, PresentationIcon, Providers, type RenderLinkFn, RyaiLogoIcon, SegmentedControl, Select, type SelectGroup, type SelectOption, type SelectProps, Sheet, ShoppingBagIcon, Sidebar, type SidebarLabels, type SidebarNavItem, type SidebarTask, type SidebarTaskMenuItem, type SidebarUtilityLink, Slider, SmileIcon, SparklesIcon, SquareCheckIcon, SquareCheckOutlineIcon, StarIcon, Stepper, type StepperProps, type StepperStep, StrikethroughIcon, Switch, SwitchField, type SwitchFieldProps, TablePropertiesIcon, Tooltip, type TooltipProps, TooltipProvider, TooltipWithIcon, type TooltipWithIconProps, TrashIcon, UpstageIcon, type UserMenuSection, type UserMenuSectionItem, UserMessageBubble, WandSparklesIcon, buttonVariants };
1245
+ export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, AiAgentIcon, AiBuilderIcon, AiCloudIcon, AiDatacenterIcon, Alert, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AlignJustifyIcon, AlignLeftIcon, ArrowDownIcon, type AvailabilityStatus, Avatar, AvatarGroup, type AvatarGroupItem, type AvatarGroupProps, type AvatarProps, type AvatarSize, BADGE_VARIANT_STYLES, Badge, type BadgeProps, type BadgeVariant, BlockquoteIcon, BoldIcon, BookOpenIcon, BookUpIcon, Breadcrumb, Button, type ButtonProps, Card, type CardProps, type CardSpec, Checkbox, CheckboxCard, type CheckboxCardProps, type CheckboxProps, ChevronsUpDownIcon, ChoiceCardGroup, type ChoiceCardGroupProps, ChoiceCardItem, type ChoiceCardItemProps, CircleCheckFillIcon, CircleHelpIcon, CircleOutlineIcon, ClaudeIcon, CodeIcon, CodeSquareIcon, Collapsible, CollapsibleContent, type CollapsibleProps, CollapsibleRoot, CollapsibleTrigger, type CollapsibleWorkspace, Combobox, type ComboboxOption, type ComboboxProps, CreditIcon, DataSection, type DataSectionProps, DeepSeekIcon, DownloadIcon, Field, FieldDivider, type FieldProps, FieldRow, type FieldRowProps, FieldSection, type FieldSectionProps, FileCodeIcon, FileSearchIcon, FolderAmberIcon, FolderClosedIcon, GeminiIcon, GoogleIcon, GroupedSelect, Header, type HeaderNavItem, type HeaderProps, HeadingIcon, ICON_NODES, Icon, type IconProps, ImageIcon, ImportIcon, IndentIcon, ItalicIcon, KbCard, type KbCardProps, KeyRoundIcon, type LanguageItem, LayersIcon, LayoutGridIcon, LineChartIcon, LinkIcon, ListIcon, ListOrderedIcon, type MachineType, MarkdownMessage, Menubar, MenubarContent, MenubarGroup, MenubarItem, MenubarMenu, MenubarSeparator, MenubarShortcut, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarTrigger, MessageCircleIcon, MessageFooter, type MessageFooterProps, MessagesSquareIcon, Modal, type ModalProps, type ModelGroup, type ModelItem, MyPageIcon, type NavDropdownItem, type NotificationItem, NumberBadge, type NumberBadgeProps, OpenAiIcon, OutdentIcon, PanelLeftIcon, PenLineIcon, PencilLineIcon, PresentationIcon, Providers, RyaiLogoIcon, SearchInput, type SearchInputProps, SegmentedControl, Select, type SelectGroup, type SelectOption, type SelectProps, Sheet, ShoppingBagIcon, Sidebar, SidebarLink, type SidebarMainMenuItem, type SidebarSubMenuItem, type SidebarUtilityItem, Slider, SmileIcon, type SortDirection, SortIcon, SparklesIcon, SquareCheckIcon, SquareCheckOutlineIcon, StarIcon, Stepper, type StepperProps, type StepperStep, StrikethroughIcon, Switch, SwitchField, type SwitchFieldProps, Table, type TableColumn, TablePagination, type TablePaginationConfig, TablePropertiesIcon, type TableProps, type TableSortingItem, Tooltip, type TooltipProps, TooltipProvider, TooltipWithIcon, type TooltipWithIconProps, TrashIcon, UpstageIcon, type UserMenuSection, type UserMenuSectionItem, UserMessageBubble, WandSparklesIcon, buttonVariants };