@iclips/ui 1.0.2 → 1.0.6

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.cts CHANGED
@@ -3,7 +3,7 @@ import * as React$1 from 'react';
3
3
  import React__default, { RefObject } from 'react';
4
4
  import * as AccordionPrimitive from '@radix-ui/react-accordion';
5
5
  import * as AlertDialogPrimitive from '@radix-ui/react-alert-dialog';
6
- import * as class_variance_authority_types from 'class-variance-authority/types';
6
+ import * as class_variance_authority_dist_types from 'class-variance-authority/dist/types';
7
7
  import { VariantProps } from 'class-variance-authority';
8
8
  import { LucideIcon } from 'lucide-react';
9
9
  import * as AspectRatioPrimitive from '@radix-ui/react-aspect-ratio';
@@ -13,6 +13,7 @@ import useEmblaCarousel, { UseEmblaCarouselType } from 'embla-carousel-react';
13
13
  import * as RechartsPrimitive from 'recharts';
14
14
  import * as CheckboxPrimitive from '@radix-ui/react-checkbox';
15
15
  import * as CollapsiblePrimitive from '@radix-ui/react-collapsible';
16
+ import { Locale } from 'date-fns';
16
17
  import { Command as Command$1 } from 'cmdk';
17
18
  import * as DialogPrimitive from '@radix-ui/react-dialog';
18
19
  import * as ContextMenuPrimitive from '@radix-ui/react-context-menu';
@@ -60,7 +61,7 @@ declare function AlertDialogCancel({ className, ...props }: React$1.ComponentPro
60
61
 
61
62
  declare const alertVariants: (props?: ({
62
63
  variant?: "default" | "destructive" | null | undefined;
63
- } & class_variance_authority_types.ClassProp) | undefined) => string;
64
+ } & class_variance_authority_dist_types.ClassProp) | undefined) => string;
64
65
  declare function Alert({ className, variant, ...props }: React$1.ComponentProps<"div"> & VariantProps<typeof alertVariants>): react_jsx_runtime.JSX.Element;
65
66
  declare function AlertTitle({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
66
67
  declare function AlertDescription({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
@@ -102,10 +103,10 @@ declare function AvatarFallback({ className, ...props }: React$1.ComponentProps<
102
103
 
103
104
  declare const badgeVariants: (props?: ({
104
105
  variant?: "default" | "destructive" | "outline" | "secondary" | null | undefined;
105
- } & class_variance_authority_types.ClassProp) | undefined) => string;
106
+ } & class_variance_authority_dist_types.ClassProp) | undefined) => string;
106
107
  declare const Badge: React$1.ForwardRefExoticComponent<Omit<React$1.DetailedHTMLProps<React$1.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & VariantProps<(props?: ({
107
108
  variant?: "default" | "destructive" | "outline" | "secondary" | null | undefined;
108
- } & class_variance_authority_types.ClassProp) | undefined) => string> & {
109
+ } & class_variance_authority_dist_types.ClassProp) | undefined) => string> & {
109
110
  asChild?: boolean;
110
111
  } & React$1.RefAttributes<HTMLSpanElement>>;
111
112
 
@@ -122,14 +123,42 @@ declare function BreadcrumbEllipsis({ className, ...props }: React$1.ComponentPr
122
123
  declare const buttonVariants: (props?: ({
123
124
  variant?: "link" | "default" | "destructive" | "outline" | "secondary" | "ghost" | null | undefined;
124
125
  size?: "default" | "sm" | "lg" | "icon" | null | undefined;
125
- } & class_variance_authority_types.ClassProp) | undefined) => string;
126
+ } & class_variance_authority_dist_types.ClassProp) | undefined) => string;
126
127
  declare const Button: React$1.ForwardRefExoticComponent<Omit<React$1.ClassAttributes<HTMLButtonElement> & React$1.ButtonHTMLAttributes<HTMLButtonElement> & VariantProps<(props?: ({
127
128
  variant?: "link" | "default" | "destructive" | "outline" | "secondary" | "ghost" | null | undefined;
128
129
  size?: "default" | "sm" | "lg" | "icon" | null | undefined;
129
- } & class_variance_authority_types.ClassProp) | undefined) => string> & {
130
+ } & class_variance_authority_dist_types.ClassProp) | undefined) => string> & {
130
131
  asChild?: boolean;
131
132
  }, "ref"> & React$1.RefAttributes<HTMLButtonElement>>;
132
133
 
134
+ type CalendarProps = React$1.ComponentProps<typeof DayPicker>;
135
+ /**
136
+ * Calendar - Componente base de calendário
137
+ *
138
+ * Grid de dias para seleção de datas. Usado internamente pelo DatePicker
139
+ * e DateRangePicker, mas também pode ser usado standalone.
140
+ *
141
+ * @example
142
+ * // Seleção única
143
+ * <Calendar
144
+ * mode="single"
145
+ * selected={date}
146
+ * onSelect={setDate}
147
+ * />
148
+ *
149
+ * @example
150
+ * // Seleção de intervalo
151
+ * <Calendar
152
+ * mode="range"
153
+ * selected={dateRange}
154
+ * onSelect={setDateRange}
155
+ * />
156
+ */
157
+ declare function Calendar({ className, classNames, showOutsideDays, locale, ...props }: CalendarProps): react_jsx_runtime.JSX.Element;
158
+ declare namespace Calendar {
159
+ var displayName: string;
160
+ }
161
+
133
162
  interface DadosContrato {
134
163
  numeroContrato: string;
135
164
  dataEmissao: string;
@@ -260,8 +289,6 @@ declare const ContractPrintPreview: React$1.ForwardRefExoticComponent<{
260
289
  className?: string;
261
290
  } & React$1.RefAttributes<HTMLDivElement>>;
262
291
 
263
- declare function Calendar({ className, classNames, showOutsideDays, ...props }: React$1.ComponentProps<typeof DayPicker>): react_jsx_runtime.JSX.Element;
264
-
265
292
  declare function Card({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
266
293
  declare function CardHeader({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
267
294
  declare function CardTitle({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
@@ -339,35 +366,319 @@ declare function Collapsible({ ...props }: React.ComponentProps<typeof Collapsib
339
366
  declare function CollapsibleTrigger({ ...props }: React.ComponentProps<typeof CollapsiblePrimitive.CollapsibleTrigger>): react_jsx_runtime.JSX.Element;
340
367
  declare function CollapsibleContent({ ...props }: React.ComponentProps<typeof CollapsiblePrimitive.CollapsibleContent>): react_jsx_runtime.JSX.Element;
341
368
 
342
- interface DateTimePickerProps {
343
- date?: Date;
369
+ interface DatePickerProps {
370
+ /**
371
+ * Data selecionada
372
+ */
373
+ value?: Date;
374
+ /**
375
+ * Callback quando a data muda
376
+ */
344
377
  onChange?: (date: Date | undefined) => void;
345
- label?: string;
378
+ /**
379
+ * Placeholder do campo
380
+ * @default "Selecione uma data"
381
+ */
346
382
  placeholder?: string;
347
- className?: string;
383
+ /**
384
+ * Desabilita o componente
385
+ */
348
386
  disabled?: boolean;
387
+ /**
388
+ * Data mínima permitida
389
+ */
390
+ minDate?: Date;
391
+ /**
392
+ * Data máxima permitida
393
+ */
394
+ maxDate?: Date;
395
+ /**
396
+ * Formato de exibição da data
397
+ * @default "dd/MM/yyyy" ou "dd/MM/yyyy HH:mm" se showTime
398
+ */
399
+ dateFormat?: string;
400
+ /**
401
+ * Locale para formatação
402
+ * @default ptBR
403
+ */
404
+ locale?: Locale;
405
+ /**
406
+ * Classes CSS adicionais para o trigger
407
+ */
408
+ className?: string;
409
+ /**
410
+ * Estado de erro
411
+ */
412
+ error?: boolean;
413
+ /**
414
+ * Mostra seletor de hora
415
+ * @default false
416
+ */
417
+ showTime?: boolean;
418
+ /**
419
+ * Formato de hora (12h ou 24h)
420
+ * @default "24h"
421
+ */
422
+ timeFormat?: "12h" | "24h";
423
+ /**
424
+ * Incremento de minutos
425
+ * @default 5
426
+ */
427
+ minuteStep?: 1 | 5 | 10 | 15 | 30;
428
+ /**
429
+ * Horário padrão quando showTime=true e uma data é selecionada
430
+ * @default "09:00"
431
+ */
432
+ defaultTime?: string;
433
+ /**
434
+ * ID do campo para acessibilidade
435
+ */
436
+ id?: string;
437
+ /**
438
+ * Nome do campo para formulários
439
+ */
440
+ name?: string;
441
+ }
442
+ /**
443
+ * DatePicker - Campo de seleção de data com hora opcional
444
+ *
445
+ * @example
446
+ * // Apenas data
447
+ * <DatePicker
448
+ * value={date}
449
+ * onChange={setDate}
450
+ * placeholder="Data de nascimento"
451
+ * />
452
+ *
453
+ * @example
454
+ * // Data e hora
455
+ * <DatePicker
456
+ * value={appointmentDate}
457
+ * onChange={setAppointmentDate}
458
+ * placeholder="Data e hora da reunião"
459
+ * showTime
460
+ * minuteStep={15}
461
+ * />
462
+ *
463
+ * @example
464
+ * // Com limites
465
+ * <DatePicker
466
+ * value={date}
467
+ * onChange={setDate}
468
+ * minDate={new Date()}
469
+ * maxDate={addMonths(new Date(), 3)}
470
+ * />
471
+ */
472
+ declare function DatePicker({ value, onChange, placeholder, disabled, minDate, maxDate, dateFormat, locale, className, error, showTime, timeFormat, minuteStep, defaultTime, id, name, }: DatePickerProps): react_jsx_runtime.JSX.Element;
473
+ declare namespace DatePicker {
474
+ var displayName: string;
349
475
  }
350
- declare function DateTimePicker({ date, onChange, label, placeholder, className, disabled, }: DateTimePickerProps): react_jsx_runtime.JSX.Element;
351
476
 
477
+ interface DateRangePreset {
478
+ label: string;
479
+ value: DateRange;
480
+ }
352
481
  interface DateRangePickerProps {
353
- dateRange?: DateRange;
482
+ /**
483
+ * Intervalo de datas selecionado
484
+ */
485
+ value?: DateRange;
486
+ /**
487
+ * Callback quando o intervalo muda
488
+ */
354
489
  onChange?: (range: DateRange | undefined) => void;
355
- label?: string;
490
+ /**
491
+ * Placeholder do campo
492
+ * @default "Selecione um período"
493
+ */
356
494
  placeholder?: string;
357
- className?: string;
495
+ /**
496
+ * Desabilita o componente
497
+ */
358
498
  disabled?: boolean;
359
- withTime?: boolean;
499
+ /**
500
+ * Data mínima permitida
501
+ */
502
+ minDate?: Date;
503
+ /**
504
+ * Data máxima permitida
505
+ */
506
+ maxDate?: Date;
507
+ /**
508
+ * Formato de exibição da data
509
+ * @default "dd/MM/yyyy"
510
+ */
511
+ dateFormat?: string;
512
+ /**
513
+ * Locale para formatação
514
+ * @default ptBR
515
+ */
516
+ locale?: Locale;
517
+ /**
518
+ * Classes CSS adicionais para o trigger
519
+ */
520
+ className?: string;
521
+ /**
522
+ * Estado de erro
523
+ */
524
+ error?: boolean;
525
+ /**
526
+ * Número de meses a exibir
527
+ * @default 2
528
+ */
529
+ numberOfMonths?: 1 | 2;
530
+ /**
531
+ * Mostra seletor de hora
532
+ * @default false
533
+ */
534
+ showTime?: boolean;
535
+ /**
536
+ * Formato de hora (12h ou 24h)
537
+ * @default "24h"
538
+ */
539
+ timeFormat?: "12h" | "24h";
540
+ /**
541
+ * Incremento de minutos
542
+ * @default 15
543
+ */
544
+ minuteStep?: 1 | 5 | 10 | 15 | 30;
545
+ /**
546
+ * Presets de intervalos rápidos
547
+ */
548
+ presets?: DateRangePreset[];
549
+ /**
550
+ * Mostra presets padrão (Hoje, Últimos 7 dias, etc.)
551
+ * @default true
552
+ */
553
+ showDefaultPresets?: boolean;
554
+ /**
555
+ * ID do campo para acessibilidade
556
+ */
557
+ id?: string;
558
+ /**
559
+ * Nome do campo para formulários
560
+ */
561
+ name?: string;
562
+ }
563
+ /**
564
+ * DateRangePicker - Campo de seleção de intervalo de datas com hora opcional
565
+ *
566
+ * @example
567
+ * // Básico
568
+ * <DateRangePicker
569
+ * value={dateRange}
570
+ * onChange={setDateRange}
571
+ * placeholder="Período do relatório"
572
+ * />
573
+ *
574
+ * @example
575
+ * // Com hora
576
+ * <DateRangePicker
577
+ * value={booking}
578
+ * onChange={setBooking}
579
+ * placeholder="Reserva da sala"
580
+ * showTime
581
+ * minuteStep={30}
582
+ * />
583
+ *
584
+ * @example
585
+ * // Com presets customizados
586
+ * <DateRangePicker
587
+ * value={period}
588
+ * onChange={setPeriod}
589
+ * presets={[
590
+ * { label: "Q1", value: { from: q1Start, to: q1End } },
591
+ * { label: "Q2", value: { from: q2Start, to: q2End } },
592
+ * ]}
593
+ * />
594
+ */
595
+ declare function DateRangePicker({ value, onChange, placeholder, disabled, minDate, maxDate, dateFormat, locale, className, error, numberOfMonths, showTime, timeFormat, minuteStep, presets, showDefaultPresets, id, name, }: DateRangePickerProps): react_jsx_runtime.JSX.Element;
596
+ declare namespace DateRangePicker {
597
+ var displayName: string;
360
598
  }
361
- declare function DateRangePicker({ dateRange, onChange, label, placeholder, className, disabled, withTime, }: DateRangePickerProps): react_jsx_runtime.JSX.Element;
362
599
 
363
600
  interface TimePickerProps {
364
- date?: Date;
365
- onChange?: (date: Date | undefined) => void;
366
- label?: string;
367
- className?: string;
601
+ /**
602
+ * Valor atual no formato "HH:mm"
603
+ */
604
+ value?: string;
605
+ /**
606
+ * Callback quando o horário muda
607
+ */
608
+ onChange?: (time: string) => void;
609
+ /**
610
+ * Formato de exibição (12h com AM/PM ou 24h)
611
+ * @default "24h"
612
+ */
613
+ format?: "12h" | "24h";
614
+ /**
615
+ * Incremento de minutos no seletor
616
+ * @default 5
617
+ */
618
+ minuteStep?: 1 | 5 | 10 | 15 | 30;
619
+ /**
620
+ * Horário mínimo permitido (formato "HH:mm")
621
+ */
622
+ minTime?: string;
623
+ /**
624
+ * Horário máximo permitido (formato "HH:mm")
625
+ */
626
+ maxTime?: string;
627
+ /**
628
+ * Desabilita o componente
629
+ */
368
630
  disabled?: boolean;
631
+ /**
632
+ * Placeholder
633
+ * @default "HH:MM"
634
+ */
635
+ placeholder?: string;
636
+ /**
637
+ * Classes CSS adicionais
638
+ */
639
+ className?: string;
640
+ /**
641
+ * Mostra o ícone de relógio
642
+ * @default true
643
+ */
644
+ showIcon?: boolean;
645
+ /**
646
+ * Variante de exibição
647
+ * @default "input"
648
+ */
649
+ variant?: "input" | "select" | "inline";
650
+ }
651
+ /**
652
+ * TimePicker - Componente para seleção de horário
653
+ *
654
+ * @example
655
+ * // Input simples
656
+ * <TimePicker
657
+ * value={time}
658
+ * onChange={setTime}
659
+ * placeholder="Horário"
660
+ * />
661
+ *
662
+ * @example
663
+ * // Com step de 15 minutos
664
+ * <TimePicker
665
+ * value={time}
666
+ * onChange={setTime}
667
+ * minuteStep={15}
668
+ * />
669
+ *
670
+ * @example
671
+ * // Formato 12h
672
+ * <TimePicker
673
+ * value={time}
674
+ * onChange={setTime}
675
+ * format="12h"
676
+ * />
677
+ */
678
+ declare function TimePicker({ value, onChange, format, minuteStep, minTime, maxTime, disabled, placeholder, className, showIcon, variant, }: TimePickerProps): react_jsx_runtime.JSX.Element | null;
679
+ declare namespace TimePicker {
680
+ var displayName: string;
369
681
  }
370
- declare function TimePicker({ date, onChange, label, className, disabled, }: TimePickerProps): react_jsx_runtime.JSX.Element;
371
682
 
372
683
  interface KanbanCardTag {
373
684
  id: string;
@@ -551,7 +862,7 @@ declare function NavigationMenu({ className, children, viewport, ...props }: Rea
551
862
  }): react_jsx_runtime.JSX.Element;
552
863
  declare function NavigationMenuList({ className, ...props }: React$1.ComponentProps<typeof NavigationMenuPrimitive.List>): react_jsx_runtime.JSX.Element;
553
864
  declare function NavigationMenuItem({ className, ...props }: React$1.ComponentProps<typeof NavigationMenuPrimitive.Item>): react_jsx_runtime.JSX.Element;
554
- declare const navigationMenuTriggerStyle: (props?: class_variance_authority_types.ClassProp | undefined) => string;
865
+ declare const navigationMenuTriggerStyle: (props?: class_variance_authority_dist_types.ClassProp | undefined) => string;
555
866
  declare function NavigationMenuTrigger({ className, children, ...props }: React$1.ComponentProps<typeof NavigationMenuPrimitive.Trigger>): react_jsx_runtime.JSX.Element;
556
867
  declare function NavigationMenuContent({ className, ...props }: React$1.ComponentProps<typeof NavigationMenuPrimitive.Content>): react_jsx_runtime.JSX.Element;
557
868
  declare function NavigationMenuLink({ className, ...props }: React$1.ComponentProps<typeof NavigationMenuPrimitive.Link>): react_jsx_runtime.JSX.Element;
@@ -654,7 +965,7 @@ declare function SidebarMenuItem({ className, ...props }: React$1.ComponentProps
654
965
  declare const sidebarMenuButtonVariants: (props?: ({
655
966
  variant?: "default" | "outline" | null | undefined;
656
967
  size?: "default" | "sm" | "lg" | null | undefined;
657
- } & class_variance_authority_types.ClassProp) | undefined) => string;
968
+ } & class_variance_authority_dist_types.ClassProp) | undefined) => string;
658
969
  declare function SidebarMenuButton({ asChild, isActive, variant, size, tooltip, className, ...props }: React$1.ComponentProps<"button"> & {
659
970
  asChild?: boolean;
660
971
  isActive?: boolean;
@@ -688,14 +999,459 @@ declare const Toaster: ({ ...props }: ToasterProps) => react_jsx_runtime.JSX.Ele
688
999
 
689
1000
  declare function Switch({ className, ...props }: React$1.ComponentProps<typeof SwitchPrimitive.Root>): react_jsx_runtime.JSX.Element;
690
1001
 
691
- declare function Table({ className, ...props }: React$1.ComponentProps<"table">): react_jsx_runtime.JSX.Element;
692
- declare function TableHeader({ className, ...props }: React$1.ComponentProps<"thead">): react_jsx_runtime.JSX.Element;
693
- declare function TableBody({ className, ...props }: React$1.ComponentProps<"tbody">): react_jsx_runtime.JSX.Element;
694
- declare function TableFooter({ className, ...props }: React$1.ComponentProps<"tfoot">): react_jsx_runtime.JSX.Element;
695
- declare const TableRow: React$1.ForwardRefExoticComponent<Omit<React$1.DetailedHTMLProps<React$1.HTMLAttributes<HTMLTableRowElement>, HTMLTableRowElement>, "ref"> & React$1.RefAttributes<HTMLTableRowElement>>;
696
- declare function TableHead({ className, ...props }: React$1.ComponentProps<"th">): react_jsx_runtime.JSX.Element;
697
- declare function TableCell({ className, ...props }: React$1.ComponentProps<"td">): react_jsx_runtime.JSX.Element;
698
- declare function TableCaption({ className, ...props }: React$1.ComponentProps<"caption">): react_jsx_runtime.JSX.Element;
1002
+ interface TableProps extends React$1.ComponentProps<"table"> {
1003
+ }
1004
+ interface TableHeaderProps extends React$1.ComponentProps<"thead"> {
1005
+ }
1006
+ interface TableBodyProps extends React$1.ComponentProps<"tbody"> {
1007
+ }
1008
+ interface TableFooterProps extends React$1.ComponentProps<"tfoot"> {
1009
+ }
1010
+ interface TableRowProps extends React$1.ComponentProps<"tr"> {
1011
+ }
1012
+ interface TableHeadProps extends React$1.ComponentProps<"th"> {
1013
+ }
1014
+ interface TableCellProps extends React$1.ComponentProps<"td"> {
1015
+ }
1016
+ interface TableCaptionProps extends React$1.ComponentProps<"caption"> {
1017
+ }
1018
+ declare const Table: React$1.ForwardRefExoticComponent<Omit<TableProps, "ref"> & React$1.RefAttributes<HTMLTableElement>>;
1019
+ declare const TableHeader: React$1.ForwardRefExoticComponent<Omit<TableHeaderProps, "ref"> & React$1.RefAttributes<HTMLTableSectionElement>>;
1020
+ declare const TableBody: React$1.ForwardRefExoticComponent<Omit<TableBodyProps, "ref"> & React$1.RefAttributes<HTMLTableSectionElement>>;
1021
+ declare const TableFooter: React$1.ForwardRefExoticComponent<Omit<TableFooterProps, "ref"> & React$1.RefAttributes<HTMLTableSectionElement>>;
1022
+ declare const TableRow: React$1.ForwardRefExoticComponent<Omit<TableRowProps, "ref"> & React$1.RefAttributes<HTMLTableRowElement>>;
1023
+ declare const TableHead: React$1.ForwardRefExoticComponent<Omit<TableHeadProps, "ref"> & React$1.RefAttributes<HTMLTableCellElement>>;
1024
+ declare const TableCell: React$1.ForwardRefExoticComponent<Omit<TableCellProps, "ref"> & React$1.RefAttributes<HTMLTableCellElement>>;
1025
+ declare const TableCaption: React$1.ForwardRefExoticComponent<Omit<TableCaptionProps, "ref"> & React$1.RefAttributes<HTMLTableCaptionElement>>;
1026
+
1027
+ /**
1028
+ * Labels for internationalization
1029
+ */
1030
+ interface TablePaginationLabels {
1031
+ /** "Anterior" */
1032
+ previous?: string;
1033
+ /** "Próxima" */
1034
+ next?: string;
1035
+ /** "Primeira" */
1036
+ first?: string;
1037
+ /** "Última" */
1038
+ last?: string;
1039
+ /** "Mostrando" */
1040
+ showing?: string;
1041
+ /** "de" */
1042
+ of?: string;
1043
+ /** "resultados" */
1044
+ results?: string;
1045
+ /** "Itens por página" */
1046
+ itemsPerPage?: string;
1047
+ /** "Página" */
1048
+ page?: string;
1049
+ }
1050
+ /**
1051
+ * Props for the TablePagination component
1052
+ *
1053
+ * @example
1054
+ * ```tsx
1055
+ * // With useTablePagination hook
1056
+ * const pagination = useTablePagination(data, { pageSize: 10 });
1057
+ *
1058
+ * <TablePagination
1059
+ * currentPage={pagination.currentPage}
1060
+ * totalPages={pagination.totalPages}
1061
+ * pageSize={pagination.pageSize}
1062
+ * totalItems={pagination.totalItems}
1063
+ * onPageChange={pagination.goToPage}
1064
+ * onPageSizeChange={pagination.setPageSize}
1065
+ * />
1066
+ * ```
1067
+ */
1068
+ interface TablePaginationProps {
1069
+ /** Current page number (1-indexed) */
1070
+ currentPage: number;
1071
+ /** Total number of pages */
1072
+ totalPages: number;
1073
+ /** Current page size */
1074
+ pageSize: number;
1075
+ /** Total number of items */
1076
+ totalItems: number;
1077
+ /** Callback when page changes */
1078
+ onPageChange: (page: number) => void;
1079
+ /** Callback when page size changes */
1080
+ onPageSizeChange?: (size: number) => void;
1081
+ /** Available page size options */
1082
+ pageSizeOptions?: number[];
1083
+ /** Maximum number of visible page buttons */
1084
+ maxVisiblePages?: number;
1085
+ /** Show "Showing X of Y" info */
1086
+ showInfo?: boolean;
1087
+ /** Show page number buttons */
1088
+ showPageNumbers?: boolean;
1089
+ /** Show page size selector */
1090
+ showPageSizeSelector?: boolean;
1091
+ /** Show first/last page buttons */
1092
+ showFirstLastButtons?: boolean;
1093
+ /** Custom labels for i18n */
1094
+ labels?: TablePaginationLabels;
1095
+ /** Additional className */
1096
+ className?: string;
1097
+ }
1098
+ /**
1099
+ * Generate array of page numbers with ellipsis
1100
+ */
1101
+ declare function getPageNumbers(currentPage: number, totalPages: number, maxVisible?: number): (number | "ellipsis")[];
1102
+ /**
1103
+ * TablePagination Component
1104
+ *
1105
+ * A complete, ready-to-use pagination component for tables and data grids.
1106
+ * Integrates seamlessly with the `useTablePagination` hook.
1107
+ *
1108
+ * @example
1109
+ * ```tsx
1110
+ * import { useTablePagination, TablePagination, Table, TableBody, ... } from "@iclips/ui";
1111
+ *
1112
+ * function MyTable({ data }) {
1113
+ * const pagination = useTablePagination(data, { pageSize: 10 });
1114
+ *
1115
+ * return (
1116
+ * <>
1117
+ * <Table>
1118
+ * <TableBody>
1119
+ * {pagination.paginatedData.map(item => (
1120
+ * <TableRow key={item.id}>...</TableRow>
1121
+ * ))}
1122
+ * </TableBody>
1123
+ * </Table>
1124
+ *
1125
+ * <TablePagination
1126
+ * currentPage={pagination.currentPage}
1127
+ * totalPages={pagination.totalPages}
1128
+ * pageSize={pagination.pageSize}
1129
+ * totalItems={pagination.totalItems}
1130
+ * onPageChange={pagination.goToPage}
1131
+ * onPageSizeChange={pagination.setPageSize}
1132
+ * />
1133
+ * </>
1134
+ * );
1135
+ * }
1136
+ * ```
1137
+ *
1138
+ * @example
1139
+ * ```tsx
1140
+ * // Minimal usage (without page size selector)
1141
+ * <TablePagination
1142
+ * currentPage={1}
1143
+ * totalPages={10}
1144
+ * pageSize={20}
1145
+ * totalItems={200}
1146
+ * onPageChange={(page) => setCurrentPage(page)}
1147
+ * showPageSizeSelector={false}
1148
+ * />
1149
+ * ```
1150
+ */
1151
+ declare function TablePagination({ currentPage, totalPages, pageSize, totalItems, onPageChange, onPageSizeChange, pageSizeOptions, maxVisiblePages, showInfo, showPageNumbers, showPageSizeSelector, showFirstLastButtons, labels: customLabels, className, }: TablePaginationProps): react_jsx_runtime.JSX.Element | null;
1152
+ declare namespace TablePagination {
1153
+ var displayName: string;
1154
+ }
1155
+
1156
+ /**
1157
+ * Utility types for DataTable implementations
1158
+ *
1159
+ * These types provide standard interfaces for common DataTable patterns
1160
+ * like sorting, pagination, column definitions, and selection.
1161
+ */
1162
+ /**
1163
+ * Direction of sorting
1164
+ */
1165
+ type SortDirection = "asc" | "desc" | null;
1166
+ /**
1167
+ * Sort configuration for a table
1168
+ *
1169
+ * @example
1170
+ * ```tsx
1171
+ * const [sortConfig, setSortConfig] = useState<SortConfig<User>>({
1172
+ * column: "name",
1173
+ * direction: "asc"
1174
+ * });
1175
+ * ```
1176
+ */
1177
+ interface SortConfig<T> {
1178
+ column: keyof T | null;
1179
+ direction: SortDirection;
1180
+ }
1181
+ /**
1182
+ * Column definition for a DataTable
1183
+ *
1184
+ * @example
1185
+ * ```tsx
1186
+ * const columns: ColumnDef<User>[] = [
1187
+ * {
1188
+ * key: "name",
1189
+ * header: "Name",
1190
+ * sortable: true,
1191
+ * width: "200px"
1192
+ * },
1193
+ * {
1194
+ * key: "email",
1195
+ * header: "Email",
1196
+ * render: (value, row) => <a href={`mailto:${value}`}>{value}</a>
1197
+ * }
1198
+ * ];
1199
+ * ```
1200
+ */
1201
+ interface ColumnDef<T extends Record<string, any>> {
1202
+ /** Key of the data property to display */
1203
+ key: keyof T;
1204
+ /** Header label or React node */
1205
+ header: string | React.ReactNode;
1206
+ /** Whether this column is sortable */
1207
+ sortable?: boolean;
1208
+ /** Column width (CSS value) */
1209
+ width?: string | number;
1210
+ /** Text alignment */
1211
+ align?: "left" | "center" | "right";
1212
+ /** Custom render function for the cell content */
1213
+ render?: (value: T[keyof T], row: T, index: number) => React.ReactNode;
1214
+ /** Additional className for the cell */
1215
+ className?: string;
1216
+ /** Additional className for the header */
1217
+ headerClassName?: string;
1218
+ }
1219
+ /**
1220
+ * Pagination configuration
1221
+ *
1222
+ * @example
1223
+ * ```tsx
1224
+ * const [pagination, setPagination] = useState<PaginationConfig>({
1225
+ * currentPage: 1,
1226
+ * pageSize: 10,
1227
+ * totalItems: 100
1228
+ * });
1229
+ * ```
1230
+ */
1231
+ interface PaginationConfig {
1232
+ /** Current page number (1-indexed) */
1233
+ currentPage: number;
1234
+ /** Number of items per page */
1235
+ pageSize: number;
1236
+ /** Total number of items */
1237
+ totalItems: number;
1238
+ /** Callback when page changes */
1239
+ onPageChange?: (page: number) => void;
1240
+ /** Callback when page size changes */
1241
+ onPageSizeChange?: (size: number) => void;
1242
+ }
1243
+ /**
1244
+ * Helper to calculate pagination metadata
1245
+ */
1246
+ interface PaginationMetadata {
1247
+ totalPages: number;
1248
+ startIndex: number;
1249
+ endIndex: number;
1250
+ hasNextPage: boolean;
1251
+ hasPreviousPage: boolean;
1252
+ }
1253
+ /**
1254
+ * Selection state for table rows
1255
+ *
1256
+ * @example
1257
+ * ```tsx
1258
+ * const [selection, setSelection] = useState<SelectionState>({
1259
+ * selectedIds: new Set(["1", "2"]),
1260
+ * isAllSelected: false
1261
+ * });
1262
+ * ```
1263
+ */
1264
+ interface SelectionState {
1265
+ /** Set of selected row IDs */
1266
+ selectedIds: Set<string | number>;
1267
+ /** Whether all rows are selected */
1268
+ isAllSelected: boolean;
1269
+ }
1270
+ /**
1271
+ * Complete table state with all common features
1272
+ *
1273
+ * @example
1274
+ * ```tsx
1275
+ * const [tableState, setTableState] = useState<TableState<User>>({
1276
+ * data: users,
1277
+ * sort: { column: "name", direction: "asc" },
1278
+ * pagination: { currentPage: 1, pageSize: 10, totalItems: 100 },
1279
+ * selection: { selectedIds: new Set(), isAllSelected: false }
1280
+ * });
1281
+ * ```
1282
+ */
1283
+ interface TableState<T extends Record<string, any>> {
1284
+ /** Table data */
1285
+ data: T[];
1286
+ /** Sort configuration */
1287
+ sort?: SortConfig<T>;
1288
+ /** Pagination configuration */
1289
+ pagination?: PaginationConfig;
1290
+ /** Selection state */
1291
+ selection?: SelectionState;
1292
+ /** Loading state */
1293
+ isLoading?: boolean;
1294
+ /** Error state */
1295
+ error?: string | null;
1296
+ }
1297
+ /**
1298
+ * Filter operator types
1299
+ */
1300
+ type FilterOperator = "equals" | "contains" | "startsWith" | "endsWith" | "greaterThan" | "lessThan" | "between" | "in";
1301
+ /**
1302
+ * Filter configuration for a column
1303
+ *
1304
+ * @example
1305
+ * ```tsx
1306
+ * const filters: FilterConfig<User>[] = [
1307
+ * {
1308
+ * column: "status",
1309
+ * operator: "in",
1310
+ * value: ["active", "pending"]
1311
+ * },
1312
+ * {
1313
+ * column: "age",
1314
+ * operator: "greaterThan",
1315
+ * value: 18
1316
+ * }
1317
+ * ];
1318
+ * ```
1319
+ */
1320
+ interface FilterConfig<T> {
1321
+ column: keyof T;
1322
+ operator: FilterOperator;
1323
+ value: any;
1324
+ }
1325
+ /**
1326
+ * Configuration for draggable rows
1327
+ */
1328
+ interface DragDropConfig {
1329
+ /** Whether drag and drop is enabled */
1330
+ enabled: boolean;
1331
+ /** Callback when a row is dropped */
1332
+ onDrop?: (dragIndex: number, dropIndex: number) => void;
1333
+ /** Custom drag handle component */
1334
+ dragHandle?: React.ReactNode;
1335
+ }
1336
+ /**
1337
+ * Configuration for expandable rows
1338
+ *
1339
+ * @example
1340
+ * ```tsx
1341
+ * const expandConfig: RowExpansionConfig<User> = {
1342
+ * enabled: true,
1343
+ * expandedRows: new Set(["1", "3"]),
1344
+ * renderExpandedContent: (row) => (
1345
+ * <div>Details for {row.name}</div>
1346
+ * )
1347
+ * };
1348
+ * ```
1349
+ */
1350
+ interface RowExpansionConfig<T extends Record<string, any>> {
1351
+ /** Whether row expansion is enabled */
1352
+ enabled: boolean;
1353
+ /** Set of expanded row IDs */
1354
+ expandedRows?: Set<string | number>;
1355
+ /** Callback when row expansion changes */
1356
+ onExpansionChange?: (rowId: string | number, isExpanded: boolean) => void;
1357
+ /** Custom content to render when row is expanded */
1358
+ renderExpandedContent?: (row: T, index: number) => React.ReactNode;
1359
+ }
1360
+ /**
1361
+ * Sort function type
1362
+ */
1363
+ type SortFunction<T extends Record<string, any>> = (a: T, b: T, config: SortConfig<T>) => number;
1364
+ /**
1365
+ * Filter function type
1366
+ */
1367
+ type FilterFunction<T extends Record<string, any>> = (row: T, filters: FilterConfig<T>[]) => boolean;
1368
+ /**
1369
+ * Helper function to calculate pagination metadata
1370
+ */
1371
+ declare function calculatePaginationMetadata(config: PaginationConfig): PaginationMetadata;
1372
+
1373
+ interface FilterCondition {
1374
+ id: string;
1375
+ field: string;
1376
+ operator: string;
1377
+ value: string | string[];
1378
+ }
1379
+ interface FilterField {
1380
+ value: string;
1381
+ label: string;
1382
+ type?: "text" | "number" | "select" | "date";
1383
+ options?: {
1384
+ value: string;
1385
+ label: string;
1386
+ }[];
1387
+ multiSelect?: boolean;
1388
+ }
1389
+ interface FilterBuilderProps {
1390
+ conditions: FilterCondition[];
1391
+ onConditionsChange: (conditions: FilterCondition[]) => void;
1392
+ fields: FilterField[];
1393
+ className?: string;
1394
+ }
1395
+ declare function FilterBuilder({ conditions, onConditionsChange, fields, className, }: FilterBuilderProps): react_jsx_runtime.JSX.Element;
1396
+
1397
+ interface DataTableProps<T extends Record<string, any>> {
1398
+ data: T[];
1399
+ columns: ColumnDef<T>[];
1400
+ searchPlaceholder?: string;
1401
+ searchableColumns?: (keyof T)[];
1402
+ enableSearch?: boolean;
1403
+ filterFields?: FilterField[];
1404
+ enableFilters?: boolean;
1405
+ pageSizeOptions?: number[];
1406
+ initialPageSize?: number;
1407
+ toolbarActions?: React__default.ReactNode;
1408
+ className?: string;
1409
+ }
1410
+ declare function DataTable<T extends Record<string, any>>({ data, columns, searchPlaceholder, searchableColumns, enableSearch, filterFields, enableFilters, pageSizeOptions, initialPageSize, toolbarActions, className, }: DataTableProps<T>): react_jsx_runtime.JSX.Element;
1411
+
1412
+ /**
1413
+ * Example component demonstrating the enhanced DataTable with Search + Filters
1414
+ */
1415
+ declare function DataTableExample(): react_jsx_runtime.JSX.Element;
1416
+
1417
+ interface ActiveFilter {
1418
+ id: string;
1419
+ label: string;
1420
+ value?: string;
1421
+ onRemove?: () => void;
1422
+ }
1423
+ interface FilterBarProps {
1424
+ activeFilters?: ActiveFilter[];
1425
+ onClearAll?: () => void;
1426
+ onOpenFilters?: () => void;
1427
+ className?: string;
1428
+ children?: React$1.ReactNode;
1429
+ }
1430
+ declare function FilterBar({ activeFilters, onClearAll, onOpenFilters, className, children, }: FilterBarProps): react_jsx_runtime.JSX.Element;
1431
+
1432
+ interface FilterChipProps {
1433
+ label: string;
1434
+ value?: string;
1435
+ onRemove?: () => void;
1436
+ className?: string;
1437
+ }
1438
+ declare function FilterChip({ label, value, onRemove, className }: FilterChipProps): react_jsx_runtime.JSX.Element;
1439
+
1440
+ interface SavedFilter {
1441
+ id: string;
1442
+ name: string;
1443
+ description?: string;
1444
+ isFavorite?: boolean;
1445
+ filterCount?: number;
1446
+ }
1447
+ interface SavedFiltersProps {
1448
+ filters?: SavedFilter[];
1449
+ onSelectFilter?: (filterId: string) => void;
1450
+ onToggleFavorite?: (filterId: string) => void;
1451
+ onDeleteFilter?: (filterId: string) => void;
1452
+ className?: string;
1453
+ }
1454
+ declare function SavedFilters({ filters, onSelectFilter, onToggleFavorite, onDeleteFilter, className, }: SavedFiltersProps): react_jsx_runtime.JSX.Element;
699
1455
 
700
1456
  declare function Tabs({ className, ...props }: React$1.ComponentProps<typeof TabsPrimitive.Root>): react_jsx_runtime.JSX.Element;
701
1457
  declare function TabsList({ className, ...props }: React$1.ComponentProps<typeof TabsPrimitive.List>): react_jsx_runtime.JSX.Element;
@@ -734,7 +1490,7 @@ declare function Textarea({ className, ...props }: React$1.ComponentProps<"texta
734
1490
  declare const toggleVariants: (props?: ({
735
1491
  variant?: "default" | "outline" | null | undefined;
736
1492
  size?: "default" | "sm" | "lg" | null | undefined;
737
- } & class_variance_authority_types.ClassProp) | undefined) => string;
1493
+ } & class_variance_authority_dist_types.ClassProp) | undefined) => string;
738
1494
  declare function Toggle({ className, variant, size, ...props }: React$1.ComponentProps<typeof TogglePrimitive.Root> & VariantProps<typeof toggleVariants>): react_jsx_runtime.JSX.Element;
739
1495
 
740
1496
  declare function ToggleGroup({ className, variant, size, children, ...props }: React$1.ComponentProps<typeof ToggleGroupPrimitive.Root> & VariantProps<typeof toggleVariants>): react_jsx_runtime.JSX.Element;
@@ -1038,4 +1794,4 @@ interface PrintInfoGridProps {
1038
1794
  }
1039
1795
  declare function PrintInfoGrid({ items, columns, className, }: PrintInfoGridProps): react_jsx_runtime.JSX.Element;
1040
1796
 
1041
- export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, Alert, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AppLayout, type AppLayoutProps, AspectRatio, Avatar, AvatarFallback, AvatarImage, Badge, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Button, Calendar, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious, type ChartConfig, ChartContainer, ChartLegend, ChartLegendContent, ChartTooltip, ChartTooltipContent, Checkbox, Collapsible, CollapsibleContent, CollapsibleTrigger, ColorPicker, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, ContractPrint, ContractPrintPreview, type ContractPrintProps, ContractTemplate, type DadosContrato, DateRangePicker, type DateRangePickerProps, DateTimePicker, type DateTimePickerProps, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerTitle, DrawerTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmptyCalendarIllustration, EmptyInboxIllustration, EmptyProjectsIllustration, EmptySearchIllustration, ErrorStateIllustration, Form, FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage, HoverCard, HoverCardContent, HoverCardTrigger, type IllustrationProps, Illustrations, ImageWithFallback, Input, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, KanbanCard, type KanbanCardAssignee, type KanbanCardProps, type KanbanCardTag, Label, Menubar, MenubarCheckboxItem, MenubarContent, MenubarGroup, MenubarItem, MenubarLabel, MenubarMenu, MenubarPortal, MenubarRadioGroup, MenubarRadioItem, MenubarSeparator, MenubarShortcut, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarTrigger, NavigationMenu, NavigationMenuContent, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, Popover, PopoverContent, PopoverTrigger, type PrimaryNavItem, PrintFooter, PrintHeader, PrintInfoGrid, PrintSection, PrintSignature, PrintTable, Progress, type ProposalData, ProposalTemplate, RadioGroup, RadioGroupItem, ResizableHandle, ResizablePanel, ResizablePanelGroup, ScrollArea, ScrollBar, type SecondaryNavItem, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectSeparator, SelectTrigger, SelectValue, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Skeleton, Slider, Toaster as Sonner, SuccessStateIllustration, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, Textarea, TimePicker, type TimePickerProps, Toggle, ToggleGroup, ToggleGroupItem, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, UnderlineTabs, UnderlineTabsContent, UnderlineTabsList, UnderlineTabsTrigger, type UsePrintContractOptions, badgeVariants, buttonVariants, cn, dadosContratoExemplo, navigationMenuTriggerStyle, toggleVariants, useFormField, useIsMobile, usePrintContract, useSidebar };
1797
+ export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, type ActiveFilter, Alert, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AppLayout, type AppLayoutProps, AspectRatio, Avatar, AvatarFallback, AvatarImage, Badge, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Button, Calendar, type CalendarProps, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious, type ChartConfig, ChartContainer, ChartLegend, ChartLegendContent, ChartTooltip, ChartTooltipContent, Checkbox, Collapsible, CollapsibleContent, CollapsibleTrigger, ColorPicker, type ColumnDef, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, ContractPrint, ContractPrintPreview, type ContractPrintProps, ContractTemplate, type DadosContrato, DataTable, DataTableExample, DatePicker, type DatePickerProps, DateRangePicker, type DateRangePickerProps, type DateRangePreset, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, type DragDropConfig, Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerTitle, DrawerTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmptyCalendarIllustration, EmptyInboxIllustration, EmptyProjectsIllustration, EmptySearchIllustration, ErrorStateIllustration, FilterBar, type FilterBarProps, FilterBuilder, type FilterBuilderProps, FilterChip, type FilterChipProps, type FilterCondition, type FilterConfig, type FilterField, type FilterFunction, type FilterOperator, Form, FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage, HoverCard, HoverCardContent, HoverCardTrigger, type IllustrationProps, Illustrations, ImageWithFallback, Input, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, KanbanCard, type KanbanCardAssignee, type KanbanCardProps, type KanbanCardTag, Label, Menubar, MenubarCheckboxItem, MenubarContent, MenubarGroup, MenubarItem, MenubarLabel, MenubarMenu, MenubarPortal, MenubarRadioGroup, MenubarRadioItem, MenubarSeparator, MenubarShortcut, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarTrigger, NavigationMenu, NavigationMenuContent, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, Pagination, type PaginationConfig, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, type PaginationMetadata, PaginationNext, PaginationPrevious, Popover, PopoverContent, PopoverTrigger, type PrimaryNavItem, PrintFooter, PrintHeader, PrintInfoGrid, PrintSection, PrintSignature, PrintTable, Progress, type ProposalData, ProposalTemplate, RadioGroup, RadioGroupItem, ResizableHandle, ResizablePanel, ResizablePanelGroup, type RowExpansionConfig, type SavedFilter, SavedFilters, type SavedFiltersProps, ScrollArea, ScrollBar, type SecondaryNavItem, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectSeparator, SelectTrigger, SelectValue, type SelectionState, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Skeleton, Slider, Toaster as Sonner, type SortConfig, type SortDirection, type SortFunction, SuccessStateIllustration, Switch, Table, TableBody, type TableBodyProps, TableCaption, type TableCaptionProps, TableCell, type TableCellProps, TableFooter, type TableFooterProps, TableHead, type TableHeadProps, TableHeader, type TableHeaderProps, TablePagination, type TablePaginationLabels, type TablePaginationProps, type TableProps, TableRow, type TableRowProps, type TableState, Tabs, TabsContent, TabsList, TabsTrigger, Textarea, TimePicker, type TimePickerProps, Toggle, ToggleGroup, ToggleGroupItem, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, UnderlineTabs, UnderlineTabsContent, UnderlineTabsList, UnderlineTabsTrigger, type UsePrintContractOptions, badgeVariants, buttonVariants, calculatePaginationMetadata, cn, dadosContratoExemplo, getPageNumbers, navigationMenuTriggerStyle, toggleVariants, useFormField, useIsMobile, usePrintContract, useSidebar };