@stella-source/stellasource-dsl 3.6.0 → 5.1.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.
Files changed (36) hide show
  1. package/dist/cjs/index.js +453 -263
  2. package/dist/cjs/index.js.map +1 -1
  3. package/dist/cjs/types/components/RadioButton/RadioButton.d.ts +4 -0
  4. package/dist/cjs/types/components/RadioButton/RadioButton.stories.d.ts +14 -0
  5. package/dist/cjs/types/components/RadioButton/styles.d.ts +38 -0
  6. package/dist/cjs/types/components/RadioButton/types.d.ts +13 -0
  7. package/dist/cjs/types/components/RadioButtonGroup/RadioButtonGroup.d.ts +4 -0
  8. package/dist/cjs/types/components/RadioButtonGroup/RadioButtonGroup.stories.d.ts +87 -0
  9. package/dist/cjs/types/components/RadioButtonGroup/styles.d.ts +8 -0
  10. package/dist/cjs/types/components/RadioButtonGroup/types.d.ts +22 -0
  11. package/dist/cjs/types/components/StellaIcon/types.d.ts +1 -1
  12. package/dist/cjs/types/components/Table/Table.d.ts +1 -1
  13. package/dist/cjs/types/components/Table/Table.stories.d.ts +8 -0
  14. package/dist/cjs/types/components/Table/TableComponents/CheckboxDropdownMenu.d.ts +26 -0
  15. package/dist/cjs/types/components/Table/styles.d.ts +10 -1
  16. package/dist/cjs/types/components/Table/types.d.ts +8 -3
  17. package/dist/cjs/types/components/Table/useTableState.d.ts +9 -0
  18. package/dist/esm/index.esm.js +453 -263
  19. package/dist/esm/index.esm.js.map +1 -1
  20. package/dist/esm/types/components/RadioButton/RadioButton.d.ts +4 -0
  21. package/dist/esm/types/components/RadioButton/RadioButton.stories.d.ts +14 -0
  22. package/dist/esm/types/components/RadioButton/styles.d.ts +38 -0
  23. package/dist/esm/types/components/RadioButton/types.d.ts +13 -0
  24. package/dist/esm/types/components/RadioButtonGroup/RadioButtonGroup.d.ts +4 -0
  25. package/dist/esm/types/components/RadioButtonGroup/RadioButtonGroup.stories.d.ts +87 -0
  26. package/dist/esm/types/components/RadioButtonGroup/styles.d.ts +8 -0
  27. package/dist/esm/types/components/RadioButtonGroup/types.d.ts +22 -0
  28. package/dist/esm/types/components/StellaIcon/types.d.ts +1 -1
  29. package/dist/esm/types/components/Table/Table.d.ts +1 -1
  30. package/dist/esm/types/components/Table/Table.stories.d.ts +8 -0
  31. package/dist/esm/types/components/Table/TableComponents/CheckboxDropdownMenu.d.ts +26 -0
  32. package/dist/esm/types/components/Table/styles.d.ts +10 -1
  33. package/dist/esm/types/components/Table/types.d.ts +8 -3
  34. package/dist/esm/types/components/Table/useTableState.d.ts +9 -0
  35. package/dist/index.d.ts +9 -4
  36. package/package.json +1 -1
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import { RadioButtonProps } from "./types";
3
+ declare const RadioButton: ({ id, name, value, className, label, checked, disabled, align, onChange, htmlProps, }: RadioButtonProps) => React.JSX.Element;
4
+ export default RadioButton;
@@ -0,0 +1,14 @@
1
+ import React from "react";
2
+ declare const _default: {
3
+ title: string;
4
+ component: ({ id, name, value, className, label, checked, disabled, align, onChange, htmlProps, }: import("./types").RadioButtonProps) => React.JSX.Element;
5
+ tags: string[];
6
+ parameters: {
7
+ layout: string;
8
+ };
9
+ args: {
10
+ label: string;
11
+ };
12
+ };
13
+ export default _default;
14
+ export declare const Default: {};
@@ -0,0 +1,38 @@
1
+ export type RadioState = "selected" | "unselected" | "disabled";
2
+ interface RadioStateProps {
3
+ $state: RadioState;
4
+ }
5
+ export declare const RadioContainer: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never> & Partial<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>>> & string;
6
+ export declare const RadioLabel: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").LabelHTMLAttributes<HTMLLabelElement>, HTMLLabelElement>, "$state"> & RadioStateProps, never> & Partial<Pick<import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").LabelHTMLAttributes<HTMLLabelElement>, HTMLLabelElement>, "$state"> & RadioStateProps, never>>> & string;
7
+ export declare const RadioOuter: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "$state"> & RadioStateProps, never> & Partial<Pick<import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "$state"> & RadioStateProps, never>>> & string;
8
+ export declare const RadioDot: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "$state"> & RadioStateProps, never> & Partial<Pick<import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "$state"> & RadioStateProps, never>>> & string;
9
+ export declare const RadioInput: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, never> & Partial<Pick<import("react").DetailedHTMLProps<import("react").InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, never>>> & string;
10
+ declare const IconWrapper: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "$disabled" | "$hasLabel"> & {
11
+ $disabled?: boolean;
12
+ $hasLabel?: boolean;
13
+ }, never> & Partial<Pick<import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "$disabled" | "$hasLabel"> & {
14
+ $disabled?: boolean;
15
+ $hasLabel?: boolean;
16
+ }, never>>> & string;
17
+ declare const RadioButtonWrapper: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").LabelHTMLAttributes<HTMLLabelElement>, HTMLLabelElement>, "$align" | "$disabled" | "$fontSize"> & {
18
+ $disabled?: boolean;
19
+ $align?: "top" | "center";
20
+ $fontSize?: string | null;
21
+ }, never> & Partial<Pick<import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").LabelHTMLAttributes<HTMLLabelElement>, HTMLLabelElement>, "$align" | "$disabled" | "$fontSize"> & {
22
+ $disabled?: boolean;
23
+ $align?: "top" | "center";
24
+ $fontSize?: string | null;
25
+ }, never>>> & string;
26
+ declare const RadioIcon: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "$disabled" | "$hasLabel" | "$checked"> & {
27
+ $checked?: boolean;
28
+ $disabled?: boolean;
29
+ $hasLabel?: boolean;
30
+ }, never> & Partial<Pick<import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "$disabled" | "$hasLabel" | "$checked"> & {
31
+ $checked?: boolean;
32
+ $disabled?: boolean;
33
+ $hasLabel?: boolean;
34
+ }, never>>> & string;
35
+ declare const HiddenInput: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, keyof import("react").ClassAttributes<HTMLInputElement> | keyof import("react").InputHTMLAttributes<HTMLInputElement>> & import("react").ClassAttributes<HTMLInputElement> & import("react").InputHTMLAttributes<HTMLInputElement>, "type"> & Partial<Pick<import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, keyof import("react").ClassAttributes<HTMLInputElement> | keyof import("react").InputHTMLAttributes<HTMLInputElement>> & import("react").ClassAttributes<HTMLInputElement> & import("react").InputHTMLAttributes<HTMLInputElement>, "type">>> & string;
36
+ declare const LabelGroup: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never> & Partial<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>>> & string;
37
+ declare const MainLabel: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, never> & Partial<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, never>>> & string;
38
+ export { RadioButtonWrapper, HiddenInput, LabelGroup, MainLabel, IconWrapper, RadioIcon, };
@@ -0,0 +1,13 @@
1
+ import { HTMLAttributes, ReactElement } from "react";
2
+ export interface RadioButtonProps {
3
+ id: string;
4
+ name: string;
5
+ value?: string;
6
+ label?: string | ReactElement;
7
+ checked?: boolean;
8
+ disabled?: boolean;
9
+ className?: string;
10
+ align?: "top" | "center";
11
+ onChange?: (id: string, value?: string, label?: string) => void;
12
+ htmlProps?: HTMLAttributes<HTMLInputElement>;
13
+ }
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import { RadioButtonGroupProps } from "./types";
3
+ declare const RadioButtonGroup: ({ name, id, options, onChange, defaultSelectedId, heading, required, tooltipText, disabled, className, isViewOnly, showError, errorMessage, }: RadioButtonGroupProps) => React.JSX.Element;
4
+ export default RadioButtonGroup;
@@ -0,0 +1,87 @@
1
+ import React from "react";
2
+ import { CheckBoxFontSizeVariant } from "../CheckBox/types";
3
+ declare const _default: {
4
+ title: string;
5
+ component: ({ name, id, options, onChange, defaultSelectedId, heading, required, tooltipText, disabled, className, isViewOnly, showError, errorMessage, }: import("./types").RadioButtonGroupProps) => React.JSX.Element;
6
+ tags: string[];
7
+ argTypes: {
8
+ heading: {
9
+ control: string;
10
+ };
11
+ disabled: {
12
+ control: string;
13
+ };
14
+ required: {
15
+ control: string;
16
+ };
17
+ tooltipText: {
18
+ control: string;
19
+ };
20
+ onChange: {
21
+ action: string;
22
+ };
23
+ isViewOnly: {
24
+ control: string;
25
+ };
26
+ showError: {
27
+ control: string;
28
+ };
29
+ errorMessage: {
30
+ control: string;
31
+ };
32
+ };
33
+ args: {
34
+ name: string;
35
+ heading: string;
36
+ disabled: boolean;
37
+ required: boolean;
38
+ fontSize: CheckBoxFontSizeVariant;
39
+ };
40
+ };
41
+ export default _default;
42
+ type StoryArgs = {
43
+ name?: string;
44
+ heading?: string;
45
+ defaultSelectedId?: string;
46
+ disabled?: boolean;
47
+ required?: boolean;
48
+ tooltipText?: string;
49
+ fontSize?: string;
50
+ isViewOnly?: boolean;
51
+ showError?: boolean;
52
+ errorMessage?: string;
53
+ };
54
+ export declare const Default: {
55
+ render: (args: StoryArgs) => React.JSX.Element;
56
+ };
57
+ export declare const WithDefaultSelected: {
58
+ render: (args: StoryArgs) => React.JSX.Element;
59
+ };
60
+ export declare const AllDisabled: {
61
+ render: (args: StoryArgs) => React.JSX.Element;
62
+ args: {
63
+ disabled: boolean;
64
+ defaultSelectedId: string;
65
+ };
66
+ };
67
+ export declare const RequiredWithTooltip: {
68
+ render: (args: StoryArgs) => React.JSX.Element;
69
+ args: {
70
+ heading: string;
71
+ required: boolean;
72
+ showError: boolean;
73
+ disabled: boolean;
74
+ tooltipText: string;
75
+ };
76
+ };
77
+ export declare const ViewOnlyMode: {
78
+ render: (args: StoryArgs) => React.JSX.Element;
79
+ args: {
80
+ heading: string;
81
+ required: boolean;
82
+ showError: boolean;
83
+ isViewOnly: boolean;
84
+ defaultSelectedId: string;
85
+ tooltipText: string;
86
+ };
87
+ };
@@ -0,0 +1,8 @@
1
+ import { HelperTextProps } from "../HelperText/types";
2
+ declare const GroupWrapper: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").FieldsetHTMLAttributes<HTMLFieldSetElement>, HTMLFieldSetElement>, never> & Partial<Pick<import("react").DetailedHTMLProps<import("react").FieldsetHTMLAttributes<HTMLFieldSetElement>, HTMLFieldSetElement>, never>>> & string;
3
+ declare const HeadingRow: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never> & Partial<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>>> & string;
4
+ declare const Legend: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLLegendElement>, HTMLLegendElement>, never> & Partial<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLLegendElement>, HTMLLegendElement>, never>>> & string;
5
+ declare const CustomHelperText: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components").FastOmit<HelperTextProps, keyof HelperTextProps> & HelperTextProps, never> & Partial<Pick<import("styled-components").FastOmit<HelperTextProps, keyof HelperTextProps> & HelperTextProps, never>>> & string & Omit<({ id, className, affectLayout, text, type, htmlProps, }: HelperTextProps) => import("react").JSX.Element, keyof import("react").Component<any, {}, any>>;
6
+ declare const SelectedLabel: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, never> & Partial<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, never>>> & string;
7
+ declare const OptionsWrapper: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never> & Partial<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>>> & string;
8
+ export { GroupWrapper, HeadingRow, Legend, CustomHelperText, SelectedLabel, OptionsWrapper, };
@@ -0,0 +1,22 @@
1
+ import { ReactElement } from "react";
2
+ export interface RadioButtonGroupOption {
3
+ id: string;
4
+ label: string | ReactElement;
5
+ value: string;
6
+ disabled?: boolean;
7
+ }
8
+ export interface RadioButtonGroupProps {
9
+ name: string;
10
+ id?: string;
11
+ options: RadioButtonGroupOption[];
12
+ onChange: (payload: RadioButtonGroupOption) => void;
13
+ defaultSelectedId?: string;
14
+ heading?: string;
15
+ required?: boolean;
16
+ tooltipText?: string;
17
+ disabled?: boolean;
18
+ className?: string;
19
+ isViewOnly?: boolean;
20
+ showError?: boolean;
21
+ errorMessage?: string;
22
+ }
@@ -1,4 +1,4 @@
1
- export type StellaIconDefinition = "search" | "required" | "help" | "info" | "kebab-menu" | "error" | "warning" | "filter" | "sort" | "close" | "add" | "stella-logo" | "chevron-right" | "chevron-down" | "caret-right" | "caret-down" | "success" | "in-progress" | "complete" | "calendar" | "unlocked" | "locked" | "settings" | "preferences" | "account-settings" | "user" | "company-details" | "collapse" | "expand" | "star-filled" | "star-outline" | "dashboard" | "shopping-cart" | "calculator" | "pricing-strategies" | "stella-finance" | "resource-center" | "line-item-pricing" | "basket-pricing" | "paperclip" | "thumbs-up" | "thumbs-down" | "send" | "palette" | "eye" | "eye-slash" | "sync" | "chevron-left" | "check-square" | "money" | "currency-dollar" | "x-circle" | "empty" | "hourglass-simple-low" | "broadcast" | "list-checks" | "note-pencil" | "truck";
1
+ export type StellaIconDefinition = "search" | "required" | "help" | "info" | "kebab-menu" | "error" | "warning" | "filter" | "sort" | "close" | "add" | "stella-logo" | "chevron-right" | "chevron-down" | "caret-right" | "caret-down" | "success" | "in-progress" | "complete" | "calendar" | "unlocked" | "locked" | "settings" | "preferences" | "account-settings" | "user" | "company-details" | "collapse" | "expand" | "star-filled" | "star-outline" | "dashboard" | "shopping-cart" | "calculator" | "pricing-strategies" | "stella-finance" | "resource-center" | "line-item-pricing" | "basket-pricing" | "paperclip" | "thumbs-up" | "thumbs-down" | "send" | "palette" | "eye" | "eye-slash" | "sync" | "chevron-left" | "check-square" | "money" | "currency-dollar" | "x-circle" | "empty" | "hourglass-simple-low" | "broadcast" | "list-checks" | "note-pencil" | "truck" | "table";
2
2
  export interface StellaIconProps {
3
3
  iconName: StellaIconDefinition;
4
4
  size?: number;
@@ -1,4 +1,4 @@
1
1
  import React from "react";
2
2
  import { TableProps } from "./types";
3
- declare function Table<T>({ columns, data, isLoading, serverSide, onPageChange, onSortChange, onFilterChange, onRowSelect, onRowClick, rowStatuses, showSelection, showRowOptions, showPagination, variant, paginationDetails, selectionMenuItems, dataAuto, dataTestId, id, className, htmlProps, resetTrigger, emptyTableState, defaultFilters, staticFilters, }: TableProps<T>): React.JSX.Element;
3
+ declare function Table<T>({ columns, data, isLoading, serverSide, onPageChange, onSortChange, onFilterChange, onRowSelect, onRowClick, rowStatuses, showSelection, showRowOptions, showPagination, variant, paginationDetails, selectionMenuItems, dataAuto, dataTestId, id, className, htmlProps, resetTrigger, emptyTableState, defaultFilters, staticFilters, enableShowHide, globalActions, showExpandedRowToggle, renderExpandedRow, }: TableProps<T>): React.JSX.Element;
4
4
  export default Table;
@@ -1,3 +1,4 @@
1
+ import React from "react";
1
2
  import TableComponent from "./Table";
2
3
  import { TableProps } from "./types";
3
4
  interface Person {
@@ -21,3 +22,10 @@ export declare const Table: {
21
22
  variant: string;
22
23
  };
23
24
  };
25
+ export declare const ExpandedRows: {
26
+ args: {
27
+ id: string;
28
+ renderExpandedRow: (row: any) => React.JSX.Element | null;
29
+ showExpandedRowToggle: boolean;
30
+ };
31
+ };
@@ -0,0 +1,26 @@
1
+ import React, { RefObject } from "react";
2
+ export interface CheckboxDropdownOption {
3
+ key: string;
4
+ value: string;
5
+ }
6
+ interface CheckboxDropdownMenuProps {
7
+ options: CheckboxDropdownOption[];
8
+ selected: (string | number)[];
9
+ mode?: "search" | "singleSelect" | "multiSelect";
10
+ coords: {
11
+ top: number;
12
+ left: number;
13
+ };
14
+ menuRef: RefObject<HTMLDivElement | null>;
15
+ onApply: (selected: (string | number)[]) => void;
16
+ onClear: () => void;
17
+ showSelectAll?: boolean;
18
+ showClear?: boolean;
19
+ searchInputId?: string;
20
+ searchInputLabel?: string;
21
+ onSearch?: (value: string) => void;
22
+ onSearchBlur?: () => void;
23
+ serverSide?: boolean;
24
+ }
25
+ declare const CheckboxDropdownMenu: ({ options, selected, mode, coords, menuRef, onApply, onClear, showSelectAll, showClear, searchInputId, searchInputLabel, onSearch, onSearchBlur, serverSide, }: CheckboxDropdownMenuProps) => React.ReactPortal;
26
+ export default CheckboxDropdownMenu;
@@ -80,4 +80,13 @@ declare const EmptyTableSection: import("styled-components/dist/types").IStyledC
80
80
  declare const EmptyTableHeader: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLParagraphElement>, HTMLParagraphElement>, never> & Partial<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLParagraphElement>, HTMLParagraphElement>, never>>> & string;
81
81
  declare const EmptyTableSubHeader: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLParagraphElement>, HTMLParagraphElement>, never> & Partial<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLParagraphElement>, HTMLParagraphElement>, never>>> & string;
82
82
  declare const ClearFilterButtonRow: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never> & Partial<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>>> & string;
83
- export { HeaderCell, TableWrapper, TableWrapperScroll, StyledTable, CustomIconButton, SortButton, HeaderRow, FilterMenu, Checkbox, BodyCell, HeaderCellPosition, MenuButton, MenuItem, FilterBoxLabel, LoadingShimmer, FilterLabelTransparent, CustomPagination, CellRow, MenuItemGroup, KebabAlign, MenuItemOption, EmptyTableCell, EmptyTableSection, EmptyTableHeader, EmptyTableSubHeader, ClearFilterButtonRow, };
83
+ declare const ExpandedContentRow: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLTableRowElement>, HTMLTableRowElement>, never> & Partial<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLTableRowElement>, HTMLTableRowElement>, never>>> & string;
84
+ declare const ExpandedContentCell: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").TdHTMLAttributes<HTMLTableDataCellElement>, HTMLTableDataCellElement>, never> & Partial<Pick<import("react").DetailedHTMLProps<import("react").TdHTMLAttributes<HTMLTableDataCellElement>, HTMLTableDataCellElement>, never>>> & string;
85
+ declare const ExpandChevronButton: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "$expanded"> & {
86
+ $expanded: boolean;
87
+ }, never> & Partial<Pick<import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "$expanded"> & {
88
+ $expanded: boolean;
89
+ }, never>>> & string;
90
+ declare const ActionBar: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never> & Partial<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>>> & string;
91
+ declare const GlobalActionWrapper: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never> & Partial<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>>> & string;
92
+ export { HeaderCell, TableWrapper, TableWrapperScroll, StyledTable, CustomIconButton, SortButton, HeaderRow, FilterMenu, Checkbox, BodyCell, HeaderCellPosition, MenuButton, MenuItem, FilterBoxLabel, LoadingShimmer, FilterLabelTransparent, CustomPagination, CellRow, MenuItemGroup, KebabAlign, MenuItemOption, EmptyTableCell, EmptyTableSection, EmptyTableHeader, EmptyTableSubHeader, ClearFilterButtonRow, ActionBar, GlobalActionWrapper, ExpandedContentRow, ExpandedContentCell, ExpandChevronButton, };
@@ -1,5 +1,5 @@
1
- import { ColumnDef, ColumnFiltersState, Row } from "@tanstack/react-table";
2
- import { HTMLAttributes } from "react";
1
+ import { ColumnDef, ColumnFiltersState, Row, Table } from "@tanstack/react-table";
2
+ import React, { HTMLAttributes, ReactElement } from "react";
3
3
  declare enum TableVariant {
4
4
  PRIMARY = "Primary",
5
5
  SECONDARY = "Secondary"
@@ -13,6 +13,8 @@ export interface TableProps<T> {
13
13
  columns: ColumnDef<T, any>[];
14
14
  data: T[];
15
15
  isLoading?: boolean;
16
+ showExpandedRowToggle?: boolean;
17
+ renderExpandedRow?: (row: Row<T>) => React.ReactNode | null;
16
18
  serverSide?: boolean;
17
19
  onPageChange?: (page: number, pageSize: number) => void;
18
20
  onSortChange?: (sort: {
@@ -33,7 +35,7 @@ export interface TableProps<T> {
33
35
  }[];
34
36
  dataTestId?: string;
35
37
  dataAuto?: string;
36
- id?: string;
38
+ id: string;
37
39
  className?: string;
38
40
  htmlProps?: HTMLAttributes<HTMLTableElement>;
39
41
  paginationDetails?: PaginationDetails;
@@ -53,6 +55,8 @@ export interface TableProps<T> {
53
55
  id: string;
54
56
  value: unknown;
55
57
  }[];
58
+ enableShowHide?: boolean;
59
+ globalActions?: (table: Table<T>) => ReactElement;
56
60
  }
57
61
  export interface CustomColumnMeta {
58
62
  headerAlign?: "left" | "right";
@@ -64,6 +68,7 @@ export interface CustomColumnMeta {
64
68
  value?: string;
65
69
  }[];
66
70
  filterMode?: "singleSelect" | "multiSelect" | "search";
71
+ defaultHidden?: boolean;
67
72
  }
68
73
  export type RowStatus = "action-pending" | "completed";
69
74
  export {};
@@ -0,0 +1,9 @@
1
+ import { ColumnSizingState, SortingState, VisibilityState } from "@tanstack/react-table";
2
+ type PersistedTableState = {
3
+ columnVisibility: VisibilityState;
4
+ columnSizing: ColumnSizingState;
5
+ sorting: SortingState;
6
+ };
7
+ export declare function loadTableState(tableId: string): Partial<PersistedTableState>;
8
+ export declare function usePersistTableState(tableId: string, state: Partial<PersistedTableState>, sizingDebounceMs?: number): void;
9
+ export {};