@dimaan/ui 0.0.13 → 0.0.14

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
@@ -1,6 +1,6 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import * as react from 'react';
3
- import { HTMLAttributes, ReactNode, ButtonHTMLAttributes, ReactElement, InputHTMLAttributes, ChangeEvent, ComponentPropsWithoutRef, FieldsetHTMLAttributes, Ref, TextareaHTMLAttributes } from 'react';
3
+ import { HTMLAttributes, ReactNode, ButtonHTMLAttributes, ReactElement, InputHTMLAttributes, ChangeEvent, ComponentPropsWithoutRef, FormEventHandler, FieldsetHTMLAttributes, Ref, TextareaHTMLAttributes } from 'react';
4
4
  import { LinkProps } from 'react-router-dom';
5
5
  import { Locale } from 'react-day-picker';
6
6
  import * as RadixDropdown from '@radix-ui/react-dropdown-menu';
@@ -675,6 +675,208 @@ type FieldProps<TValues extends FieldValues = FieldValues, TName extends FieldPa
675
675
  */
676
676
  declare function Field<TValues extends FieldValues = FieldValues, TName extends FieldPath<TValues> = FieldPath<TValues>>(props: FieldProps<TValues, TName>): ReactElement;
677
677
 
678
+ type PageHeaderHeadingLevel = 'h1' | 'h2' | 'h3' | 'h4';
679
+ /** Props passed to the routing-library `render` slot of the back button. */
680
+ interface PageHeaderBackRenderProps {
681
+ to?: LinkProps['to'];
682
+ className?: string;
683
+ children: ReactNode;
684
+ onClick?: () => void;
685
+ }
686
+ interface PageHeaderBackProps {
687
+ /** Visible label next to the arrow. Defaults to `"Back"`. */
688
+ label?: ReactNode;
689
+ /** Target to — renders a React Router `<Link>`. */
690
+ to?: LinkProps['to'];
691
+ /** Click handler — renders a `<button>` (or wraps the `render` element). */
692
+ onClick?: () => void;
693
+ /** Routing-library render prop (e.g. wrap a different link component). Wins over `to`. */
694
+ render?: (props: PageHeaderBackRenderProps) => ReactElement;
695
+ }
696
+ interface PageHeaderProps extends Omit<HTMLAttributes<HTMLElement>, 'title'> {
697
+ /** Page title (required). */
698
+ title: ReactNode;
699
+ /** Optional secondary text under the title. */
700
+ description?: ReactNode;
701
+ /** Slot above the title for breadcrumbs (e.g. `<Breadcrumbs items={…} />` or your own JSX). */
702
+ breadcrumbs?: ReactNode;
703
+ /** Optional back button rendered above the title row. */
704
+ back?: PageHeaderBackProps;
705
+ /** Slot on the trailing side of the title row — buttons, dropdowns, etc. */
706
+ actions?: ReactNode;
707
+ /** Heading level for the title element. Defaults to `'h1'`. */
708
+ as?: PageHeaderHeadingLevel;
709
+ /** Add a bottom border separator. Default: `false`. */
710
+ bordered?: boolean;
711
+ }
712
+ /**
713
+ * Top-of-page header — title, optional description, breadcrumbs, back button,
714
+ * and actions slot. The first thing a user sees on any list / detail / form
715
+ * page in a dashboard.
716
+ *
717
+ * Designed to drop directly into `<DashboardContent>` (or any padded page
718
+ * container). Has no outer padding of its own — the surrounding layout owns
719
+ * spacing.
720
+ *
721
+ * @example List page header with primary action
722
+ * ```tsx
723
+ * <PageHeader
724
+ * title="Users"
725
+ * description="Manage your team members and their roles."
726
+ * actions={<Button onClick={openCreate}>Add user</Button>}
727
+ * bordered
728
+ * />
729
+ * ```
730
+ *
731
+ * @example Detail page header with back button
732
+ * ```tsx
733
+ * <PageHeader
734
+ * title={user.name}
735
+ * description={user.email}
736
+ * back={{
737
+ * label: 'Users',
738
+ * to: '/users',
739
+ * }}
740
+ * actions={
741
+ * <>
742
+ * <Button variant="outline">Edit</Button>
743
+ * <Button variant="destructive">Delete</Button>
744
+ * </>
745
+ * }
746
+ * />
747
+ * ```
748
+ *
749
+ * @example With breadcrumbs slot
750
+ * ```tsx
751
+ * <PageHeader
752
+ * breadcrumbs={
753
+ * <nav aria-label="Breadcrumb">
754
+ * <ol className="flex items-center gap-1">
755
+ * <li><Link to="/">Home</Link></li>
756
+ * <li>/</li>
757
+ * <li>Users</li>
758
+ * </ol>
759
+ * </nav>
760
+ * }
761
+ * title="Users"
762
+ * />
763
+ * ```
764
+ */
765
+ declare const PageHeader: react.ForwardRefExoticComponent<PageHeaderProps & react.RefAttributes<HTMLElement>>;
766
+
767
+ declare const pageHeaderBaseClass = "flex w-full flex-col gap-3";
768
+ /** Adds a bottom border separator below the header. */
769
+ declare const pageHeaderBorderedClass = "border-b border-border pb-4";
770
+ declare const pageHeaderTitleRowClass = "flex flex-wrap items-start justify-between gap-3 sm:gap-4";
771
+ declare const pageHeaderTitleBlockClass = "min-w-0 flex-1 space-y-1";
772
+ declare const pageHeaderTitleClass = "text-2xl font-semibold tracking-tight text-foreground";
773
+ declare const pageHeaderDescriptionClass = "text-sm text-muted-foreground";
774
+ declare const pageHeaderActionsClass = "flex shrink-0 flex-wrap items-center gap-2";
775
+ declare const pageHeaderBackClass = "inline-flex items-center gap-1.5 self-start text-sm text-muted-foreground transition-colors hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/40 focus-visible:ring-offset-2 focus-visible:ring-offset-background rounded-md";
776
+ declare const pageHeaderBackIconClass = "size-4 shrink-0 rtl:rotate-180";
777
+ declare const pageHeaderBreadcrumbsClass = "text-xs text-muted-foreground";
778
+
779
+ interface FormPageProps {
780
+ /** Page title (required). Rendered as an `<h1>` by `PageHeader`. */
781
+ title: ReactNode;
782
+ /** Optional secondary text under the title. */
783
+ description?: ReactNode;
784
+ /** Optional back-button config — forwarded straight to `PageHeader.back`. */
785
+ back?: PageHeaderBackProps;
786
+ /** Page-header bottom border separator. Defaults to `true` for form pages. */
787
+ bordered?: boolean;
788
+ /** Form-submit handler. Wire RHF via `form.handleSubmit(onSave)`. */
789
+ onSubmit: FormEventHandler<HTMLFormElement>;
790
+ /**
791
+ * Show skeleton placeholders in the body while the initial record is being
792
+ * fetched (typical for the edit page). The action bar still renders so the
793
+ * consumer can offer a "Cancel" exit; the consumer is responsible for
794
+ * disabling submit buttons while loading.
795
+ */
796
+ isLoading?: boolean;
797
+ /** Number of skeleton rows shown while loading. Defaults to `6`. */
798
+ loadingRowCount?: number;
799
+ /**
800
+ * Action slot rendered inside a sticky bar at the bottom of the form
801
+ * (Cancel / Save / Save & continue, …). Pass `null` to hide the bar
802
+ * entirely (rare — usually you want at least a save button).
803
+ */
804
+ actions: ReactNode;
805
+ /** Form body. Compose `<Field>` + your chosen controls, grouped however you like. */
806
+ children: ReactNode;
807
+ /** Class applied to the outer wrapper. */
808
+ className?: string;
809
+ /** Class applied to the `<form>` element. */
810
+ formClassName?: string;
811
+ /** Class applied to the body container that wraps `children`. */
812
+ bodyClassName?: string;
813
+ /** Class applied to the sticky action bar. */
814
+ actionsClassName?: string;
815
+ }
816
+ /**
817
+ * Declarative form-page template — composes `PageHeader` + a scrollable form
818
+ * body + a sticky action bar into a single component. **RHF-agnostic**:
819
+ * `onSubmit` is a plain event handler, so consumers wire react-hook-form (or
820
+ * any other library) by passing `form.handleSubmit(onSave)`.
821
+ *
822
+ * The component expects its parent to provide the scroll context — in the
823
+ * default `<AppShell>` setup, that's `<DashboardContent>`. The sticky bar
824
+ * relies on `position: sticky` against that scroll container.
825
+ *
826
+ * @example Inside a `<FormProvider>` (RHF + Zod)
827
+ * ```tsx
828
+ * const form = useForm<UserDraft>({ resolver: zodResolver(schema), defaultValues });
829
+ *
830
+ * return (
831
+ * <FormProvider {...form}>
832
+ * <FormPage
833
+ * title="New user"
834
+ * description="Invite a teammate to your workspace."
835
+ * back={{ to: '/users' }}
836
+ * onSubmit={form.handleSubmit(onSave)}
837
+ * actions={
838
+ * <>
839
+ * <Button type="button" variant="outline" onClick={() => navigate(-1)}>
840
+ * Cancel
841
+ * </Button>
842
+ * <Button type="submit" disabled={form.formState.isSubmitting}>
843
+ * Save
844
+ * </Button>
845
+ * </>
846
+ * }
847
+ * >
848
+ * <div className="grid gap-4 md:grid-cols-2">
849
+ * <Field name="name" label="Full name" required><Input /></Field>
850
+ * <Field name="email" label="Email" required><Input type="email" /></Field>
851
+ * </div>
852
+ * </FormPage>
853
+ * </FormProvider>
854
+ * );
855
+ * ```
856
+ *
857
+ * @example Edit mode with `isLoading`
858
+ * ```tsx
859
+ * <FormPage title="Edit user" isLoading={query.isLoading} onSubmit={…} actions={…}>
860
+ * {…fields…}
861
+ * </FormPage>
862
+ * ```
863
+ */
864
+ declare function FormPage({ title, description, back, bordered, onSubmit, isLoading, loadingRowCount, actions, children, className, formClassName, bodyClassName, actionsClassName, }: FormPageProps): react_jsx_runtime.JSX.Element;
865
+
866
+ /** Outermost wrapper of `FormPage` — vertical flex column that fills its parent. */
867
+ declare const formPageBaseClass = "flex w-full flex-col gap-6";
868
+ /** Scrollable body region between the header and the sticky action bar. */
869
+ declare const formPageBodyClass = "flex-1";
870
+ /**
871
+ * Sticky action bar at the bottom of the form. Sits on a `bg-background`
872
+ * surface with a top border so it visually separates from the form body when
873
+ * the consumer scrolls. The parent (typically `<DashboardContent>`) is
874
+ * expected to be the scroll container.
875
+ */
876
+ declare const formPageActionsBarClass = "sticky bottom-0 -mx-6 -mb-6 mt-6 flex items-center justify-end gap-2 border-t border-border bg-background/95 px-6 py-3 backdrop-blur supports-[backdrop-filter]:bg-background/80";
877
+ /** One skeleton row rendered while `isLoading` is true. */
878
+ declare const formPageSkeletonRowClass = "h-10 w-full animate-pulse rounded-md bg-muted";
879
+
678
880
  type DashboardHeaderProps = HTMLAttributes<HTMLElement>;
679
881
  declare function DashboardHeader({ className, children, ...props }: DashboardHeaderProps): react_jsx_runtime.JSX.Element;
680
882
 
@@ -1113,107 +1315,6 @@ interface ListPageProps<T> {
1113
1315
  */
1114
1316
  declare function ListPage<T>({ title, description, bordered, actions, data, columns, getRowId, isLoading, loadingRowCount, searchKeys, filters, enableRowSelection, bulkActions, emptyState, noDataState, labels: labelsProp, className, }: ListPageProps<T>): react_jsx_runtime.JSX.Element;
1115
1317
 
1116
- type PageHeaderHeadingLevel = 'h1' | 'h2' | 'h3' | 'h4';
1117
- /** Props passed to the routing-library `render` slot of the back button. */
1118
- interface PageHeaderBackRenderProps {
1119
- to?: LinkProps['to'];
1120
- className?: string;
1121
- children: ReactNode;
1122
- onClick?: () => void;
1123
- }
1124
- interface PageHeaderBackProps {
1125
- /** Visible label next to the arrow. Defaults to `"Back"`. */
1126
- label?: ReactNode;
1127
- /** Target to — renders a React Router `<Link>`. */
1128
- to?: LinkProps['to'];
1129
- /** Click handler — renders a `<button>` (or wraps the `render` element). */
1130
- onClick?: () => void;
1131
- /** Routing-library render prop (e.g. wrap a different link component). Wins over `to`. */
1132
- render?: (props: PageHeaderBackRenderProps) => ReactElement;
1133
- }
1134
- interface PageHeaderProps extends Omit<HTMLAttributes<HTMLElement>, 'title'> {
1135
- /** Page title (required). */
1136
- title: ReactNode;
1137
- /** Optional secondary text under the title. */
1138
- description?: ReactNode;
1139
- /** Slot above the title for breadcrumbs (e.g. `<Breadcrumbs items={…} />` or your own JSX). */
1140
- breadcrumbs?: ReactNode;
1141
- /** Optional back button rendered above the title row. */
1142
- back?: PageHeaderBackProps;
1143
- /** Slot on the trailing side of the title row — buttons, dropdowns, etc. */
1144
- actions?: ReactNode;
1145
- /** Heading level for the title element. Defaults to `'h1'`. */
1146
- as?: PageHeaderHeadingLevel;
1147
- /** Add a bottom border separator. Default: `false`. */
1148
- bordered?: boolean;
1149
- }
1150
- /**
1151
- * Top-of-page header — title, optional description, breadcrumbs, back button,
1152
- * and actions slot. The first thing a user sees on any list / detail / form
1153
- * page in a dashboard.
1154
- *
1155
- * Designed to drop directly into `<DashboardContent>` (or any padded page
1156
- * container). Has no outer padding of its own — the surrounding layout owns
1157
- * spacing.
1158
- *
1159
- * @example List page header with primary action
1160
- * ```tsx
1161
- * <PageHeader
1162
- * title="Users"
1163
- * description="Manage your team members and their roles."
1164
- * actions={<Button onClick={openCreate}>Add user</Button>}
1165
- * bordered
1166
- * />
1167
- * ```
1168
- *
1169
- * @example Detail page header with back button
1170
- * ```tsx
1171
- * <PageHeader
1172
- * title={user.name}
1173
- * description={user.email}
1174
- * back={{
1175
- * label: 'Users',
1176
- * to: '/users',
1177
- * }}
1178
- * actions={
1179
- * <>
1180
- * <Button variant="outline">Edit</Button>
1181
- * <Button variant="destructive">Delete</Button>
1182
- * </>
1183
- * }
1184
- * />
1185
- * ```
1186
- *
1187
- * @example With breadcrumbs slot
1188
- * ```tsx
1189
- * <PageHeader
1190
- * breadcrumbs={
1191
- * <nav aria-label="Breadcrumb">
1192
- * <ol className="flex items-center gap-1">
1193
- * <li><Link to="/">Home</Link></li>
1194
- * <li>/</li>
1195
- * <li>Users</li>
1196
- * </ol>
1197
- * </nav>
1198
- * }
1199
- * title="Users"
1200
- * />
1201
- * ```
1202
- */
1203
- declare const PageHeader: react.ForwardRefExoticComponent<PageHeaderProps & react.RefAttributes<HTMLElement>>;
1204
-
1205
- declare const pageHeaderBaseClass = "flex w-full flex-col gap-3";
1206
- /** Adds a bottom border separator below the header. */
1207
- declare const pageHeaderBorderedClass = "border-b border-border pb-4";
1208
- declare const pageHeaderTitleRowClass = "flex flex-wrap items-start justify-between gap-3 sm:gap-4";
1209
- declare const pageHeaderTitleBlockClass = "min-w-0 flex-1 space-y-1";
1210
- declare const pageHeaderTitleClass = "text-2xl font-semibold tracking-tight text-foreground";
1211
- declare const pageHeaderDescriptionClass = "text-sm text-muted-foreground";
1212
- declare const pageHeaderActionsClass = "flex shrink-0 flex-wrap items-center gap-2";
1213
- declare const pageHeaderBackClass = "inline-flex items-center gap-1.5 self-start text-sm text-muted-foreground transition-colors hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/40 focus-visible:ring-offset-2 focus-visible:ring-offset-background rounded-md";
1214
- declare const pageHeaderBackIconClass = "size-4 shrink-0 rtl:rotate-180";
1215
- declare const pageHeaderBreadcrumbsClass = "text-xs text-muted-foreground";
1216
-
1217
1318
  type RadioGroupSize = 'sm' | 'md' | 'lg';
1218
1319
  /** Outer circle (radio button itself) — sized + bordered. */
1219
1320
  declare const radioItemSizeClass: Record<RadioGroupSize, string>;
@@ -1453,4 +1554,4 @@ declare function useDirection(): Direction;
1453
1554
 
1454
1555
  declare function cn(...inputs: ClassValue[]): string;
1455
1556
 
1456
- export { AppShell, type AppShellBrand, type AppShellNavGroup, type AppShellNavItem, type AppShellProps, Avatar, type AvatarProps, Badge, type BadgeProps, type BadgeSize, type BadgeVariant, Button, type ButtonProps, type ButtonSize, type ButtonVariant, Checkbox, type CheckboxProps, type CheckboxSize, type Column, type ColumnAlign, DashboardContent, type DashboardContentProps, DashboardHeader, type DashboardHeaderProps, DashboardLayout, type DashboardLayoutContextValue, type DashboardLayoutProps, DashboardMain, type DashboardMainProps, DatePicker, type DatePickerProps, type DatePickerSize, type DatePickerVariant, type Direction, DropdownMenu, DropdownMenuContent, type DropdownMenuContentProps, DropdownMenuGroup, DropdownMenuItem, type DropdownMenuItemProps, type DropdownMenuItemVariant, DropdownMenuLabel, type DropdownMenuLabelProps, DropdownMenuPortal, DropdownMenuSeparator, type DropdownMenuSeparatorProps, DropdownMenuShortcut, type DropdownMenuShortcutProps, DropdownMenuTrigger, EmptyState, type EmptyStateProps, type EmptyStateSize, Field, type FieldOrientation, type FieldProps, type FieldRHFProps, HeaderActions, type HeaderActionsProps, HeaderCollapseTrigger, type HeaderCollapseTriggerProps, HeaderMobileTrigger, type HeaderMobileTriggerProps, HeaderSearch, type HeaderSearchProps, HeaderTitle, type HeaderTitleProps, Input, type InputProps, type InputSize, type InputVariant, type LanguageOption, LanguageSwitcher, type LanguageSwitcherProps, ListPage, type ListPageEmptyState, type ListPageFilter, type ListPageLabels, type ListPageProps, PageHeader, type PageHeaderBackProps, type PageHeaderBackRenderProps, type PageHeaderHeadingLevel, type PageHeaderProps, type PaginationState, RadioGroup, RadioGroupItem, type RadioGroupOption, type RadioGroupOrientation, type RadioGroupProps, type RadioGroupSize, type RowSelectionState, Select, type SelectOption, type SelectProps, type SelectSize, type SelectVariant, Sidebar, SidebarFooter, type SidebarFooterProps, SidebarGroup, type SidebarGroupProps, SidebarHeader, type SidebarHeaderProps, SidebarNav, SidebarNavGroup, type SidebarNavGroupProps, SidebarNavItem, type SidebarNavItemProps, type SidebarNavItemRenderProps, type SidebarNavProps, type SidebarProps, type SortDirection, type SortState, type SortableValue, Switch, type SwitchProps, type SwitchSize, Table, type TableProps, type TableSize, type TableSizeClasses, Textarea, type TextareaProps, type TextareaResize, type TextareaSize, type TextareaVariant, badgeBaseClass, badgeDotSizeClass, badgeSizeClass, badgeVariantClass, buttonBaseClass, buttonSizeClass, buttonVariantClass, cn, datePickerCalendarClass, datePickerCaptionClass, datePickerContentClass, datePickerDayBaseClass, datePickerDayWrapperClass, datePickerDisabledClass, datePickerMonthClass, datePickerMonthGridClass, datePickerMonthsClass, datePickerNavButtonClass, datePickerNavClass, datePickerOutsideClass, datePickerPlaceholderClass, datePickerSelectedClass, datePickerTodayClass, datePickerTriggerBaseClass, datePickerTriggerSizeClass, datePickerTriggerVariantClass, datePickerValueClass, datePickerWeekClass, datePickerWeekdayClass, datePickerWeekdaysClass, dropdownMenuContentClass, dropdownMenuItemBaseClass, dropdownMenuItemInsetClass, dropdownMenuItemVariantClass, dropdownMenuLabelClass, dropdownMenuSeparatorClass, dropdownMenuShortcutClass, emptyStateActionsSpacingClass, emptyStateBaseClass, emptyStateContainerSizeClass, emptyStateDescriptionSizeClass, emptyStateIconWrapperBaseClass, emptyStateIconWrapperSizeClass, emptyStateTitleSizeClass, inputBaseClass, inputSizeClass, inputVariantClass, pageHeaderActionsClass, pageHeaderBackClass, pageHeaderBackIconClass, pageHeaderBaseClass, pageHeaderBorderedClass, pageHeaderBreadcrumbsClass, pageHeaderDescriptionClass, pageHeaderTitleBlockClass, pageHeaderTitleClass, pageHeaderTitleRowClass, radioGroupBaseClass, radioGroupOrientationClass, radioIndicatorBaseClass, radioIndicatorDotClass, radioIndicatorSizeClass, radioItemBaseClass, radioItemSizeClass, radioLabelSizeClass, radioOptionRowClass, selectBaseClass, selectSizeClass, selectVariantClass, switchThumbBaseClass, switchThumbClass, switchTrackBaseClass, switchTrackClass, alignClass as tableAlignClass, tableBaseClass, selectedRowClass as tableSelectedRowClass, tableSizeClass, sortIconClass as tableSortIconClass, textareaBaseClass, textareaResizeClass, textareaSizeClass, textareaVariantClass, useDashboardLayout, useDirection };
1557
+ export { AppShell, type AppShellBrand, type AppShellNavGroup, type AppShellNavItem, type AppShellProps, Avatar, type AvatarProps, Badge, type BadgeProps, type BadgeSize, type BadgeVariant, Button, type ButtonProps, type ButtonSize, type ButtonVariant, Checkbox, type CheckboxProps, type CheckboxSize, type Column, type ColumnAlign, DashboardContent, type DashboardContentProps, DashboardHeader, type DashboardHeaderProps, DashboardLayout, type DashboardLayoutContextValue, type DashboardLayoutProps, DashboardMain, type DashboardMainProps, DatePicker, type DatePickerProps, type DatePickerSize, type DatePickerVariant, type Direction, DropdownMenu, DropdownMenuContent, type DropdownMenuContentProps, DropdownMenuGroup, DropdownMenuItem, type DropdownMenuItemProps, type DropdownMenuItemVariant, DropdownMenuLabel, type DropdownMenuLabelProps, DropdownMenuPortal, DropdownMenuSeparator, type DropdownMenuSeparatorProps, DropdownMenuShortcut, type DropdownMenuShortcutProps, DropdownMenuTrigger, EmptyState, type EmptyStateProps, type EmptyStateSize, Field, type FieldOrientation, type FieldProps, type FieldRHFProps, FormPage, type FormPageProps, HeaderActions, type HeaderActionsProps, HeaderCollapseTrigger, type HeaderCollapseTriggerProps, HeaderMobileTrigger, type HeaderMobileTriggerProps, HeaderSearch, type HeaderSearchProps, HeaderTitle, type HeaderTitleProps, Input, type InputProps, type InputSize, type InputVariant, type LanguageOption, LanguageSwitcher, type LanguageSwitcherProps, ListPage, type ListPageEmptyState, type ListPageFilter, type ListPageLabels, type ListPageProps, PageHeader, type PageHeaderBackProps, type PageHeaderBackRenderProps, type PageHeaderHeadingLevel, type PageHeaderProps, type PaginationState, RadioGroup, RadioGroupItem, type RadioGroupOption, type RadioGroupOrientation, type RadioGroupProps, type RadioGroupSize, type RowSelectionState, Select, type SelectOption, type SelectProps, type SelectSize, type SelectVariant, Sidebar, SidebarFooter, type SidebarFooterProps, SidebarGroup, type SidebarGroupProps, SidebarHeader, type SidebarHeaderProps, SidebarNav, SidebarNavGroup, type SidebarNavGroupProps, SidebarNavItem, type SidebarNavItemProps, type SidebarNavItemRenderProps, type SidebarNavProps, type SidebarProps, type SortDirection, type SortState, type SortableValue, Switch, type SwitchProps, type SwitchSize, Table, type TableProps, type TableSize, type TableSizeClasses, Textarea, type TextareaProps, type TextareaResize, type TextareaSize, type TextareaVariant, badgeBaseClass, badgeDotSizeClass, badgeSizeClass, badgeVariantClass, buttonBaseClass, buttonSizeClass, buttonVariantClass, cn, datePickerCalendarClass, datePickerCaptionClass, datePickerContentClass, datePickerDayBaseClass, datePickerDayWrapperClass, datePickerDisabledClass, datePickerMonthClass, datePickerMonthGridClass, datePickerMonthsClass, datePickerNavButtonClass, datePickerNavClass, datePickerOutsideClass, datePickerPlaceholderClass, datePickerSelectedClass, datePickerTodayClass, datePickerTriggerBaseClass, datePickerTriggerSizeClass, datePickerTriggerVariantClass, datePickerValueClass, datePickerWeekClass, datePickerWeekdayClass, datePickerWeekdaysClass, dropdownMenuContentClass, dropdownMenuItemBaseClass, dropdownMenuItemInsetClass, dropdownMenuItemVariantClass, dropdownMenuLabelClass, dropdownMenuSeparatorClass, dropdownMenuShortcutClass, emptyStateActionsSpacingClass, emptyStateBaseClass, emptyStateContainerSizeClass, emptyStateDescriptionSizeClass, emptyStateIconWrapperBaseClass, emptyStateIconWrapperSizeClass, emptyStateTitleSizeClass, formPageActionsBarClass, formPageBaseClass, formPageBodyClass, formPageSkeletonRowClass, inputBaseClass, inputSizeClass, inputVariantClass, pageHeaderActionsClass, pageHeaderBackClass, pageHeaderBackIconClass, pageHeaderBaseClass, pageHeaderBorderedClass, pageHeaderBreadcrumbsClass, pageHeaderDescriptionClass, pageHeaderTitleBlockClass, pageHeaderTitleClass, pageHeaderTitleRowClass, radioGroupBaseClass, radioGroupOrientationClass, radioIndicatorBaseClass, radioIndicatorDotClass, radioIndicatorSizeClass, radioItemBaseClass, radioItemSizeClass, radioLabelSizeClass, radioOptionRowClass, selectBaseClass, selectSizeClass, selectVariantClass, switchThumbBaseClass, switchThumbClass, switchTrackBaseClass, switchTrackClass, alignClass as tableAlignClass, tableBaseClass, selectedRowClass as tableSelectedRowClass, tableSizeClass, sortIconClass as tableSortIconClass, textareaBaseClass, textareaResizeClass, textareaSizeClass, textareaVariantClass, useDashboardLayout, useDirection };