greenole-design-system 1.1.65 → 1.1.67

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/README.md CHANGED
@@ -1,147 +1,147 @@
1
- # Greenole Design System
2
-
3
- [![Figma Design](https://img.shields.io/badge/Figma-Design_System-blue)](https://www.figma.com/design/Zwkbh8XGfVt2At4ln7p1WE/DS-Greenole?node-id=1017-15&p=f&t=Mjdfp67Q8ADWcm9v-0)
4
-
5
- The **Greenole Design System** is a React component library designed to create consistent and scalable user interfaces.
6
- The library is constantly evolving, with new components and improvements being added over time.
7
-
8
- ## Table of Contents
9
-
10
- - [Introduction](#introduction)
11
- - [Installation](#installation)
12
- - [Usage](#usage)
13
- - [Development](#development)
14
- - [Build & Publication](#build--publication)
15
- - [Contributing](#contributing)
16
- - [License](#license)
17
-
18
- ## Introduction
19
-
20
- **Greenole Design System** gathers reusable components that follow a consistent visual identity.
21
- It helps teams maintain design and usability standards across their React projects.
22
-
23
- > **Note:**
24
- > This library is in constant evolution. Existing components may be updated and new ones added over time.
25
-
26
- ## Installation
27
-
28
- To install the library in your React project, run:
29
-
30
- ```bash
31
- npm install greenole-design-system
32
- ```
33
-
34
- > **Note:**
35
- > The library declares `react` and `react-dom` as peer dependencies, so ensure your project already has these installed.
36
-
37
- ## Usage
38
-
39
- After installation, you need to import both the CSS styles and the components:
40
-
41
- ### 1. Import the CSS styles
42
-
43
- First, import the CSS file in your main application file (usually `main.jsx`, `App.jsx`, or `index.js`):
44
-
45
- ```jsx
46
- import 'greenole-design-system/dist/greenole.css';
47
- ```
48
-
49
- ### 2. Import and use components
50
-
51
- Then you can import and use the library's components:
52
-
53
- ```jsx
54
- import React from 'react';
55
- import { Typography } from 'greenole-design-system';
56
-
57
- function App() {
58
- return (
59
- <div>
60
- <Typography variant="h1">
61
- The quick brown fox jumps over the lazy dog.
62
- </Typography>
63
- {/* Additional components will be added in the future */}
64
- </div>
65
- );
66
- }
67
-
68
- export default App;
69
- ```
70
-
71
- ## Development
72
-
73
- To contribute to or test the library locally:
74
-
75
- 1. Clone the repository:
76
- ```bash
77
- git clone https://github.com/your-username/greenole-design-system.git
78
- cd greenole-design-system
79
- ```
80
- 2. Install dependencies:
81
- ```bash
82
- npm install
83
- ```
84
- 3. Start the development environment using Vite:
85
- ```bash
86
- npm run dev
87
- ```
88
- 4. To view the documentation and components, we use **Storybook**:
89
- ```bash
90
- npm run storybook
91
- ```
92
- Storybook serves as the documentation and demo environment for the library's components.
93
-
94
- ## Build & Publication
95
-
96
- To generate the library bundle:
97
-
98
- 1. Run the build command:
99
-
100
- ```bash
101
- npm run build
102
- ```
103
-
104
- This will create the `dist` folder with both CommonJS and ESModule files, as well as type declarations (if configured).
105
-
106
- 2. To test locally in another project, use `npm link`:
107
- ```bash
108
- cd greenole-design-system
109
- npm link
110
- cd ../your-consumer-project
111
- npm link greenole-design-system
112
- ```
113
- 3. When ready to publish:
114
-
115
- ```bash
116
- npm login
117
- npm publish --access public
118
- ```
119
-
120
- ## Publishing Storybook to GitHub Pages
121
-
122
- 1. Build the Storybook:
123
-
124
- ```bash
125
- npm run build-storybook
126
- ```
127
-
128
- This generates the static files for your Storybook.
129
-
130
- 2. Deploy to GitHub Pages:
131
-
132
- ```bash
133
- npm run deploy-storybook
134
- ```
135
-
136
- This will automatically push the built files to the configured branch (`gh-pages`).
137
-
138
- After that, you can access the updated Storybook at: [Design System](https://greenole-iot.github.io/greenole-design-system)
139
-
140
- ## Contributing
141
-
142
- Contributions are welcome! If you would like to help evolve the **Greenole Design System**, follow these steps:
143
-
144
- 1. Fork the repository.
145
- 2. Create a branch for your feature (`git checkout -b my-feature`).
146
- 3. Commit your changes.
147
- 4. Open a pull request for review.
1
+ # Greenole Design System
2
+
3
+ [![Figma Design](https://img.shields.io/badge/Figma-Design_System-blue)](https://www.figma.com/design/Zwkbh8XGfVt2At4ln7p1WE/DS-Greenole?node-id=1017-15&p=f&t=Mjdfp67Q8ADWcm9v-0)
4
+
5
+ The **Greenole Design System** is a React component library designed to create consistent and scalable user interfaces.
6
+ The library is constantly evolving, with new components and improvements being added over time.
7
+
8
+ ## Table of Contents
9
+
10
+ - [Introduction](#introduction)
11
+ - [Installation](#installation)
12
+ - [Usage](#usage)
13
+ - [Development](#development)
14
+ - [Build & Publication](#build--publication)
15
+ - [Contributing](#contributing)
16
+ - [License](#license)
17
+
18
+ ## Introduction
19
+
20
+ **Greenole Design System** gathers reusable components that follow a consistent visual identity.
21
+ It helps teams maintain design and usability standards across their React projects.
22
+
23
+ > **Note:**
24
+ > This library is in constant evolution. Existing components may be updated and new ones added over time.
25
+
26
+ ## Installation
27
+
28
+ To install the library in your React project, run:
29
+
30
+ ```bash
31
+ npm install greenole-design-system
32
+ ```
33
+
34
+ > **Note:**
35
+ > The library declares `react` and `react-dom` as peer dependencies, so ensure your project already has these installed.
36
+
37
+ ## Usage
38
+
39
+ After installation, you need to import both the CSS styles and the components:
40
+
41
+ ### 1. Import the CSS styles
42
+
43
+ First, import the CSS file in your main application file (usually `main.jsx`, `App.jsx`, or `index.js`):
44
+
45
+ ```jsx
46
+ import 'greenole-design-system/dist/greenole.css';
47
+ ```
48
+
49
+ ### 2. Import and use components
50
+
51
+ Then you can import and use the library's components:
52
+
53
+ ```jsx
54
+ import React from 'react';
55
+ import { Typography } from 'greenole-design-system';
56
+
57
+ function App() {
58
+ return (
59
+ <div>
60
+ <Typography variant="h1">
61
+ The quick brown fox jumps over the lazy dog.
62
+ </Typography>
63
+ {/* Additional components will be added in the future */}
64
+ </div>
65
+ );
66
+ }
67
+
68
+ export default App;
69
+ ```
70
+
71
+ ## Development
72
+
73
+ To contribute to or test the library locally:
74
+
75
+ 1. Clone the repository:
76
+ ```bash
77
+ git clone https://github.com/your-username/greenole-design-system.git
78
+ cd greenole-design-system
79
+ ```
80
+ 2. Install dependencies:
81
+ ```bash
82
+ npm install
83
+ ```
84
+ 3. Start the development environment using Vite:
85
+ ```bash
86
+ npm run dev
87
+ ```
88
+ 4. To view the documentation and components, we use **Storybook**:
89
+ ```bash
90
+ npm run storybook
91
+ ```
92
+ Storybook serves as the documentation and demo environment for the library's components.
93
+
94
+ ## Build & Publication
95
+
96
+ To generate the library bundle:
97
+
98
+ 1. Run the build command:
99
+
100
+ ```bash
101
+ npm run build
102
+ ```
103
+
104
+ This will create the `dist` folder with both CommonJS and ESModule files, as well as type declarations (if configured).
105
+
106
+ 2. To test locally in another project, use `npm link`:
107
+ ```bash
108
+ cd greenole-design-system
109
+ npm link
110
+ cd ../your-consumer-project
111
+ npm link greenole-design-system
112
+ ```
113
+ 3. When ready to publish:
114
+
115
+ ```bash
116
+ npm login
117
+ npm publish --access public
118
+ ```
119
+
120
+ ## Publishing Storybook to GitHub Pages
121
+
122
+ 1. Build the Storybook:
123
+
124
+ ```bash
125
+ npm run build-storybook
126
+ ```
127
+
128
+ This generates the static files for your Storybook.
129
+
130
+ 2. Deploy to GitHub Pages:
131
+
132
+ ```bash
133
+ npm run deploy-storybook
134
+ ```
135
+
136
+ This will automatically push the built files to the configured branch (`gh-pages`).
137
+
138
+ After that, you can access the updated Storybook at: [Design System](https://greenole-iot.github.io/greenole-design-system)
139
+
140
+ ## Contributing
141
+
142
+ Contributions are welcome! If you would like to help evolve the **Greenole Design System**, follow these steps:
143
+
144
+ 1. Fork the repository.
145
+ 2. Create a branch for your feature (`git checkout -b my-feature`).
146
+ 3. Commit your changes.
147
+ 4. Open a pull request for review.
@@ -25,6 +25,7 @@ export interface DropdownTypes {
25
25
  className?: string;
26
26
  isRequired?: boolean;
27
27
  showClearButton?: boolean;
28
+ showSelectAll?: boolean;
28
29
  container?: HTMLElement;
29
30
  showTags?: boolean;
30
31
  t?: THookTypes;
@@ -8,3 +8,4 @@ export declare const ShowOverlay: import('@storybook/core/csf').AnnotatedStoryFn
8
8
  export declare const HeaderAndFooterWithout: import('@storybook/core/csf').AnnotatedStoryFn<import('@storybook/react').ReactRenderer, DrawerProps>;
9
9
  export declare const HeaderWithout: import('@storybook/core/csf').AnnotatedStoryFn<import('@storybook/react').ReactRenderer, DrawerProps>;
10
10
  export declare const FooterWithout: import('@storybook/core/csf').AnnotatedStoryFn<import('@storybook/react').ReactRenderer, DrawerProps>;
11
+ export declare const WithSteps: import('@storybook/core/csf').AnnotatedStoryFn<import('@storybook/react').ReactRenderer, DrawerProps>;
@@ -10,6 +10,7 @@ export declare const DrawerContainer: import('styled-components/dist/types').ISt
10
10
  export declare const Header: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
11
11
  $direction: "left" | "right";
12
12
  }>> & string;
13
+ export declare const HeaderSteps: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
13
14
  export declare const Title: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLHeadingElement>, HTMLHeadingElement>, never>> & string;
14
15
  export declare const Subtitle: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLParagraphElement>, HTMLParagraphElement>, never>> & string;
15
16
  export declare const Body: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
@@ -1,4 +1,5 @@
1
1
  import { ReactNode } from 'react';
2
+ import { LinearStepperStep } from '../Timeline/Timeline.types';
2
3
  export interface DrawerProps {
3
4
  show: boolean;
4
5
  title?: string | ReactNode;
@@ -12,6 +13,8 @@ export interface DrawerProps {
12
13
  direction?: 'left' | 'right';
13
14
  cancelButton?: ReactNode;
14
15
  confirmButton?: ReactNode;
16
+ steps?: LinearStepperStep[];
17
+ onStepChange?: (step: number) => void;
15
18
  onCancel?: () => void;
16
19
  onConfirm?: () => void;
17
20
  onClose?: () => void;
@@ -0,0 +1,4 @@
1
+ import { default as React } from 'react';
2
+ import { FilterProps } from './Filter.types';
3
+ declare const Filter: React.FC<FilterProps>;
4
+ export default Filter;
@@ -0,0 +1,12 @@
1
+ import { Meta, StoryObj } from '@storybook/react';
2
+ import { default as Filter } from './Filter';
3
+ declare const meta: Meta<typeof Filter>;
4
+ export default meta;
5
+ type Story = StoryObj<typeof Filter>;
6
+ export declare const Default: Story;
7
+ export declare const WithCheckboxes: Story;
8
+ export declare const MixedFilters: Story;
9
+ export declare const WithInitialValues: Story;
10
+ export declare const CompleteExample: Story;
11
+ export declare const CustomLabel: Story;
12
+ export declare const WithMultipleSelect: Story;
@@ -0,0 +1,23 @@
1
+ export declare const FilterContainer: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
2
+ export declare const FilterButton: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, {
3
+ $isOpen: boolean;
4
+ }>> & string;
5
+ export declare const FilterButtonLabel: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, never>> & string;
6
+ export declare const FilterPanel: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
7
+ export declare const FilterSections: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
8
+ export declare const FilterSection: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
9
+ $isLast?: boolean;
10
+ }>> & string;
11
+ export declare const FilterSectionLabel: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').LabelHTMLAttributes<HTMLLabelElement>, HTMLLabelElement>, never>> & string;
12
+ export declare const FilterSectionContent: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
13
+ export declare const FilterDropdownWrapper: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
14
+ export declare const FilterCheckboxWrapper: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
15
+ export declare const FilterCheckboxItem: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').LabelHTMLAttributes<HTMLLabelElement>, HTMLLabelElement>, never>> & string;
16
+ export declare const FilterResetButton: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, never>> & string;
17
+ export declare const FilterActions: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
18
+ export declare const FilterActionButton: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, {
19
+ $variant: "reset" | "apply";
20
+ }>> & string;
21
+ export declare const CaretIcon: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').SVGProps<SVGSVGElement>, {
22
+ $open: boolean;
23
+ }>> & string;
@@ -0,0 +1,27 @@
1
+ import { THookTypes } from '../../utils/i18n/types';
2
+ export interface FilterItemOption {
3
+ label: string;
4
+ value: string;
5
+ }
6
+ export interface FilterItem {
7
+ label?: string;
8
+ key: string;
9
+ value: string | string[];
10
+ options: FilterItemOption[];
11
+ multiple?: boolean;
12
+ }
13
+ export interface FilterSelectedValues {
14
+ [key: string]: string | string[];
15
+ }
16
+ export interface FilterOutput {
17
+ selectedFilters: FilterSelectedValues;
18
+ queryString: string;
19
+ }
20
+ export interface FilterProps {
21
+ items: FilterItem[];
22
+ initialValues?: FilterSelectedValues;
23
+ label?: string;
24
+ className?: string;
25
+ t?: THookTypes;
26
+ onChange?: (output: FilterOutput) => void;
27
+ }
@@ -0,0 +1,2 @@
1
+ export { default as Filter } from './Filter';
2
+ export type { FilterProps, FilterItem, FilterItemOption, FilterSelectedValues, FilterOutput, } from './Filter.types';
@@ -1,4 +1,4 @@
1
1
  import { default as React } from 'react';
2
2
  import { TableProps } from './Table.types';
3
- declare const Table: <T extends Record<string, any>>({ columns, data, currentPage, totalItems, headerExtra, actions, isMobile, itemsPerPage, loading, striped, showSearch, showManageColumns, tableKey, fetchData, onPageChange, onItemsPerPageChange, t: tProp, }: Readonly<TableProps<T>>) => React.JSX.Element;
3
+ declare const Table: <T extends Record<string, any>>({ columns, data, currentPage, totalItems, headerExtra, actions, isMobile, itemsPerPage, loading, striped, showSearch, showManageColumns, tableKey, fetchData, onPageChange, onItemsPerPageChange, filterConfig, onFilterChange, t: tProp, }: Readonly<TableProps<T>>) => React.JSX.Element;
4
4
  export default Table;
@@ -12,3 +12,5 @@ export declare const WithHeaderExtra: Story;
12
12
  export declare const WithActionsAndHeaderExtra: Story;
13
13
  export declare const ColumnFiltersLocalData: Story;
14
14
  export declare const ColumnFiltersFetchData: Story;
15
+ export declare const WithFilter: Story;
16
+ export declare const WithFilterAndFetchData: Story;
@@ -41,3 +41,4 @@ export declare const TableColumnManagerItemDrag: import('styled-components/dist/
41
41
  }>> & string;
42
42
  export declare const TableColumnManagerButtons: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
43
43
  export declare const TableButton: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, never>> & string;
44
+ export declare const TableFilterWrapper: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
@@ -1,5 +1,6 @@
1
1
  import { ReactNode } from 'react';
2
2
  import { THookTypes } from '../../utils/i18n/types';
3
+ import { FilterItem, FilterSelectedValues, FilterOutput } from '../Filter';
3
4
  export interface TableColumn<T = any> {
4
5
  label: string;
5
6
  key: keyof T | string;
@@ -34,6 +35,12 @@ interface BaseTableProps<T = any> {
34
35
  headerExtra?: ReactNode;
35
36
  actions?: ReactNode;
36
37
  t?: THookTypes;
38
+ filterConfig?: {
39
+ items: FilterItem[];
40
+ initialValues?: FilterSelectedValues;
41
+ label?: string;
42
+ };
43
+ onFilterChange?: (output: FilterOutput) => void;
37
44
  }
38
45
  interface TableWithoutColumnManagement<T = any> extends BaseTableProps<T> {
39
46
  showManageColumns?: false;
@@ -0,0 +1,4 @@
1
+ import { default as React } from 'react';
2
+ import { TimelineProps } from './Timeline.types';
3
+ export declare const Timeline: React.FC<TimelineProps>;
4
+ export default Timeline;
@@ -0,0 +1,10 @@
1
+ import { Meta, StoryObj } from '@storybook/react';
2
+ import { default as Timeline } from './Timeline';
3
+ declare const meta: Meta<typeof Timeline>;
4
+ export default meta;
5
+ type Story = StoryObj<typeof Timeline>;
6
+ export declare const Default: Story;
7
+ export declare const TimelineTemplate: Story;
8
+ export declare const WithMessage: Story;
9
+ export declare const WithWarningMessage: Story;
10
+ export declare const ErrorMessage: Story;
@@ -0,0 +1,27 @@
1
+ export declare const Wrapper: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
2
+ export declare const StepsWrapper: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
3
+ $isMobile?: boolean;
4
+ $isTimeline?: boolean;
5
+ }>> & string;
6
+ export declare const LineWrapper: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
7
+ export declare const Line: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
8
+ $isTimeline?: boolean;
9
+ }>> & string;
10
+ export declare const LineFill: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<Omit<Omit<import('framer-motion').HTMLMotionProps<"span">, "ref"> & import('react').RefAttributes<HTMLSpanElement>, "ref"> & {
11
+ ref?: ((instance: HTMLSpanElement | null) => void | import('react').DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof import('react').DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES]) | import('react').RefObject<HTMLSpanElement> | null | undefined;
12
+ }, never>> & string & Omit<import('framer-motion').ForwardRefComponent<HTMLSpanElement, import('framer-motion').HTMLMotionProps<"span">>, keyof import('react').Component<any, {}, any>>;
13
+ export declare const StepButtonAndLabelWrapper: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
14
+ $isTimeline?: boolean;
15
+ }>> & string;
16
+ export declare const StepButton: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, {
17
+ $clickable?: boolean;
18
+ }>> & string;
19
+ export declare const Circle: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<Omit<Omit<import('framer-motion').HTMLMotionProps<"div">, "ref"> & import('react').RefAttributes<HTMLDivElement>, "ref"> & {
20
+ ref?: ((instance: HTMLDivElement | null) => void | import('react').DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof import('react').DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES]) | import('react').RefObject<HTMLDivElement> | null | undefined;
21
+ }, never>> & string & Omit<import('framer-motion').ForwardRefComponent<HTMLDivElement, import('framer-motion').HTMLMotionProps<"div">>, keyof import('react').Component<any, {}, any>>;
22
+ export declare const Label: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLParagraphElement>, HTMLParagraphElement>, {
23
+ $isTimeline?: boolean;
24
+ $isFirst?: boolean;
25
+ $isLast?: boolean;
26
+ }>> & string;
27
+ export declare const MessageWrapper: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
@@ -0,0 +1,23 @@
1
+ import { ReactNode } from 'react';
2
+ export type LinearStepperStepMessage = {
3
+ label?: string;
4
+ text?: string;
5
+ icon?: ReactNode;
6
+ isWarning?: boolean;
7
+ isError?: boolean;
8
+ };
9
+ export type LinearStepperStep = {
10
+ id?: string;
11
+ label?: string;
12
+ message?: LinearStepperStepMessage;
13
+ };
14
+ export type TimelineProps = {
15
+ steps: LinearStepperStep[];
16
+ activeStep: number;
17
+ title?: string;
18
+ template?: 'timeline' | 'step';
19
+ className?: string;
20
+ isMobile?: boolean;
21
+ disableStepAnimation?: boolean;
22
+ onStepClick?: (stepIndex: number, stepId?: string) => void;
23
+ };
@@ -0,0 +1 @@
1
+ export { default as Timeline } from './Timeline';