@payfit/unity-components 2.65.27 → 2.66.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,8 +1,15 @@
1
- import { Table as TableType } from '@tanstack/react-table';
1
+ import { ReactTable as TableType, RowData, TableFeatures } from '@tanstack/react-table';
2
2
  import { ActionBarActionItem } from '../../action-bar/ActionBar.js';
3
- export interface DataTableBulkActionsProps<TData> {
3
+ export interface DataTableBulkActionsProps<TFeatures extends TableFeatures, TData extends RowData> {
4
4
  /** The table instance from @tanstack/react-table */
5
- table: TableType<TData>;
5
+ table: TableType<TFeatures, TData> & {
6
+ getIsAllPageRowsSelected: () => boolean;
7
+ getIsSomePageRowsSelected: () => boolean;
8
+ getSelectedRowModel: () => {
9
+ rows: unknown[];
10
+ };
11
+ resetRowSelection: () => void;
12
+ };
6
13
  /** Bulk actions to perform over the table, rendered in the action bar */
7
14
  actions: ActionBarActionItem[];
8
15
  /**
@@ -50,6 +57,7 @@ export interface DataTableBulkActionsProps<TData> {
50
57
  * }
51
58
  * ```
52
59
  * @remarks
60
+ * - DataTableBulkActions automatically reserves space when the table includes `rowPaginationFeature`, matching the pagination footer rendered by DataTable
53
61
  * - Use F6 keyboard shortcut to focus the action bar when it's visible and has actions
54
62
  * - The keyboard shortcut provides quick access to bulk actions for users with disabilities
55
63
  * - When triggered, focus moves to the first focusable element in the action bar (typically the first action button)
@@ -59,7 +67,7 @@ export interface DataTableBulkActionsProps<TData> {
59
67
  * @see {@link DataTableBulkActionsProps} for all available props
60
68
  * @see Source code in [Github](https://github.com/PayFit/hr-apps/tree/master/libs/shared/unity/components/src/components/data-table)
61
69
  */
62
- declare function DataTableBulkActions<TData extends object>({ table, actions, renderSelectionText, }: DataTableBulkActionsProps<TData>): import("react/jsx-runtime").JSX.Element;
70
+ declare function DataTableBulkActions<TFeatures extends TableFeatures, TData extends RowData>({ table, actions, renderSelectionText, }: DataTableBulkActionsProps<TFeatures, TData>): import("react/jsx-runtime").JSX.Element;
63
71
  declare namespace DataTableBulkActions {
64
72
  var displayName: string;
65
73
  }
@@ -3,85 +3,86 @@ import { ActionBarButton as t } from "../../action-bar/parts/ActionBarButton.js"
3
3
  import { ActionBarIconButton as n } from "../../action-bar/parts/ActionBarIconButton.js";
4
4
  import { ActionBar as r } from "../../action-bar/ActionBar.js";
5
5
  import { ActionBarRoot as i } from "../../action-bar/parts/ActionBarRoot.js";
6
- import { useCallback as a, useRef as o, useState as s } from "react";
7
- import { Fragment as c, jsx as l, jsxs as u } from "react/jsx-runtime";
8
- import { FormattedMessage as d, useIntl as f } from "react-intl";
9
- import { useHotkeys as p } from "react-hotkeys-hook";
6
+ import { getPaginationTable as a } from "../DataTablePagination.js";
7
+ import { useCallback as o, useRef as s, useState as c } from "react";
8
+ import { Fragment as l, jsx as u, jsxs as d } from "react/jsx-runtime";
9
+ import { FormattedMessage as f, useIntl as p } from "react-intl";
10
+ import { useHotkeys as m } from "react-hotkeys-hook";
10
11
  //#region src/components/data-table/parts/DataTableBulkActions.tsx
11
- function m({ selectionCount: t, onClearSelection: n, renderSelectionText: r, hasKeyshortcuts: i, keyShortcuts: a }) {
12
- return /* @__PURE__ */ u(c, { children: [/* @__PURE__ */ u("div", {
12
+ function h({ selectionCount: t, onClearSelection: n, renderSelectionText: r, hasKeyshortcuts: i, keyShortcuts: a }) {
13
+ return /* @__PURE__ */ d(l, { children: [/* @__PURE__ */ d("div", {
13
14
  className: "uy:typography-body uy:whitespace-nowrap! uy:sr-only uy:md:not-sr-only",
14
15
  role: "status",
15
16
  "aria-live": "polite",
16
17
  "aria-atomic": "true",
17
- children: [r ? r(t) : /* @__PURE__ */ l(d, {
18
+ children: [r ? r(t) : /* @__PURE__ */ u(f, {
18
19
  id: "unity:component:action-bar:selection-count-text",
19
20
  defaultMessage: "{selectionCount, plural, =0 {no items} one {item} other {items}} selected",
20
21
  values: { selectionCount: t }
21
- }), i && /* @__PURE__ */ l("span", {
22
+ }), i && /* @__PURE__ */ u("span", {
22
23
  className: "uy:sr-only",
23
- children: /* @__PURE__ */ l(d, {
24
+ children: /* @__PURE__ */ u(f, {
24
25
  id: "unity:component:action-bar:key-shortcuts-text",
25
26
  defaultMessage: "Use {keyShortcuts} to focus the action bar",
26
27
  values: { keyShortcuts: a }
27
28
  })
28
29
  })]
29
- }), /* @__PURE__ */ l(e, {
30
+ }), /* @__PURE__ */ u(e, {
30
31
  color: "inverted",
31
32
  variant: "ghost",
32
33
  onPress: n,
33
- children: /* @__PURE__ */ l(d, {
34
+ children: /* @__PURE__ */ u(f, {
34
35
  id: "unity:component:action-bar:clear-selection-button",
35
36
  defaultMessage: "Clear selection"
36
37
  })
37
38
  })] });
38
39
  }
39
- var h = (e) => e.type === "icon-button";
40
- function g({ table: e, actions: c, renderSelectionText: u }) {
41
- let d = o(null), g = o(null), [_, v] = s(!1), y = f();
42
- p("f6", () => {
43
- if ((e.getIsAllPageRowsSelected() || e.getIsSomePageRowsSelected()) && d.current) {
44
- let e = d.current.querySelectorAll("button, [href], input, select, textarea, [tabindex]:not([tabindex=\"-1\"])");
45
- g.current = document.activeElement, e.length > 0 && (e[0].focus(), v(!0));
40
+ var g = (e) => e.type === "icon-button";
41
+ function _({ table: e, actions: l, renderSelectionText: d }) {
42
+ let f = s(null), _ = s(null), [v, y] = c(!1), b = p();
43
+ m("f6", () => {
44
+ if ((e.getIsAllPageRowsSelected() || e.getIsSomePageRowsSelected()) && f.current) {
45
+ let e = f.current.querySelectorAll("button, [href], input, select, textarea, [tabindex]:not([tabindex=\"-1\"])");
46
+ _.current = document.activeElement, e.length > 0 && (e[0].focus(), y(!0));
46
47
  }
47
- }, { enableOnFormTags: !0 }), p("esc", () => {
48
- _ && g.current && (g.current.focus(), v(!1));
48
+ }, { enableOnFormTags: !0 }), m("esc", () => {
49
+ v && _.current && (_.current.focus(), y(!1));
49
50
  }, { enableOnFormTags: !0 });
50
- let b = e.getIsAllPageRowsSelected() || e.getIsSomePageRowsSelected(), x = e.getSelectedRowModel().rows.length, S = e.getPageCount() > 0, C = a(() => {
51
+ let x = e.getIsAllPageRowsSelected() || e.getIsSomePageRowsSelected(), S = e.getSelectedRowModel().rows.length, C = a(e) !== void 0, w = o(() => {
51
52
  e.resetRowSelection();
52
53
  }, [e]);
53
- return /* @__PURE__ */ l(i, {
54
- isVisible: b,
55
- offsetBottom: S ? "$600" : 0,
56
- children: /* @__PURE__ */ l(r, {
57
- ref: d,
58
- actions: c,
59
- prefixContent: /* @__PURE__ */ l(m, {
60
- selectionCount: x,
61
- onClearSelection: C,
62
- renderSelectionText: u,
54
+ return /* @__PURE__ */ u(i, {
55
+ isVisible: x,
56
+ offsetBottom: C ? "$600" : 0,
57
+ children: /* @__PURE__ */ u(r, {
58
+ ref: f,
59
+ actions: l,
60
+ prefixContent: /* @__PURE__ */ u(h, {
61
+ selectionCount: S,
62
+ onClearSelection: w,
63
+ renderSelectionText: d,
63
64
  hasKeyshortcuts: !0,
64
65
  keyShortcuts: "f6"
65
66
  }),
66
67
  onFocus: () => {
67
- v(!0);
68
+ y(!0);
68
69
  },
69
70
  onBlur: () => {
70
- v(!1);
71
+ y(!1);
71
72
  },
72
73
  "aria-keyshortcuts": "f6",
73
- "aria-label": y.formatMessage({
74
+ "aria-label": b.formatMessage({
74
75
  id: "unity:component:action-bar:toolbar-label",
75
76
  defaultMessage: "Bulk actions toolbar"
76
77
  }),
77
- children: (e) => h(e) ? /* @__PURE__ */ l(n, {
78
+ children: (e) => g(e) ? /* @__PURE__ */ u(n, {
78
79
  icon: e.meta.icon,
79
80
  label: e.label,
80
81
  variant: e.variant,
81
82
  onPress: e.meta.onPress,
82
83
  isDisabled: e.meta.isDisabled,
83
84
  isLoading: e.meta.isLoading
84
- }, e.id) : /* @__PURE__ */ l(t, {
85
+ }, e.id) : /* @__PURE__ */ u(t, {
85
86
  variant: e.variant,
86
87
  onPress: e.meta?.onPress,
87
88
  prefixIcon: e.meta?.prefixIcon,
@@ -92,6 +93,6 @@ function g({ table: e, actions: c, renderSelectionText: u }) {
92
93
  })
93
94
  });
94
95
  }
95
- g.displayName = "DataTableBulkActions";
96
+ _.displayName = "DataTableBulkActions";
96
97
  //#endregion
97
- export { g as DataTableBulkActions };
98
+ export { _ as DataTableBulkActions };
@@ -0,0 +1,13 @@
1
+ import { RowData } from '@tanstack/react-table';
2
+ import { LegacyTable as TableType } from '@tanstack/react-table/legacy';
3
+ import { ActionBarActionItem } from '../../action-bar/ActionBar.js';
4
+ export interface DataTableBulkActionsLegacyProps<TData extends RowData> {
5
+ table: TableType<TData>;
6
+ actions: ActionBarActionItem[];
7
+ renderSelectionText?: (count: number) => string;
8
+ }
9
+ declare function DataTableBulkActionsLegacy<TData extends RowData>({ table, actions, renderSelectionText, }: DataTableBulkActionsLegacyProps<TData>): import("react/jsx-runtime").JSX.Element;
10
+ declare namespace DataTableBulkActionsLegacy {
11
+ var displayName: string;
12
+ }
13
+ export { DataTableBulkActionsLegacy };
@@ -24,12 +24,26 @@ export declare const FilterAdapters: {
24
24
  * Tanstack Table's ColumnFiltersState format.
25
25
  * @example
26
26
  * ```tsx
27
+ * import {
28
+ * columnFilteringFeature,
29
+ * createFilteredRowModel,
30
+ * tableFeatures,
31
+ * useTable,
32
+ * } from '@tanstack/react-table'
33
+ *
34
+ * const features = tableFeatures({
35
+ * columnFilteringFeature,
36
+ * filteredRowModel: createFilteredRowModel(),
37
+ * })
38
+ *
27
39
  * const [appliedFilters, setAppliedFilters] = useState<AppliedFilter[]>([])
28
40
  * const columnFilters = FilterAdapters.TanstackTable.toColumnFilters(appliedFilters)
29
41
  *
30
- * const table = useReactTable({
42
+ * const table = useTable({
43
+ * features,
44
+ * data,
45
+ * columns,
31
46
  * state: { columnFilters },
32
- * // ... other config
33
47
  * })
34
48
  *
35
49
  * return (
@@ -9,13 +9,13 @@ import { uyTv as u } from "@payfit/unity-themes";
9
9
  import { jsx as d, jsxs as f } from "react/jsx-runtime";
10
10
  import { Group as p } from "react-aria-components/Group";
11
11
  import { useIntl as m } from "react-intl";
12
- import { FocusScope as h } from "react-aria/FocusScope";
13
- import { useSelector as g } from "@tanstack/react-store";
12
+ import { useSelector as h } from "@tanstack/react-store";
13
+ import { FocusScope as g } from "react-aria/FocusScope";
14
14
  import { useKeyboard as _ } from "react-aria/useKeyboard";
15
15
  //#region src/components/inline-field/parts/InlineFieldEditView.tsx
16
16
  var v = u({ slots: { base: "uy:flex uy:flex-row uy:gap-100 uy:items-start" } });
17
17
  function y({ children: u, onCancel: y, onSave: b, saveLabel: x, cancelLabel: S, helperText: C, errorMessage: w }) {
18
- let T = a(), E = m(), D = t(), { isDirty: O, isSubmitting: k, submissionAttempts: A, isValid: j, isSubmitSuccessful: M } = g(D.store, (e) => ({
18
+ let T = a(), E = m(), D = t(), { isDirty: O, isSubmitting: k, submissionAttempts: A, isValid: j, isSubmitSuccessful: M } = h(D.store, (e) => ({
19
19
  isDirty: e.isDirty,
20
20
  isSubmitting: e.isSubmitting,
21
21
  isValid: e.isValid,
@@ -60,7 +60,7 @@ function y({ children: u, onCancel: y, onSave: b, saveLabel: x, cancelLabel: S,
60
60
  hidden: !L,
61
61
  "aria-hidden": !L,
62
62
  ...!L && { inert: "" },
63
- children: [/* @__PURE__ */ d(h, {
63
+ children: [/* @__PURE__ */ d(g, {
64
64
  contain: !0,
65
65
  restoreFocus: !0,
66
66
  children: /* @__PURE__ */ d("form", {
@@ -8,8 +8,8 @@ import { uyTv as u } from "@payfit/unity-themes";
8
8
  import { jsx as d, jsxs as f } from "react/jsx-runtime";
9
9
  import { useIntl as p } from "react-intl";
10
10
  import { useId as m } from "react-aria/useId";
11
- import { FocusScope as ne } from "react-aria/FocusScope";
12
- import { useSelector as h } from "@tanstack/react-store";
11
+ import { useSelector as ne } from "@tanstack/react-store";
12
+ import { FocusScope as h } from "react-aria/FocusScope";
13
13
  import { useKeyboard as re } from "react-aria/useKeyboard";
14
14
  //#region src/components/inline-field-group/InlineFieldGroup.tsx
15
15
  var ie = u({ slots: { form: "uy:flex uy:flex-col uy:gap-300" } }), g = (e) => {
@@ -22,7 +22,7 @@ var ie = u({ slots: { form: "uy:flex uy:flex-col uy:gap-300" } }), g = (e) => {
22
22
  defaultMode: v,
23
23
  onModeChange: ae,
24
24
  shouldModeChange: y
25
- }), { isSubmitting: q, isValid: J, isSubmitSuccessful: Y, submissionAttempts: X } = h(V.store, (e) => ({
25
+ }), { isSubmitting: q, isValid: J, isSubmitSuccessful: Y, submissionAttempts: X } = ne(V.store, (e) => ({
26
26
  isSubmitting: e.isSubmitting,
27
27
  isValid: e.isValid,
28
28
  isSubmitSuccessful: e.isSubmitSuccessful,
@@ -162,7 +162,7 @@ var ie = u({ slots: { form: "uy:flex uy:flex-col uy:gap-300" } }), g = (e) => {
162
162
  onSubmit: le,
163
163
  "aria-label": x,
164
164
  "aria-labelledby": x ? void 0 : j,
165
- children: /* @__PURE__ */ f(ne, {
165
+ children: /* @__PURE__ */ f(h, {
166
166
  contain: se && W === "edit",
167
167
  children: [
168
168
  i,
@@ -1,10 +1,11 @@
1
- import { default as React, PropsWithChildren } from 'react';
1
+ import { default as React, PropsWithChildren, ReactNode } from 'react';
2
2
  import { VariantProps } from '@payfit/unity-themes';
3
3
  export declare const tableHeader: import('tailwind-variants').TVReturnType<{} | {} | {}, undefined, string[], {} | {}, undefined, import('tailwind-variants').TVReturnTypeLike<unknown, undefined>>;
4
4
  export type TableHeaderProps = PropsWithChildren<VariantProps<typeof tableHeader>>;
5
5
  /**
6
6
  * The `TableHeader` component renders the header section of a table, containing column headers.
7
- * It automatically processes its children to add row indices and applies appropriate styling.
7
+ * It accepts column headers directly for a single row, or explicit `tr` elements for grouped headers.
8
+ * It automatically assigns row and column indices while preserving indices set by consumers.
8
9
  * @param {TableHeaderProps} props - The props for the `TableHeader` component
9
10
  * @param {ReactNode} props.children - The column headers to render (typically TableColumnHeader components)
10
11
  * @example
@@ -17,6 +18,20 @@ export type TableHeaderProps = PropsWithChildren<VariantProps<typeof tableHeader
17
18
  * <TableColumnHeader>Department</TableColumnHeader>
18
19
  * </TableHeader>
19
20
  * ```
21
+ * @example
22
+ * ```tsx
23
+ * // Grouped column headers
24
+ * <TableHeader>
25
+ * <tr>
26
+ * <TableColumnHeader scope="col" rowSpan={2}>Employee</TableColumnHeader>
27
+ * <TableColumnHeader scope="colgroup" colSpan={2}>Contact</TableColumnHeader>
28
+ * </tr>
29
+ * <tr>
30
+ * <TableColumnHeader scope="col">Email</TableColumnHeader>
31
+ * <TableColumnHeader scope="col">Phone</TableColumnHeader>
32
+ * </tr>
33
+ * </TableHeader>
34
+ * ```
20
35
  * @see {@link TableHeaderProps} for all available props
21
36
  * @see {@link TableColumnHeader} for the column header component
22
37
  * @remarks
@@ -24,6 +39,6 @@ export type TableHeaderProps = PropsWithChildren<VariantProps<typeof tableHeader
24
39
  * {@link https://payfit.design|Design docs}
25
40
  */
26
41
  declare const TableHeader: React.MemoExoticComponent<React.ForwardRefExoticComponent<VariantProps<import('tailwind-variants').TVReturnType<{} | {} | {}, undefined, string[], {} | {}, undefined, import('tailwind-variants').TVReturnTypeLike<unknown, undefined>>> & {
27
- children?: React.ReactNode | undefined;
42
+ children?: ReactNode | undefined;
28
43
  } & React.RefAttributes<HTMLTableSectionElement>>>;
29
44
  export { TableHeader };
@@ -5,18 +5,33 @@ import { jsx as a } from "react/jsx-runtime";
5
5
  var o = i({ base: [
6
6
  "uy:h-500 uy:bg-surface-neutral-low uy:rounded-tl-100 uy:rounded-tr-100 uy:overflow-hidden",
7
7
  "uy:sticky uy:top-0 uy:z-[1]",
8
- "uy:[&_tr]:border-b uy:[&_tr]:border-solid uy:[&_tr]:border-b-border-neutral-enabled"
8
+ "uy:[&_th]:relative uy:[&_th]:after:absolute uy:[&_th]:after:inset-x-0 uy:[&_th]:after:bottom-0",
9
+ "uy:[&_th]:after:h-px uy:[&_th]:after:bg-border-neutral-enabled uy:[&_th]:after:content-[''] uy:[&_th]:after:pointer-events-none"
9
10
  ] }), s = n(t(({ children: t, ...n }, i) => {
10
- let s = r(() => e.Children.map(t, (t, n) => e.isValidElement(t) ? e.cloneElement(t, {
11
- rowIndex: n,
12
- ...t.props
13
- }) : t), [t]);
11
+ let s = r(() => {
12
+ let n = (t, n) => {
13
+ let r = 0;
14
+ return e.Children.map(t, (t) => {
15
+ if (!e.isValidElement(t)) return t;
16
+ let i = t, a = r;
17
+ return r += i.props.colSpan ?? 1, e.cloneElement(i, {
18
+ rowIndex: n,
19
+ colIndex: a,
20
+ ...i.props
21
+ });
22
+ });
23
+ }, r = e.Children.toArray(t);
24
+ return r.length > 0 && r.every((t) => e.isValidElement(t) && t.type === "tr") ? r.map((t, r) => {
25
+ let i = t;
26
+ return e.cloneElement(i, { children: n(i.props.children, r) });
27
+ }) : /* @__PURE__ */ a("tr", { children: n(t, 0) });
28
+ }, [t]);
14
29
  return /* @__PURE__ */ a("thead", {
15
30
  ref: i,
16
31
  className: o(),
17
32
  "data-dd-privacy": "allow",
18
33
  ...n,
19
- children: /* @__PURE__ */ a("tr", { children: s })
34
+ children: s
20
35
  });
21
36
  }));
22
37
  s.displayName = "TableHeader";
@@ -1,3 +1,225 @@
1
1
  import { Employee } from '../../../../mocks/employees.js';
2
- export declare const employeeColumns: (import('@tanstack/react-table').AccessorKeyColumnDefBase<Employee, string> & Partial<import('@tanstack/react-table').IdIdentifier<Employee, string>>)[];
3
- export declare const employeeColumnsWithCheckbox: ((import('@tanstack/react-table').AccessorKeyColumnDefBase<Employee, string> & Partial<import('@tanstack/react-table').IdIdentifier<Employee, string>>) | import('@tanstack/react-table').DisplayColumnDef<Employee, unknown>)[];
2
+ export declare const employeeTableFeatures: {
3
+ columnFilteringFeature: import('@tanstack/react-table').TableFeature;
4
+ globalFilteringFeature: import('@tanstack/react-table').TableFeature;
5
+ columnFacetingFeature: import('@tanstack/react-table').TableFeature;
6
+ columnVisibilityFeature: import('@tanstack/react-table').TableFeature;
7
+ rowPaginationFeature: import('@tanstack/react-table').TableFeature;
8
+ rowSelectionFeature: import('@tanstack/react-table').TableFeature;
9
+ rowSortingFeature: import('@tanstack/react-table').TableFeature;
10
+ filteredRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
11
+ facetedRowModel: (table: import('@tanstack/react-table').Table<any, any>, columnId: string) => () => import('@tanstack/react-table').RowModel<any, any>;
12
+ facetedUniqueValues: (table: import('@tanstack/react-table').Table<import('@tanstack/react-table').TableFeatures, any>, columnId: string) => () => Map<any, number>;
13
+ paginatedRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
14
+ sortedRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
15
+ filterFns: {
16
+ includesString: import('@tanstack/react-table').CreatedFilterFn<any, any>;
17
+ inList: import('@tanstack/react-table').CreatedFilterFn<any, any>;
18
+ };
19
+ };
20
+ export declare const employeeColumns: import('@tanstack/react-table').ColumnDef<{
21
+ columnFilteringFeature: import('@tanstack/react-table').TableFeature;
22
+ globalFilteringFeature: import('@tanstack/react-table').TableFeature;
23
+ columnFacetingFeature: import('@tanstack/react-table').TableFeature;
24
+ columnVisibilityFeature: import('@tanstack/react-table').TableFeature;
25
+ rowPaginationFeature: import('@tanstack/react-table').TableFeature;
26
+ rowSelectionFeature: import('@tanstack/react-table').TableFeature;
27
+ rowSortingFeature: import('@tanstack/react-table').TableFeature;
28
+ filteredRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
29
+ facetedRowModel: (table: import('@tanstack/react-table').Table<any, any>, columnId: string) => () => import('@tanstack/react-table').RowModel<any, any>;
30
+ facetedUniqueValues: (table: import('@tanstack/react-table').Table<import('@tanstack/react-table').TableFeatures, any>, columnId: string) => () => Map<any, number>;
31
+ paginatedRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
32
+ sortedRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
33
+ filterFns: {
34
+ includesString: import('@tanstack/react-table').CreatedFilterFn<any, any>;
35
+ inList: import('@tanstack/react-table').CreatedFilterFn<any, any>;
36
+ };
37
+ }, Employee, any>[] & [import('@tanstack/react-table').AccessorKeyColumnDef<{
38
+ columnFilteringFeature: import('@tanstack/react-table').TableFeature;
39
+ globalFilteringFeature: import('@tanstack/react-table').TableFeature;
40
+ columnFacetingFeature: import('@tanstack/react-table').TableFeature;
41
+ columnVisibilityFeature: import('@tanstack/react-table').TableFeature;
42
+ rowPaginationFeature: import('@tanstack/react-table').TableFeature;
43
+ rowSelectionFeature: import('@tanstack/react-table').TableFeature;
44
+ rowSortingFeature: import('@tanstack/react-table').TableFeature;
45
+ filteredRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
46
+ facetedRowModel: (table: import('@tanstack/react-table').Table<any, any>, columnId: string) => () => import('@tanstack/react-table').RowModel<any, any>;
47
+ facetedUniqueValues: (table: import('@tanstack/react-table').Table<import('@tanstack/react-table').TableFeatures, any>, columnId: string) => () => Map<any, number>;
48
+ paginatedRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
49
+ sortedRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
50
+ filterFns: {
51
+ includesString: import('@tanstack/react-table').CreatedFilterFn<any, any>;
52
+ inList: import('@tanstack/react-table').CreatedFilterFn<any, any>;
53
+ };
54
+ }, Employee, string>, import('@tanstack/react-table').AccessorKeyColumnDef<{
55
+ columnFilteringFeature: import('@tanstack/react-table').TableFeature;
56
+ globalFilteringFeature: import('@tanstack/react-table').TableFeature;
57
+ columnFacetingFeature: import('@tanstack/react-table').TableFeature;
58
+ columnVisibilityFeature: import('@tanstack/react-table').TableFeature;
59
+ rowPaginationFeature: import('@tanstack/react-table').TableFeature;
60
+ rowSelectionFeature: import('@tanstack/react-table').TableFeature;
61
+ rowSortingFeature: import('@tanstack/react-table').TableFeature;
62
+ filteredRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
63
+ facetedRowModel: (table: import('@tanstack/react-table').Table<any, any>, columnId: string) => () => import('@tanstack/react-table').RowModel<any, any>;
64
+ facetedUniqueValues: (table: import('@tanstack/react-table').Table<import('@tanstack/react-table').TableFeatures, any>, columnId: string) => () => Map<any, number>;
65
+ paginatedRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
66
+ sortedRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
67
+ filterFns: {
68
+ includesString: import('@tanstack/react-table').CreatedFilterFn<any, any>;
69
+ inList: import('@tanstack/react-table').CreatedFilterFn<any, any>;
70
+ };
71
+ }, Employee, "Full-time" | "Part-time" | "Freelance" | "Contractor">, import('@tanstack/react-table').AccessorKeyColumnDef<{
72
+ columnFilteringFeature: import('@tanstack/react-table').TableFeature;
73
+ globalFilteringFeature: import('@tanstack/react-table').TableFeature;
74
+ columnFacetingFeature: import('@tanstack/react-table').TableFeature;
75
+ columnVisibilityFeature: import('@tanstack/react-table').TableFeature;
76
+ rowPaginationFeature: import('@tanstack/react-table').TableFeature;
77
+ rowSelectionFeature: import('@tanstack/react-table').TableFeature;
78
+ rowSortingFeature: import('@tanstack/react-table').TableFeature;
79
+ filteredRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
80
+ facetedRowModel: (table: import('@tanstack/react-table').Table<any, any>, columnId: string) => () => import('@tanstack/react-table').RowModel<any, any>;
81
+ facetedUniqueValues: (table: import('@tanstack/react-table').Table<import('@tanstack/react-table').TableFeatures, any>, columnId: string) => () => Map<any, number>;
82
+ paginatedRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
83
+ sortedRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
84
+ filterFns: {
85
+ includesString: import('@tanstack/react-table').CreatedFilterFn<any, any>;
86
+ inList: import('@tanstack/react-table').CreatedFilterFn<any, any>;
87
+ };
88
+ }, Employee, Pick<Employee, "position" | "name" | "team"> | null>, import('@tanstack/react-table').AccessorKeyColumnDef<{
89
+ columnFilteringFeature: import('@tanstack/react-table').TableFeature;
90
+ globalFilteringFeature: import('@tanstack/react-table').TableFeature;
91
+ columnFacetingFeature: import('@tanstack/react-table').TableFeature;
92
+ columnVisibilityFeature: import('@tanstack/react-table').TableFeature;
93
+ rowPaginationFeature: import('@tanstack/react-table').TableFeature;
94
+ rowSelectionFeature: import('@tanstack/react-table').TableFeature;
95
+ rowSortingFeature: import('@tanstack/react-table').TableFeature;
96
+ filteredRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
97
+ facetedRowModel: (table: import('@tanstack/react-table').Table<any, any>, columnId: string) => () => import('@tanstack/react-table').RowModel<any, any>;
98
+ facetedUniqueValues: (table: import('@tanstack/react-table').Table<import('@tanstack/react-table').TableFeatures, any>, columnId: string) => () => Map<any, number>;
99
+ paginatedRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
100
+ sortedRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
101
+ filterFns: {
102
+ includesString: import('@tanstack/react-table').CreatedFilterFn<any, any>;
103
+ inList: import('@tanstack/react-table').CreatedFilterFn<any, any>;
104
+ };
105
+ }, Employee, "active" | "inactive" | "onboarding" | "offboarding" | "retired">];
106
+ export declare const employeeColumnsWithCheckbox: import('@tanstack/react-table').ColumnDef<{
107
+ columnFilteringFeature: import('@tanstack/react-table').TableFeature;
108
+ globalFilteringFeature: import('@tanstack/react-table').TableFeature;
109
+ columnFacetingFeature: import('@tanstack/react-table').TableFeature;
110
+ columnVisibilityFeature: import('@tanstack/react-table').TableFeature;
111
+ rowPaginationFeature: import('@tanstack/react-table').TableFeature;
112
+ rowSelectionFeature: import('@tanstack/react-table').TableFeature;
113
+ rowSortingFeature: import('@tanstack/react-table').TableFeature;
114
+ filteredRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
115
+ facetedRowModel: (table: import('@tanstack/react-table').Table<any, any>, columnId: string) => () => import('@tanstack/react-table').RowModel<any, any>;
116
+ facetedUniqueValues: (table: import('@tanstack/react-table').Table<import('@tanstack/react-table').TableFeatures, any>, columnId: string) => () => Map<any, number>;
117
+ paginatedRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
118
+ sortedRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
119
+ filterFns: {
120
+ includesString: import('@tanstack/react-table').CreatedFilterFn<any, any>;
121
+ inList: import('@tanstack/react-table').CreatedFilterFn<any, any>;
122
+ };
123
+ }, Employee, any>[] & [import('@tanstack/react-table').DisplayColumnDef<{
124
+ columnFilteringFeature: import('@tanstack/react-table').TableFeature;
125
+ globalFilteringFeature: import('@tanstack/react-table').TableFeature;
126
+ columnFacetingFeature: import('@tanstack/react-table').TableFeature;
127
+ columnVisibilityFeature: import('@tanstack/react-table').TableFeature;
128
+ rowPaginationFeature: import('@tanstack/react-table').TableFeature;
129
+ rowSelectionFeature: import('@tanstack/react-table').TableFeature;
130
+ rowSortingFeature: import('@tanstack/react-table').TableFeature;
131
+ filteredRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
132
+ facetedRowModel: (table: import('@tanstack/react-table').Table<any, any>, columnId: string) => () => import('@tanstack/react-table').RowModel<any, any>;
133
+ facetedUniqueValues: (table: import('@tanstack/react-table').Table<import('@tanstack/react-table').TableFeatures, any>, columnId: string) => () => Map<any, number>;
134
+ paginatedRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
135
+ sortedRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
136
+ filterFns: {
137
+ includesString: import('@tanstack/react-table').CreatedFilterFn<any, any>;
138
+ inList: import('@tanstack/react-table').CreatedFilterFn<any, any>;
139
+ };
140
+ }, Employee, unknown>, ...(import('@tanstack/react-table').ColumnDef<{
141
+ columnFilteringFeature: import('@tanstack/react-table').TableFeature;
142
+ globalFilteringFeature: import('@tanstack/react-table').TableFeature;
143
+ columnFacetingFeature: import('@tanstack/react-table').TableFeature;
144
+ columnVisibilityFeature: import('@tanstack/react-table').TableFeature;
145
+ rowPaginationFeature: import('@tanstack/react-table').TableFeature;
146
+ rowSelectionFeature: import('@tanstack/react-table').TableFeature;
147
+ rowSortingFeature: import('@tanstack/react-table').TableFeature;
148
+ filteredRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
149
+ facetedRowModel: (table: import('@tanstack/react-table').Table<any, any>, columnId: string) => () => import('@tanstack/react-table').RowModel<any, any>;
150
+ facetedUniqueValues: (table: import('@tanstack/react-table').Table<import('@tanstack/react-table').TableFeatures, any>, columnId: string) => () => Map<any, number>;
151
+ paginatedRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
152
+ sortedRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
153
+ filterFns: {
154
+ includesString: import('@tanstack/react-table').CreatedFilterFn<any, any>;
155
+ inList: import('@tanstack/react-table').CreatedFilterFn<any, any>;
156
+ };
157
+ }, Employee, any> & (import('@tanstack/react-table').AccessorKeyColumnDef<{
158
+ columnFilteringFeature: import('@tanstack/react-table').TableFeature;
159
+ globalFilteringFeature: import('@tanstack/react-table').TableFeature;
160
+ columnFacetingFeature: import('@tanstack/react-table').TableFeature;
161
+ columnVisibilityFeature: import('@tanstack/react-table').TableFeature;
162
+ rowPaginationFeature: import('@tanstack/react-table').TableFeature;
163
+ rowSelectionFeature: import('@tanstack/react-table').TableFeature;
164
+ rowSortingFeature: import('@tanstack/react-table').TableFeature;
165
+ filteredRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
166
+ facetedRowModel: (table: import('@tanstack/react-table').Table<any, any>, columnId: string) => () => import('@tanstack/react-table').RowModel<any, any>;
167
+ facetedUniqueValues: (table: import('@tanstack/react-table').Table<import('@tanstack/react-table').TableFeatures, any>, columnId: string) => () => Map<any, number>;
168
+ paginatedRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
169
+ sortedRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
170
+ filterFns: {
171
+ includesString: import('@tanstack/react-table').CreatedFilterFn<any, any>;
172
+ inList: import('@tanstack/react-table').CreatedFilterFn<any, any>;
173
+ };
174
+ }, Employee, string> | import('@tanstack/react-table').AccessorKeyColumnDef<{
175
+ columnFilteringFeature: import('@tanstack/react-table').TableFeature;
176
+ globalFilteringFeature: import('@tanstack/react-table').TableFeature;
177
+ columnFacetingFeature: import('@tanstack/react-table').TableFeature;
178
+ columnVisibilityFeature: import('@tanstack/react-table').TableFeature;
179
+ rowPaginationFeature: import('@tanstack/react-table').TableFeature;
180
+ rowSelectionFeature: import('@tanstack/react-table').TableFeature;
181
+ rowSortingFeature: import('@tanstack/react-table').TableFeature;
182
+ filteredRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
183
+ facetedRowModel: (table: import('@tanstack/react-table').Table<any, any>, columnId: string) => () => import('@tanstack/react-table').RowModel<any, any>;
184
+ facetedUniqueValues: (table: import('@tanstack/react-table').Table<import('@tanstack/react-table').TableFeatures, any>, columnId: string) => () => Map<any, number>;
185
+ paginatedRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
186
+ sortedRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
187
+ filterFns: {
188
+ includesString: import('@tanstack/react-table').CreatedFilterFn<any, any>;
189
+ inList: import('@tanstack/react-table').CreatedFilterFn<any, any>;
190
+ };
191
+ }, Employee, "Full-time" | "Part-time" | "Freelance" | "Contractor"> | import('@tanstack/react-table').AccessorKeyColumnDef<{
192
+ columnFilteringFeature: import('@tanstack/react-table').TableFeature;
193
+ globalFilteringFeature: import('@tanstack/react-table').TableFeature;
194
+ columnFacetingFeature: import('@tanstack/react-table').TableFeature;
195
+ columnVisibilityFeature: import('@tanstack/react-table').TableFeature;
196
+ rowPaginationFeature: import('@tanstack/react-table').TableFeature;
197
+ rowSelectionFeature: import('@tanstack/react-table').TableFeature;
198
+ rowSortingFeature: import('@tanstack/react-table').TableFeature;
199
+ filteredRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
200
+ facetedRowModel: (table: import('@tanstack/react-table').Table<any, any>, columnId: string) => () => import('@tanstack/react-table').RowModel<any, any>;
201
+ facetedUniqueValues: (table: import('@tanstack/react-table').Table<import('@tanstack/react-table').TableFeatures, any>, columnId: string) => () => Map<any, number>;
202
+ paginatedRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
203
+ sortedRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
204
+ filterFns: {
205
+ includesString: import('@tanstack/react-table').CreatedFilterFn<any, any>;
206
+ inList: import('@tanstack/react-table').CreatedFilterFn<any, any>;
207
+ };
208
+ }, Employee, Pick<Employee, "position" | "name" | "team"> | null> | import('@tanstack/react-table').AccessorKeyColumnDef<{
209
+ columnFilteringFeature: import('@tanstack/react-table').TableFeature;
210
+ globalFilteringFeature: import('@tanstack/react-table').TableFeature;
211
+ columnFacetingFeature: import('@tanstack/react-table').TableFeature;
212
+ columnVisibilityFeature: import('@tanstack/react-table').TableFeature;
213
+ rowPaginationFeature: import('@tanstack/react-table').TableFeature;
214
+ rowSelectionFeature: import('@tanstack/react-table').TableFeature;
215
+ rowSortingFeature: import('@tanstack/react-table').TableFeature;
216
+ filteredRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
217
+ facetedRowModel: (table: import('@tanstack/react-table').Table<any, any>, columnId: string) => () => import('@tanstack/react-table').RowModel<any, any>;
218
+ facetedUniqueValues: (table: import('@tanstack/react-table').Table<import('@tanstack/react-table').TableFeatures, any>, columnId: string) => () => Map<any, number>;
219
+ paginatedRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
220
+ sortedRowModel: (table: import('@tanstack/react-table').Table<any, any>) => () => import('@tanstack/react-table').RowModel<any, any>;
221
+ filterFns: {
222
+ includesString: import('@tanstack/react-table').CreatedFilterFn<any, any>;
223
+ inList: import('@tanstack/react-table').CreatedFilterFn<any, any>;
224
+ };
225
+ }, Employee, "active" | "inactive" | "onboarding" | "offboarding" | "retired">))[]];