freemium-ui 2.0.0-beta.2 → 2.0.0-beta.21

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/index.d.ts ADDED
@@ -0,0 +1,1649 @@
1
+ /// <reference types="react" />
2
+ import * as react from 'react';
3
+ import react__default from 'react';
4
+ import * as Popover$1 from '@radix-ui/react-popover';
5
+ import { PopperContentProps } from '@radix-ui/react-popover';
6
+ import { RadioGroupProps as RadioGroupProps$1, RadioGroupContextValue } from '@radix-ui/react-radio-group';
7
+ import { CheckboxProps as CheckboxProps$1 } from '@radix-ui/react-checkbox';
8
+ import * as _radix_ui_react_select from '@radix-ui/react-select';
9
+ import { SelectProps, SelectItemProps } from '@radix-ui/react-select';
10
+ export { Item as RadixSelectItem } from '@radix-ui/react-select';
11
+ import { UseSelectProps, UseComboboxProps, UseMultipleSelectionProps } from 'downshift';
12
+ import * as _radix_ui_react_label from '@radix-ui/react-label';
13
+ import { LabelProps } from '@radix-ui/react-label';
14
+ import * as DropdownMenu from '@radix-ui/react-dropdown-menu';
15
+ import { MenuItemProps as MenuItemProps$1 } from '@radix-ui/react-dropdown-menu';
16
+ export { Item as RadixMenuItem } from '@radix-ui/react-dropdown-menu';
17
+ import * as styled_components from 'styled-components';
18
+ import * as styled_components_dist_types from 'styled-components/dist/types';
19
+ import { DateInput3Props, DateRangeInput3Props, TimePrecision } from '@blueprintjs/datetime2';
20
+ import { DraggableSyntheticListeners } from '@dnd-kit/core';
21
+ import { CoreOptions, ColumnDef, Cell, RowSelectionState } from '@tanstack/react-table';
22
+ import * as Tabs$1 from '@radix-ui/react-tabs';
23
+ import { TabsProps as TabsProps$1 } from '@radix-ui/react-tabs';
24
+ import { TooltipProviderProps, TooltipProps as TooltipProps$1, TooltipArrowProps } from '@radix-ui/react-tooltip';
25
+ import { TransitionProps as TransitionProps$1 } from 'react-transition-group/Transition';
26
+ export { TransitionStatus } from 'react-transition-group/Transition';
27
+
28
+ type LevelType = 'warning' | 'success' | 'error' | 'info';
29
+ type AlertData = {
30
+ message: string;
31
+ linkText?: string;
32
+ href?: string;
33
+ };
34
+ interface AlertProps extends React.HTMLAttributes<HTMLDivElement> {
35
+ /**
36
+ * data to be displayed in the alert
37
+ */
38
+ data?: AlertData;
39
+ /**
40
+ * Level of the alert
41
+ */
42
+ level: LevelType;
43
+ /**
44
+ * Whether the alert can be dismissed
45
+ */
46
+ canDismiss?: boolean;
47
+ /**
48
+ * Timeout for the alert to disappear
49
+ */
50
+ timeout?: number;
51
+ /**
52
+ * @deprecated
53
+ * Class name to be overriden
54
+ */
55
+ overideClassName?: string;
56
+ /**
57
+ * Children to be displayed in the alert
58
+ */
59
+ children?: React.ReactNode | string;
60
+ /**
61
+ * Function to be called when the alert is closed
62
+ */
63
+ onClose?: () => any;
64
+ /**
65
+ * Function to be called when the alert is dismissed
66
+ */
67
+ onDisappear?: () => any;
68
+ }
69
+
70
+ /**
71
+ * Alert displays an alert on the user interface and enables displaying additional information to the context of the page.
72
+ */
73
+ declare const Alert: ({ canDismiss, onClose, children, level, onDisappear, data, timeout, overideClassName, ...props }: AlertProps) => react__default.JSX.Element | null;
74
+
75
+ type ButtonSizeKey = 'mini' | 'normal' | 'large';
76
+ type ButtonVariant = 'primary' | 'secondary' | 'danger' | 'link';
77
+ interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
78
+ /**
79
+ * The size of the button
80
+ */
81
+ size?: ButtonSizeKey;
82
+ /**
83
+ * The variant of the button
84
+ */
85
+ variant?: 'primary' | 'secondary' | 'danger' | 'link';
86
+ /**
87
+ * The children to be displayed in the button
88
+ */
89
+ children?: React.ReactNode | string;
90
+ /**
91
+ * Whether the button is loading
92
+ */
93
+ loading?: boolean;
94
+ /**
95
+ * Whether the button is inline
96
+ */
97
+ inline?: boolean;
98
+ }
99
+
100
+ /**
101
+ * Button displays a button on the user interface and enables performing specific actions based on the button type. The button’s label can be a text, icon, or both.
102
+ */
103
+ declare const Button: ({ size, variant, children, loading, inline, ...props }: ButtonProps) => react__default.JSX.Element;
104
+
105
+ interface ButtonDropdownItemProps {
106
+ id: string;
107
+ name: string;
108
+ disabled?: boolean;
109
+ [key: string]: any;
110
+ }
111
+ interface ButtonDropdownProps<T extends ButtonDropdownItemProps = ButtonDropdownItemProps> {
112
+ side?: PopperContentProps['side'];
113
+ sideOffset?: PopperContentProps['sideOffset'];
114
+ align?: PopperContentProps['align'];
115
+ alignOffset?: PopperContentProps['alignOffset'];
116
+ arrowPadding?: PopperContentProps['arrowPadding'];
117
+ avoidCollisions?: PopperContentProps['avoidCollisions'];
118
+ /**
119
+ * value of menu
120
+ */
121
+ defaultSelectedItem?: T;
122
+ /**
123
+ * options for menu button
124
+ */
125
+ options?: Array<T>;
126
+ /**
127
+ * Called when a menu item is selected
128
+ */
129
+ onClick?: (option?: T, event?: React.MouseEvent<HTMLButtonElement>) => void;
130
+ /**
131
+ * id Accessor of menu
132
+ */
133
+ idAccessor?: string;
134
+ /**
135
+ * name Accessor of menu
136
+ */
137
+ nameAccessor?: string;
138
+ /**
139
+ * name Accessor of menu
140
+ */
141
+ id?: string;
142
+ /**
143
+ * name Accessor of menu
144
+ */
145
+ name?: string;
146
+ disabled?: React.ButtonHTMLAttributes<HTMLButtonElement>['disabled'];
147
+ size?: ButtonProps['size'];
148
+ variant?: ButtonProps['variant'];
149
+ loading?: ButtonProps['loading'];
150
+ inline?: ButtonProps['inline'];
151
+ }
152
+
153
+ /**
154
+ * ButtonDropdown is a button with a dropdown menu. It is used to select an item from a list of items.
155
+ */
156
+ declare const ButtonDropdown: ({ size, variant, loading, inline, defaultSelectedItem, idAccessor, nameAccessor, onClick, options, side, sideOffset, align, alignOffset, arrowPadding, avoidCollisions, disabled, id, name, }: ButtonDropdownProps) => react__default.JSX.Element;
157
+
158
+ interface BoxedRadioItemProps {
159
+ disabled?: boolean;
160
+ [key: string]: any;
161
+ }
162
+ type BoxedRadioProps<T extends BoxedRadioItemProps = BoxedRadioItemProps> = Omit<react__default.HtmlHTMLAttributes<HTMLDivElement>, 'onChange' | 'value' | 'defaultValue'> & {
163
+ dir?: RadioGroupProps$1['dir'];
164
+ /**
165
+ * Select options
166
+ */
167
+ options?: Array<T>;
168
+ /**
169
+ * Select options
170
+ */
171
+ disabled?: boolean;
172
+ /**
173
+ * Select options
174
+ */
175
+ readOnly?: boolean;
176
+ /**
177
+ * Id accessor of radio button
178
+ */
179
+ idAccessor?: string;
180
+ /**
181
+ * The default value
182
+ */
183
+ defaultValue?: string;
184
+ /**
185
+ * Value of radio button
186
+ */
187
+ value?: RadioGroupContextValue['value'];
188
+ /**
189
+ * Function to be called when the selected item changes
190
+ */
191
+ onChange?: RadioGroupContextValue['onValueChange'];
192
+ /**
193
+ * The description of the content
194
+ */
195
+ label?: string;
196
+ errorText?: string;
197
+ isRequired?: boolean;
198
+ isErrored?: boolean;
199
+ /**
200
+ * The description of the content
201
+ */
202
+ getTextContent: (item: T, type: 'name' | 'description') => string;
203
+ /**
204
+ * The description of the content
205
+ */
206
+ itemComponent?: (item: T) => react__default.ReactNode | string;
207
+ };
208
+
209
+ /**
210
+ * BoxedRadio displays a group of options with radio buttons and enables selection of one option from the list.
211
+ */
212
+ declare const BoxedRadio: <T extends BoxedRadioItemProps>({ options, defaultValue, idAccessor, onChange, isErrored, errorText, disabled, getTextContent, className, id, isRequired, readOnly, itemComponent, label, value, ...props }: BoxedRadioProps<T>) => react__default.JSX.Element;
213
+
214
+ interface CheckboxProps extends CheckboxProps$1 {
215
+ /**
216
+ * Whether the checkbox is required
217
+ */
218
+ isRequired?: boolean;
219
+ /**
220
+ * Whether the checkbox is errored
221
+ */
222
+ isErrored?: boolean;
223
+ /**
224
+ * Whether the checkbox is readOnly
225
+ */
226
+ readOnly?: boolean;
227
+ /**
228
+ * Label for the checkbox
229
+ */
230
+ label?: string;
231
+ }
232
+
233
+ /**
234
+ * Checkbox displays a check box on the user interface and enables assigning a state (selected or deselected) to it. In the selected state, the check box displayed on the UI is highlighted and contains a check mark.
235
+ */
236
+ declare const Checkbox: ({ isRequired, isErrored, className, readOnly, label, ...rest }: CheckboxProps) => react__default.JSX.Element;
237
+
238
+ interface ConfirmationProps {
239
+ /**
240
+ * Is the confirmation open
241
+ */
242
+ isOpen?: boolean;
243
+ /**
244
+ * The children or label
245
+ */
246
+ children?: React.ReactNode | string;
247
+ /**
248
+ * Is the confirm button disabled
249
+ */
250
+ confirmButtonDisabled?: boolean;
251
+ /**
252
+ * Is the cancel button disabled
253
+ */
254
+ cancelButtonDisabled?: boolean;
255
+ /**
256
+ * Title of the confirmation
257
+ */
258
+ title?: string;
259
+ /**
260
+ * Description of the confirmation
261
+ */
262
+ description?: React.ReactNode | string;
263
+ /**
264
+ * Width of the confirmation
265
+ */
266
+ width?: string;
267
+ /**
268
+ * Function to be called when the confirmation is dismissed
269
+ */
270
+ onDismiss?: (type: 'overlay' | 'button') => void;
271
+ /**
272
+ * Function to be called when the confirmation is confirmed
273
+ */
274
+ onConfirm?: () => void;
275
+ /**
276
+ * Confirm button text
277
+ */
278
+ confirmButtonText?: string;
279
+ /**
280
+ * Cancel button text
281
+ */
282
+ cancelButtonText?: string;
283
+ /**
284
+ * Styles for the overlay
285
+ */
286
+ bodyStyles?: React.CSSProperties;
287
+ /**
288
+ * Styles for the content
289
+ */
290
+ contentStyles?: React.CSSProperties;
291
+ /**
292
+ * Styles for the footer
293
+ */
294
+ footerStyles?: React.CSSProperties;
295
+ }
296
+
297
+ /**
298
+ * Confirmation component is used to show a confirmation dialog to the user. It is used to confirm an action before it is executed.
299
+ */
300
+ declare const Confirmation: ({ isOpen, title, description, onConfirm, onDismiss, cancelButtonText, children, cancelButtonDisabled, confirmButtonDisabled, confirmButtonText, bodyStyles, contentStyles, footerStyles, width, }: ConfirmationProps) => react__default.JSX.Element;
301
+
302
+ type DrawerSizeType = 'default' | 'medium' | 'small' | 'large' | 'x-large';
303
+ type DrawerPlacement = 'left' | 'right';
304
+ interface DrawerProps {
305
+ /**
306
+ * The children to be displayed in the drawer
307
+ */
308
+ children?: React.ReactNode | string;
309
+ /**
310
+ * Whether the drawer is open
311
+ */
312
+ isOpen?: boolean;
313
+ /**
314
+ * The placement of the drawer
315
+ */
316
+ placement?: DrawerPlacement;
317
+ /**
318
+ * The size of the drawer
319
+ */
320
+ size?: DrawerSizeType;
321
+ /**
322
+ * Whether the drawer is full height
323
+ */
324
+ isFullHeight?: boolean;
325
+ /**
326
+ * Should the drawer close when clicking outside
327
+ */
328
+ clickOutToClose?: boolean;
329
+ /**
330
+ * Should we hide the dismiss icon
331
+ */
332
+ hideDismissIcon?: boolean;
333
+ /**
334
+ * Custom class to be added to the drawer
335
+ */
336
+ customClass?: string;
337
+ /**
338
+ * Function to be called when the drawer is dismissed
339
+ */
340
+ onDismiss?: () => void;
341
+ }
342
+
343
+ /**
344
+ * Drawer component is used to show a drawer to the user. It is used to show additional information or actions. It can be used to show a menu, a form, or any other content.
345
+ */
346
+ declare const Drawer: ({ isOpen, children, hideDismissIcon, customClass, size, isFullHeight, placement, clickOutToClose, onDismiss, }: DrawerProps) => react__default.JSX.Element;
347
+
348
+ type DropdownTypes = 'button' | 'input';
349
+ type DefaultDropdownItem = {
350
+ [key: string]: any;
351
+ group?: string;
352
+ };
353
+ type PickedSelectProps = Pick<SelectProps, 'name' | 'disabled' | 'value'>;
354
+ interface DropdownProps<T extends DefaultDropdownItem = DefaultDropdownItem> extends PickedSelectProps {
355
+ /**
356
+ * The items to be displayed in the dropdown
357
+ */
358
+ items?: Array<T>;
359
+ /**
360
+ * The identifier for the items
361
+ */
362
+ itemIdentifier?: string;
363
+ isOpen?: SelectProps['open'];
364
+ defaultIsOpen?: SelectProps['defaultOpen'];
365
+ /**
366
+ * The selected item
367
+ */
368
+ defaultSelectedItem?: T | null;
369
+ /**
370
+ * Function to be called when the selected item changes
371
+ */
372
+ onChange?: (item: T | null) => void;
373
+ /**
374
+ * Fuction to give the string representation of the item
375
+ */
376
+ itemToString: (item: T, type?: 'list-item' | 'display' | 'downshift') => string;
377
+ /**
378
+ * Fuction to give the string representation of the item
379
+ */
380
+ itemComponent?: (item: T, props?: DropdownItemProps) => React.ReactNode | string;
381
+ /**
382
+ * The type of the dropdown
383
+ */
384
+ type?: DropdownTypes;
385
+ /**
386
+ * Is the dropdown read only
387
+ */
388
+ readOnly?: boolean;
389
+ /**
390
+ * Is the dropdown read only
391
+ */
392
+ showTick?: boolean;
393
+ /**
394
+ * The width of the dropdown
395
+ */
396
+ width?: string;
397
+ /**
398
+ * The key to be used for filtering
399
+ */
400
+ filterKey?: string;
401
+ /**
402
+ *
403
+ */
404
+ getCustomMessage?: (inoutValue: string) => string;
405
+ /**
406
+ *
407
+ */
408
+ emptyItemsText?: string;
409
+ /**
410
+ *
411
+ */
412
+ hideClear?: boolean;
413
+ /**
414
+ *
415
+ */
416
+ errorText?: string;
417
+ /**
418
+ *
419
+ */
420
+ className?: string;
421
+ /**
422
+ *
423
+ */
424
+ style?: React.CSSProperties;
425
+ /**
426
+ *
427
+ */
428
+ isErrored?: boolean;
429
+ /**
430
+ *
431
+ */
432
+ isRequired?: boolean;
433
+ /**
434
+ *
435
+ */
436
+ isMenuLoading?: boolean;
437
+ /**
438
+ *
439
+ */
440
+ onCustomValueAdd?: (item: {
441
+ inputValue: string;
442
+ customValues: boolean;
443
+ }) => void;
444
+ /**
445
+ *
446
+ */
447
+ customValues?: boolean;
448
+ /**
449
+ *
450
+ */
451
+ id?: string;
452
+ /**
453
+ *
454
+ */
455
+ label?: string;
456
+ /**
457
+ *
458
+ */
459
+ placeholder?: string;
460
+ /**
461
+ *
462
+ */
463
+ useSelectProps?: UseSelectProps<T>;
464
+ /**
465
+ *
466
+ */
467
+ useComboboxProps?: UseComboboxProps<T>;
468
+ }
469
+ type DropdownItemProps = SelectItemProps & {
470
+ showTick: boolean;
471
+ };
472
+
473
+ /**
474
+ * Dropdown displays a list or drop-down box that enables selection of an option or multiple options from an available list of values.
475
+ */
476
+ declare const Dropdown: <T extends DefaultDropdownItem>({ type, ...props }: DropdownProps<T>) => react__default.JSX.Element;
477
+ declare const Item: react__default.ForwardRefExoticComponent<_radix_ui_react_select.SelectItemProps & {
478
+ showTick: boolean;
479
+ } & react__default.RefAttributes<HTMLDivElement>>;
480
+
481
+ declare const ChevronUp: (props: react__default.SVGProps<SVGSVGElement>) => react__default.JSX.Element;
482
+
483
+ declare const Cross: (props: react__default.SVGProps<SVGSVGElement>) => react__default.JSX.Element;
484
+
485
+ declare const TickIcon: (props: react__default.SVGProps<SVGSVGElement>) => react__default.JSX.Element;
486
+
487
+ declare const Warning: (props: react__default.SVGProps<SVGSVGElement>) => react__default.JSX.Element;
488
+
489
+ declare const Minus: (props: react__default.SVGProps<SVGSVGElement>) => react__default.JSX.Element;
490
+
491
+ declare const MoreVertical: (props: react__default.SVGProps<SVGSVGElement>) => react__default.JSX.Element;
492
+
493
+ interface CommonProps {
494
+ /**
495
+ * Is this a required field?
496
+ */
497
+ isRequired?: boolean;
498
+ /**
499
+ * Is this a error field?
500
+ */
501
+ isErrored?: boolean;
502
+ /**
503
+ * Error text to be shown
504
+ */
505
+ errorText?: string;
506
+ /**
507
+ * Id of the button
508
+ */
509
+ id?: string;
510
+ /**
511
+ * Id of the button
512
+ */
513
+ label?: string;
514
+ /**
515
+ * Label of the button
516
+ */
517
+ inline?: boolean;
518
+ /**
519
+ * The max length of the input
520
+ */
521
+ maxLength?: number;
522
+ /**
523
+ * Whether to show character count
524
+ */
525
+ showCount?: boolean;
526
+ inputStyle?: React.CSSProperties;
527
+ startLabel?: React.ReactNode | any;
528
+ startAdornment?: React.ReactNode | any;
529
+ endLabel?: React.ReactNode | any;
530
+ endAdornment?: React.ReactNode | any;
531
+ labelProps?: LabelProps;
532
+ containerProps?: React.HTMLAttributes<HTMLDivElement>;
533
+ }
534
+ interface InputProps extends CommonProps, React.InputHTMLAttributes<HTMLInputElement> {
535
+ ref?: React.Ref<HTMLInputElement>;
536
+ }
537
+ interface TextAreaProps extends CommonProps, React.TextareaHTMLAttributes<HTMLTextAreaElement> {
538
+ ref?: React.Ref<HTMLTextAreaElement>;
539
+ }
540
+
541
+ /**
542
+ * Input displays a single-line input box on the user interface and enables assigning a value to it. It is used to take user input for small text data.
543
+ */
544
+ declare const Input: react__default.ForwardRefExoticComponent<Omit<InputProps, "ref"> & react__default.RefAttributes<HTMLInputElement>>;
545
+
546
+ /**
547
+ * TextArea displays a multi-line input box on the user interface and enables assigning a value to it. It is used to take user input for large text data.
548
+ */
549
+ declare const TextArea: ({ label, inline, startLabel, startAdornment, endLabel, endAdornment, isRequired, isErrored, showCount, inputStyle, style, errorText, ref, maxLength, ...props }: TextAreaProps) => react__default.JSX.Element;
550
+
551
+ type LoaderSizes = 'mini' | 'small' | 'medium' | 'big';
552
+ type LoaderSpeeds = 'slow' | 'medium' | 'fast';
553
+ type LoaderPropTypes = {
554
+ /**
555
+ * Size of Select input
556
+ */
557
+ size?: LoaderSizes;
558
+ /**
559
+ * Speed of Select input
560
+ */
561
+ speed?: LoaderSpeeds;
562
+ };
563
+
564
+ /**
565
+ * Loader Component can be used to indicate loading of a Page / Section of a page.
566
+ */
567
+ declare const Loader: (props: LoaderPropTypes) => react__default.JSX.Element;
568
+
569
+ interface DefaultMenuItemProps {
570
+ disabled?: boolean;
571
+ [key: string]: any;
572
+ }
573
+ type MenuProps<T extends DefaultMenuItemProps = DefaultMenuItemProps> = {
574
+ side?: PopperContentProps['side'];
575
+ sideOffset?: PopperContentProps['sideOffset'];
576
+ align?: PopperContentProps['align'];
577
+ alignOffset?: PopperContentProps['alignOffset'];
578
+ arrowPadding?: PopperContentProps['arrowPadding'];
579
+ avoidCollisions?: PopperContentProps['avoidCollisions'];
580
+ /**
581
+ * value of menu
582
+ */
583
+ value?: T;
584
+ /**
585
+ * Called when a menu item is selected
586
+ */
587
+ onSelect?: (option: T) => void;
588
+ closeMenuCallback?: () => void;
589
+ itemComponent?: (item: T, props?: MenuItemProps) => React.ReactNode | string;
590
+ /**
591
+ * options for menu button
592
+ */
593
+ options?: Array<T>;
594
+ /**
595
+ * The children or label
596
+ */
597
+ trigger: React.ReactNode | string;
598
+ /**
599
+ * Is the button inline
600
+ * @deprecated
601
+ */
602
+ highlightedIndex?: number | null;
603
+ /**
604
+ * id Accessor of menu
605
+ */
606
+ idAccessor?: string;
607
+ /**
608
+ * name Accessor of menu
609
+ */
610
+ nameAccessor?: string;
611
+ /**
612
+ * Is the button inline
613
+ */
614
+ isOpen?: boolean;
615
+ /**
616
+ * should show the Arrow?
617
+ */
618
+ showArrow?: boolean;
619
+ };
620
+ type MenuItemProps = MenuItemProps$1 & {
621
+ isSelected?: boolean;
622
+ };
623
+
624
+ /**
625
+ * Menu is a container for Menu Item components.
626
+ * Menu item is a component to define each row of a menu components. It takes in prefix, suffix and default slot to place content either at beginning or end or middle of the row respectively.
627
+ */
628
+ declare const Menu: <T extends DefaultMenuItemProps>(props: MenuProps<T>) => react__default.JSX.Element;
629
+
630
+ declare const DropdownMenuItem: styled_components.IStyledComponent<"web", styled_components_dist_types.Substitute<Omit<DropdownMenu.DropdownMenuItemProps & react.RefAttributes<HTMLDivElement>, "ref"> & {
631
+ ref?: ((instance: HTMLDivElement | null) => void) | react.RefObject<HTMLDivElement> | null | undefined;
632
+ }, {
633
+ isSelected?: boolean | undefined;
634
+ disabled?: boolean | undefined;
635
+ }>> & Omit<react.ForwardRefExoticComponent<DropdownMenu.DropdownMenuItemProps & react.RefAttributes<HTMLDivElement>>, keyof react.Component<any, {}, any>>;
636
+
637
+ type ModalAlignType = 'top' | 'center' | 'bottom';
638
+ type ModalPositionType = 'left' | 'center' | 'right';
639
+ type ModalSizeType = 'default' | 'medium' | 'small' | 'large' | 'x-large';
640
+ interface ModalProps {
641
+ /**
642
+ * The children or label
643
+ */
644
+ children?: React.ReactNode | string;
645
+ /**
646
+ * Is the button inline
647
+ */
648
+ isOpen?: boolean;
649
+ /**
650
+ * Is the button inline
651
+ */
652
+ fullWidth?: boolean;
653
+ /**
654
+ * Is the button inline
655
+ */
656
+ align?: ModalAlignType;
657
+ /**
658
+ * Is the button inline
659
+ */
660
+ position?: ModalPositionType;
661
+ /**
662
+ * Is the button inline
663
+ */
664
+ size?: ModalSizeType;
665
+ /**
666
+ * How large should the button be?
667
+ */
668
+ onDismiss?: () => void;
669
+ /**
670
+ * The children or label
671
+ */
672
+ customClass?: string;
673
+ /**
674
+ * The children or label
675
+ */
676
+ customModalContentStyles?: React.CSSProperties;
677
+ }
678
+
679
+ /**
680
+ * Modals are used as an overlay to display information. It can also be used as confirm boxes to take user inputs.
681
+ */
682
+ declare const Modal: ({ isOpen, children, align, customClass, fullWidth, customModalContentStyles, onDismiss, position, size, }: ModalProps) => react__default.JSX.Element;
683
+
684
+ type DefaultMultiSelectDropdownItem = {
685
+ [key: string]: any;
686
+ };
687
+ interface MultiSelectDropdownProps<T extends DefaultMultiSelectDropdownItem = DefaultMultiSelectDropdownItem> {
688
+ /**
689
+ * dropdown item content
690
+ */
691
+ items?: Array<T>;
692
+ /**
693
+ * Id of the item
694
+ */
695
+ itemIdentifier?: string;
696
+ /**
697
+ * selected item of dropdown
698
+ */
699
+ selectedItem?: T[];
700
+ /**
701
+ * Called when select an option or input value change
702
+ */
703
+ onChange?: (item: T[]) => void;
704
+ itemToString?: (item: T, type?: 'list-item' | 'display' | 'downshift') => string;
705
+ /**
706
+ * Fuction to give the string representation of the item
707
+ */
708
+ itemComponent?: (item: T) => React.ReactNode | string;
709
+ /**
710
+ * Is the dropdown readonly
711
+ */
712
+ readOnly?: boolean;
713
+ /**
714
+ * Whether disabled select
715
+ */
716
+ disabled?: boolean;
717
+ /**
718
+ * name of the drowpdown
719
+ */
720
+ name?: string;
721
+ /**
722
+ * width of the multi select drowpdown
723
+ */
724
+ width?: string;
725
+ filterKey?: string;
726
+ getCustomMessage?: (inoutValue: string) => string;
727
+ /**
728
+ * Empty items text box
729
+ */
730
+ emptyItemsText?: string;
731
+ /**
732
+ * Whether to allow hide or clear when click
733
+ */
734
+ hideClear?: boolean;
735
+ /**
736
+ * Error text to be shown
737
+ */
738
+ errorText?: string;
739
+ /**
740
+ * Is this a error field?
741
+ */
742
+ isErrored?: boolean;
743
+ /**
744
+ * Is this a required field?
745
+ */
746
+ isRequired?: boolean;
747
+ /**
748
+ * Is menu loading?
749
+ */
750
+ isMenuLoading?: boolean;
751
+ inputValue?: string | null;
752
+ handleInputChange?: (inputValue: string) => void;
753
+ onCustomValueAdd?: (item: {
754
+ inputValue: string;
755
+ customValues: boolean;
756
+ }) => void;
757
+ removeSelectedItem?: (item: T, index: number) => void;
758
+ /**
759
+ * Is this custom value
760
+ */
761
+ customValues?: boolean;
762
+ /**
763
+ * id of the drowpdown
764
+ */
765
+ id?: string;
766
+ /**
767
+ * label for the drowpdown
768
+ */
769
+ label?: string;
770
+ placeholder?: string;
771
+ useMultipleSelectionProps?: UseMultipleSelectionProps<T>;
772
+ useComboboxProps?: UseComboboxProps<T>;
773
+ InputProps?: React.InputHTMLAttributes<HTMLInputElement>;
774
+ onBackSpace?: () => void;
775
+ maxAllowedLength?: number;
776
+ isDynamicMenu?: boolean;
777
+ minAllowedLength?: number;
778
+ locale?: {
779
+ createText: string;
780
+ deleteText: string;
781
+ };
782
+ }
783
+
784
+ /**
785
+ * MultiSelectDropdown displays a list or drop-down box that enables selection of an option or multiple options from an available list of values.
786
+ */
787
+ declare const MultiSelectDropdown: <T extends DefaultMultiSelectDropdownItem>({ itemIdentifier, label, id, items, onChange, placeholder, readOnly, disabled, isRequired, itemToString, name, filterKey, width, useComboboxProps, useMultipleSelectionProps, emptyItemsText, getCustomMessage, onCustomValueAdd, customValues, inputValue: iV, hideClear, removeSelectedItem: rSelectedItem, selectedItem, handleInputChange, isErrored, isMenuLoading, errorText, InputProps, itemComponent, isDynamicMenu, locale, maxAllowedLength, minAllowedLength, onBackSpace, }: MultiSelectDropdownProps<T>) => react__default.JSX.Element;
788
+
789
+ type DefaultProps = {
790
+ /**
791
+ * Is this a required field?
792
+ */
793
+ isRequired?: boolean;
794
+ /**
795
+ * Is this a error field?
796
+ */
797
+ isErrored?: boolean;
798
+ /**
799
+ * Error text to be shown
800
+ */
801
+ errorText?: string;
802
+ /**
803
+ * Id of the date picker
804
+ */
805
+ id?: string;
806
+ /**
807
+ * name of the date picker
808
+ */
809
+ name?: string;
810
+ /**
811
+ * label for the picker
812
+ */
813
+ label?: string;
814
+ placeholder?: string;
815
+ /**
816
+ * Whether disabled select
817
+ */
818
+ disabled?: boolean;
819
+ };
820
+ type DatePickerProps = DefaultProps & Partial<DateInput3Props> & {
821
+ displayFormat?: string;
822
+ };
823
+ type DateRangePickerProps = DefaultProps & Partial<DateRangeInput3Props> & {
824
+ displayFormat?: string;
825
+ };
826
+ type DateTimePickerProps = DefaultProps & Partial<DateInput3Props> & {
827
+ displayFormat?: string;
828
+ };
829
+ type DateTimeRangePickerProps = DefaultProps & Partial<DateRangeInput3Props> & {
830
+ displayFormat?: string;
831
+ };
832
+ type TimePickerProps = DefaultProps & {
833
+ displayFormat?: string;
834
+ value?: string;
835
+ onChange?: (dateString: string | null) => void;
836
+ useAmPm?: boolean;
837
+ precision?: TimePrecision;
838
+ };
839
+
840
+ /**
841
+ * Datepicker displays an input box with a calendar that enables selecting a date or date range. The values preselected in the input box and calendar are based on the fw-datepicker attribute values.
842
+ * All the date formats passed as attribute's values must be valid ISO Date format (opens new window).
843
+ */
844
+ declare const DatePicker: (props: DatePickerProps) => react__default.JSX.Element;
845
+
846
+ /**
847
+ * DateTimePicker displays an input box with a calendar that enables selecting a date or date range. The values preselected in the input box and calendar are based on the fw-datepicker attribute values.
848
+ * All the date formats passed as attribute's values must be valid ISO Date format (opens new window).
849
+ */
850
+ declare const DateTimePicker: (props: DateTimePickerProps) => react__default.JSX.Element;
851
+
852
+ /**
853
+ * DateRangePicker displays an input box with a calendar that enables selecting a date or date range. The values preselected in the input box and calendar are based on the fw-datepicker attribute values.
854
+ * All the date formats passed as attribute's values must be valid ISO Date format (opens new window).
855
+ */
856
+ declare const DateRangePicker: (props: DateRangePickerProps) => react__default.JSX.Element;
857
+
858
+ /**
859
+ * DateTimeRangePicker displays an input box with a calendar that enables selecting a date or date range. The values preselected in the input box and calendar are based on the fw-datepicker attribute values.
860
+ * All the date formats passed as attribute's values must be valid ISO Date format (opens new window).
861
+ */
862
+ declare const DateTimeRangePicker: (props: DateTimeRangePickerProps) => react__default.JSX.Element;
863
+
864
+ /**
865
+ * TimePicker displays an input box with a calendar that enables selecting a date or date range. The values preselected in the input box and calendar are based on the fw-datepicker attribute values.
866
+ */
867
+ declare const TimePicker: (props: TimePickerProps) => react__default.JSX.Element;
868
+
869
+ type Origin = {
870
+ vertical?: 'top' | 'center' | 'bottom';
871
+ horizontal?: 'left' | 'center' | 'right';
872
+ };
873
+ interface PopoverProps {
874
+ /**
875
+ * How large should the button be?
876
+ */
877
+ onClose?: (event?: React.MouseEvent<HTMLDivElement, MouseEvent>) => void;
878
+ /**
879
+ * Which variant the button should be
880
+ */
881
+ id?: string;
882
+ /**
883
+ * Which variant the button should be
884
+ */
885
+ disabled?: boolean;
886
+ /**
887
+ * The children or label
888
+ */
889
+ trigger: React.ReactNode | string;
890
+ /**
891
+ * The children or label
892
+ */
893
+ children?: React.ReactNode | string;
894
+ /**
895
+ * Is the button inline
896
+ */
897
+ hoverOutToClose?: boolean;
898
+ /**
899
+ * Is the button inline
900
+ */
901
+ hoverToOpen?: boolean;
902
+ /**
903
+ * Is the button inline
904
+ */
905
+ arrow?: boolean;
906
+ /**
907
+ * Is the button inline
908
+ */
909
+ avoidCollisions?: boolean;
910
+ /**
911
+ * Is the button inline
912
+ */
913
+ side?: Popover$1.PopperContentProps['side'];
914
+ /**
915
+ * Is the button inline
916
+ */
917
+ align?: Popover$1.PopperContentProps['align'];
918
+ /**
919
+ * Is the button inline
920
+ * @deprecated
921
+ */
922
+ anchorOrigin?: Origin;
923
+ /**
924
+ * Is the button inline
925
+ * * @deprecated
926
+ */
927
+ transformOrigin?: Origin;
928
+ /**
929
+ * Is the button inline
930
+ * * @deprecated
931
+ */
932
+ clickOutToClose?: boolean;
933
+ /**
934
+ * Is the button inline
935
+ * * @deprecated
936
+ */
937
+ autoCloseDuration?: number;
938
+ }
939
+
940
+ /**
941
+ * Popover need two slots popover-trigger and popover-content. By default on clicking the trigger the content will be displayed. The props can be used to change the position of the content, width of the component and the distance between the trigger and the content.
942
+ */
943
+ declare const Popover: ({ children, trigger, arrow, hoverOutToClose, align, hoverToOpen, avoidCollisions, side: s, disabled, anchorOrigin, autoCloseDuration, clickOutToClose, transformOrigin, }: PopoverProps) => react__default.JSX.Element;
944
+
945
+ declare const PopoverClose: styled_components.IStyledComponent<"web", styled_components_dist_types.FastOmit<Omit<Popover$1.PopoverCloseProps & react.RefAttributes<HTMLButtonElement>, "ref"> & {
946
+ ref?: ((instance: HTMLButtonElement | null) => void) | react.RefObject<HTMLButtonElement> | null | undefined;
947
+ }, never>> & Omit<react.ForwardRefExoticComponent<Popover$1.PopoverCloseProps & react.RefAttributes<HTMLButtonElement>>, keyof react.Component<any, {}, any>>;
948
+
949
+ type RadioProps = Pick<RadioGroupProps$1, 'name' | 'disabled' | 'dir'> & Omit<React.HTMLAttributes<HTMLDivElement>, 'value' | 'defaultValue'> & {
950
+ /**
951
+ * Is the Radio button selected
952
+ */
953
+ checked?: boolean;
954
+ /**
955
+ * Whether disabled select
956
+ */
957
+ readOnly?: boolean;
958
+ /**
959
+ * Whether disabled select
960
+ */
961
+ isRequired?: boolean;
962
+ /**
963
+ * label for the radio button
964
+ */
965
+ label?: string;
966
+ };
967
+ interface RadioItemProps {
968
+ [key: string]: any;
969
+ }
970
+ type RadioGroupProps<T extends RadioItemProps = RadioItemProps> = Pick<RadioGroupProps$1, 'name' | 'disabled' | 'dir' | 'value' | 'defaultValue'> & Omit<React.HTMLAttributes<HTMLDivElement>, 'value' | 'defaultValue'> & {
971
+ /**
972
+ * Select options
973
+ */
974
+ options?: Array<T>;
975
+ /**
976
+ * Id accessor of radio button
977
+ */
978
+ idAccessor?: string;
979
+ /**
980
+ * Name accesssor of radio button
981
+ */
982
+ nameAccessor?: string;
983
+ /**
984
+ * Function to be called when the selected item changes
985
+ */
986
+ onChange?: RadioGroupContextValue['onValueChange'];
987
+ /**
988
+ * Whether disabled select
989
+ */
990
+ isRequired?: boolean;
991
+ /**
992
+ * Whether disabled select
993
+ */
994
+ readOnly?: boolean;
995
+ /**
996
+ * The description of the content
997
+ */
998
+ label?: string;
999
+ errorText?: string;
1000
+ isErrored?: boolean;
1001
+ };
1002
+
1003
+ /**
1004
+ * Radio displays a radio button on the user interface and enables assigning a state (selected or deselected) to it. In the selected state, the button displayed is highlighted. fw-radio provides child elements for fw-radio-group, to populate the Radio Group component’s list.
1005
+ */
1006
+ declare const Radio: ({ checked, className, disabled, id, isRequired, label, name, readOnly, ...htmlAttributes }: RadioProps) => react__default.JSX.Element;
1007
+
1008
+ /**
1009
+ * RadioGroup displays a group of options with radio buttons and enables selection of one option from the list.
1010
+ */
1011
+ declare const RadioGroup: ({ options, defaultValue, idAccessor, nameAccessor, onChange, className, id, isErrored, errorText, disabled, isRequired, label, readOnly, value, ...props }: RadioGroupProps) => react__default.JSX.Element;
1012
+
1013
+ type ReorderItemType = {
1014
+ id: string | number;
1015
+ [key: string]: any;
1016
+ };
1017
+ type ReorderProps<T extends ReorderItemType = ReorderItemType> = {
1018
+ /**
1019
+ * Items of reorder
1020
+ */
1021
+ items: T[];
1022
+ /**
1023
+ * Class name of reorder
1024
+ */
1025
+ className?: string;
1026
+ /**
1027
+ * Whether disabled select
1028
+ */
1029
+ disabled?: boolean;
1030
+ /**
1031
+ * should show the Dragger?
1032
+ */
1033
+ showDragger?: boolean;
1034
+ customFilter?: (item: T) => boolean;
1035
+ onReorder?: (items: T[]) => void;
1036
+ customRender: (item: T, index: number, listeners?: DraggableSyntheticListeners) => React.ReactNode;
1037
+ };
1038
+
1039
+ /**
1040
+ * Reorder is a component that enables reordering of items in a list. It provides a drag handle to reorder the items.
1041
+ */
1042
+ declare const Reorder: <T extends ReorderItemType = ReorderItemType>(props: ReorderProps<T>) => react__default.JSX.Element;
1043
+
1044
+ type RowData = {
1045
+ [key in string]: any;
1046
+ };
1047
+ interface FuiTableColumnType<T extends RowData> {
1048
+ id: string;
1049
+ Header: string;
1050
+ accessorFn: (row: T) => React.ReactNode | string | null;
1051
+ disableSortBy?: boolean;
1052
+ }
1053
+ interface TableProps<T extends RowData> {
1054
+ /**
1055
+ * How large should the button be?
1056
+ */
1057
+ data: CoreOptions<T>['data'];
1058
+ columns: FuiTableColumnType<T>[];
1059
+ count?: number;
1060
+ pageSize?: number;
1061
+ pageIndex?: number;
1062
+ enablePreviousPage?: boolean;
1063
+ enableNextPage?: boolean;
1064
+ isLoading?: boolean;
1065
+ isFetching?: boolean;
1066
+ showFooter?: boolean;
1067
+ hideColumnSettings?: boolean;
1068
+ hideTableOnEmpty?: boolean;
1069
+ hideTopPagination?: boolean;
1070
+ hideFilters?: boolean;
1071
+ showTableOnLoading?: boolean;
1072
+ hideLoaderOnTopPagination?: boolean;
1073
+ hideActions?: boolean;
1074
+ hideSelectAllInTable?: boolean;
1075
+ hideBottomPagination?: boolean;
1076
+ disableRowSelect?: boolean;
1077
+ infoComponent?: React.ReactElement;
1078
+ filterComponent?: React.ReactElement;
1079
+ emptyComponent?: React.ReactElement;
1080
+ actionComponent?: React.ReactElement;
1081
+ loadingComponent?: React.ReactElement;
1082
+ headerComponent?: React.ReactElement;
1083
+ onNextPageClick?: () => void;
1084
+ onPreviousPageClick?: () => void;
1085
+ onSelectAllRows?: (checked: boolean) => void;
1086
+ onRowSelect?: (row: T, checked: boolean) => void;
1087
+ rowMenuOptions?: (rowData: T) => MenuItemProps[];
1088
+ onMenuOptionSelect?: (optionId: string, row: T) => void;
1089
+ onRowClick?: (row: T, column: ColumnDef<T, unknown>) => void;
1090
+ dataKey?: string;
1091
+ rowPropGetter?: (row: T) => React.HTMLAttributes<HTMLTableRowElement>;
1092
+ cellPropGetter?: (cell: Cell<T, unknown>) => React.HTMLAttributes<HTMLTableCellElement>;
1093
+ /**
1094
+ * @deprecated
1095
+ */
1096
+ tableOptions?: any;
1097
+ /**
1098
+ * @deprecated
1099
+ */
1100
+ loaderStyles?: React.CSSProperties;
1101
+ setPageIndex?: (pageIndex: number) => void | React.Dispatch<React.SetStateAction<number>>;
1102
+ hiddenColumns?: string[];
1103
+ setHiddenColumns?: (hiddenColumns: string[]) => void | React.Dispatch<React.SetStateAction<string[]>>;
1104
+ columnOrder?: string[];
1105
+ setColumnOrder?: (columnOrder: string[]) => void | React.Dispatch<React.SetStateAction<string[]>>;
1106
+ selectedRowIds?: RowSelectionState;
1107
+ setSelectedRowIds?: (selectedRowIds: RowSelectionState) => void | React.Dispatch<React.SetStateAction<RowSelectionState>>;
1108
+ }
1109
+
1110
+ /**
1111
+ * Table component is used to display data in a tabular format. It is used to show data in a structured manner. It can be used to show data in a grid format.
1112
+ */
1113
+ declare const Table: <T extends RowData>(props: TableProps<T>) => react__default.JSX.Element;
1114
+
1115
+ declare const TabsRoot: styled_components.IStyledComponent<"web", styled_components_dist_types.FastOmit<Omit<Tabs$1.TabsProps & react.RefAttributes<HTMLDivElement>, "ref"> & {
1116
+ ref?: ((instance: HTMLDivElement | null) => void) | react.RefObject<HTMLDivElement> | null | undefined;
1117
+ }, never>> & Omit<react.ForwardRefExoticComponent<Tabs$1.TabsProps & react.RefAttributes<HTMLDivElement>>, keyof react.Component<any, {}, any>>;
1118
+ declare const TabsContent: styled_components.IStyledComponent<"web", styled_components_dist_types.FastOmit<Omit<Tabs$1.TabsContentProps & react.RefAttributes<HTMLDivElement>, "ref"> & {
1119
+ ref?: ((instance: HTMLDivElement | null) => void) | react.RefObject<HTMLDivElement> | null | undefined;
1120
+ }, never>> & Omit<react.ForwardRefExoticComponent<Tabs$1.TabsContentProps & react.RefAttributes<HTMLDivElement>>, keyof react.Component<any, {}, any>>;
1121
+ declare const TabsList: styled_components.IStyledComponent<"web", styled_components_dist_types.FastOmit<Omit<Tabs$1.TabsListProps & react.RefAttributes<HTMLDivElement>, "ref"> & {
1122
+ ref?: ((instance: HTMLDivElement | null) => void) | react.RefObject<HTMLDivElement> | null | undefined;
1123
+ }, never>> & Omit<react.ForwardRefExoticComponent<Tabs$1.TabsListProps & react.RefAttributes<HTMLDivElement>>, keyof react.Component<any, {}, any>>;
1124
+ declare const TabsTrigger: styled_components.IStyledComponent<"web", styled_components_dist_types.FastOmit<Omit<Tabs$1.TabsTriggerProps & react.RefAttributes<HTMLButtonElement>, "ref"> & {
1125
+ ref?: ((instance: HTMLButtonElement | null) => void) | react.RefObject<HTMLButtonElement> | null | undefined;
1126
+ }, never>> & Omit<react.ForwardRefExoticComponent<Tabs$1.TabsTriggerProps & react.RefAttributes<HTMLButtonElement>>, keyof react.Component<any, {}, any>>;
1127
+
1128
+ interface TabsItemProps {
1129
+ id: string;
1130
+ name: string;
1131
+ hide?: boolean;
1132
+ disabled?: boolean;
1133
+ [key: string]: any;
1134
+ }
1135
+ type TabsProps<T extends TabsItemProps = TabsItemProps> = {
1136
+ /**
1137
+ * options for Tabs
1138
+ */
1139
+ options?: Array<T>;
1140
+ renderTabsContent?: (tabOption: T) => React.ReactNode;
1141
+ /**
1142
+ * Id accessor of tabes
1143
+ */
1144
+ idAccessor?: string;
1145
+ /**
1146
+ * Name accessor of tabes
1147
+ */
1148
+ nameAccessor?: string;
1149
+ ref?: React.RefObject<HTMLDivElement>;
1150
+ /**
1151
+ * value for tabs
1152
+ */
1153
+ value?: TabsProps$1['value'];
1154
+ /**
1155
+ * default value of tabes
1156
+ */
1157
+ defaultValue?: TabsProps$1['defaultValue'];
1158
+ /**
1159
+ * Function to be called when the selected item changes
1160
+ */
1161
+ onChange?: TabsProps$1['onValueChange'];
1162
+ };
1163
+
1164
+ /**
1165
+ * Tabs component is used to show a set of tabs to the user. It is used to show different sections of content in a single view. It can be used to show different categories of content.
1166
+ */
1167
+ declare const Tabs: ({ options, idAccessor, nameAccessor, onChange, defaultValue, renderTabsContent, value, }: TabsProps) => react__default.JSX.Element;
1168
+
1169
+ interface TagProps {
1170
+ /**
1171
+ * State of the tag
1172
+ */
1173
+ state?: 'error' | 'default' | 'transparent';
1174
+ /**
1175
+ * Show border around the tag
1176
+ */
1177
+ showBorder?: boolean;
1178
+ /**
1179
+ * Image source for the avatar
1180
+ */
1181
+ avatarImgSrc?: string;
1182
+ /**
1183
+ * Image alt for the avatar
1184
+ */
1185
+ avatarImgAlt?: string;
1186
+ /**
1187
+ * Text for the avatar
1188
+ */
1189
+ avatarText?: string;
1190
+ /**
1191
+ * Function to be called when the tag is closed
1192
+ */
1193
+ onClose?: React.MouseEventHandler<HTMLButtonElement>;
1194
+ /**
1195
+ * Children of the tag
1196
+ */
1197
+ children?: React.ReactNode;
1198
+ /**
1199
+ * Props for the icon
1200
+ */
1201
+ iconProps?: React.ButtonHTMLAttributes<HTMLButtonElement>;
1202
+ style?: React.CSSProperties;
1203
+ }
1204
+
1205
+ /**
1206
+ * Tag component is used to show a tag to the user. It is used to show a label or a category
1207
+ */
1208
+ declare const Tag: ({ children, iconProps, onClose, showBorder, avatarImgAlt, avatarImgSrc, avatarText, style, state, }: TagProps) => react__default.JSX.Element;
1209
+
1210
+ type TypographyWeightType = 'regular' | 'bold' | 'semi-bold';
1211
+ type TypographyVariantType = 'primary' | 'secondary' | 'heading' | 'heading1' | 'heading2' | 'heading3' | 'heading4' | 'caption';
1212
+ interface TypographyProps extends React.HtmlHTMLAttributes<HTMLSpanElement> {
1213
+ /**
1214
+ * The children or label
1215
+ */
1216
+ children?: React.ReactNode | string;
1217
+ variant?: TypographyVariantType;
1218
+ weight?: TypographyWeightType;
1219
+ }
1220
+
1221
+ type BreakpointKeys = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
1222
+ type UiUnits = 'px' | 'rem' | 'em' | '%';
1223
+ interface Breakpoints {
1224
+ keys: BreakpointKeys[];
1225
+ values: Record<BreakpointKeys, number>;
1226
+ unit: UiUnits;
1227
+ }
1228
+ interface TextColorSemantics {
1229
+ success: string;
1230
+ warning: string;
1231
+ error: string;
1232
+ info: string;
1233
+ }
1234
+ interface TextColors {
1235
+ primary: string;
1236
+ link: string;
1237
+ secondary: string;
1238
+ disabled: string;
1239
+ placeholder: string;
1240
+ error: string;
1241
+ inverse: string;
1242
+ semantic: TextColorSemantics;
1243
+ }
1244
+ interface FillColors {
1245
+ base: string;
1246
+ medium: string;
1247
+ dark: string;
1248
+ surface: string;
1249
+ inverse: string;
1250
+ hover: string;
1251
+ disabled: string;
1252
+ hilight: string;
1253
+ }
1254
+ interface SemanticColorsType {
1255
+ bg: string;
1256
+ border: string;
1257
+ }
1258
+ interface SemanticColors {
1259
+ error: SemanticColorsType;
1260
+ warning: SemanticColorsType;
1261
+ info: SemanticColorsType;
1262
+ success: SemanticColorsType;
1263
+ }
1264
+ interface BorderColors {
1265
+ light: string;
1266
+ normal: string;
1267
+ divider: string;
1268
+ hover: string;
1269
+ active: string;
1270
+ disabled: string;
1271
+ error: string;
1272
+ }
1273
+ interface CommonColors {
1274
+ accent: string;
1275
+ black: string;
1276
+ white: string;
1277
+ }
1278
+ interface Colors {
1279
+ common: CommonColors;
1280
+ text: TextColors;
1281
+ fill: FillColors;
1282
+ semantic: SemanticColors;
1283
+ border: BorderColors;
1284
+ shadow: string;
1285
+ scrim: string;
1286
+ }
1287
+ interface BaseTypography {
1288
+ fontSize?: React.CSSProperties['fontSize'];
1289
+ fontWeight?: React.CSSProperties['fontWeight'];
1290
+ lineHeight?: React.CSSProperties['lineHeight'];
1291
+ }
1292
+ interface FuiTypography {
1293
+ fontFamily: React.CSSProperties['fontFamily'];
1294
+ fontWeight: Record<TypographyWeightType, React.CSSProperties['fontWeight']>;
1295
+ primary: BaseTypography;
1296
+ secondary: BaseTypography;
1297
+ heading: BaseTypography;
1298
+ heading4: BaseTypography;
1299
+ heading3: BaseTypography;
1300
+ heading2: BaseTypography;
1301
+ heading1: BaseTypography;
1302
+ caption: BaseTypography;
1303
+ }
1304
+ interface Easing {
1305
+ easeInOut: string;
1306
+ easeOut: string;
1307
+ easeIn: string;
1308
+ sharp: string;
1309
+ }
1310
+ interface Duration {
1311
+ short: string;
1312
+ standard: string;
1313
+ complex: string;
1314
+ }
1315
+ interface Transitions {
1316
+ easing: Easing;
1317
+ duration: Duration;
1318
+ }
1319
+ interface ZIndex {
1320
+ mobileStepper: number;
1321
+ fab: number;
1322
+ speedDial: number;
1323
+ appBar: number;
1324
+ drawer: number;
1325
+ modal: number;
1326
+ snackbar: number;
1327
+ tooltip: number;
1328
+ }
1329
+ interface FreemiumUiTheme {
1330
+ mode: 'light' | 'dark';
1331
+ breakpoints: Breakpoints;
1332
+ colors: Colors;
1333
+ typography: FuiTypography;
1334
+ shadows?: string[] | null;
1335
+ transitions: Transitions;
1336
+ zIndex: ZIndex;
1337
+ components: any;
1338
+ }
1339
+
1340
+ type ThemeProviderType<Theme> = React.ComponentType<{
1341
+ children: React.ReactNode;
1342
+ theme: Theme;
1343
+ }>;
1344
+
1345
+ declare const ThemeProvider: ThemeProviderType<FreemiumUiTheme>;
1346
+
1347
+ type ToastProviderProps = {
1348
+ children: react__default.ReactNode;
1349
+ };
1350
+ declare const ToastProvider: (props: ToastProviderProps) => react__default.JSX.Element;
1351
+
1352
+ type ToastTypes = 'success' | 'warning' | 'error' | 'info';
1353
+ interface ToastType {
1354
+ /**
1355
+ * How large should the button be?
1356
+ */
1357
+ text?: string | React.ReactNode;
1358
+ /**
1359
+ * How large should the button be?
1360
+ */
1361
+ type?: ToastTypes;
1362
+ /**
1363
+ * How large should the button be?
1364
+ */
1365
+ delay?: number;
1366
+ /**
1367
+ * How large should the button be?
1368
+ */
1369
+ customIcon?: React.ReactNode;
1370
+ /**
1371
+ * How large should the button be?
1372
+ */
1373
+ fixed?: boolean;
1374
+ /**
1375
+ * How large should the button be?
1376
+ */
1377
+ showProgress?: boolean;
1378
+ }
1379
+ type ToastWithID = ToastType & {
1380
+ id: string;
1381
+ };
1382
+ type ToastItemProps = ToastWithID & {
1383
+ index: number;
1384
+ };
1385
+ type UpdateToastsFunction<T> = (fn: (toasts: Array<T>) => Array<T>) => void;
1386
+ interface ToastContextType {
1387
+ toasts: Array<ToastWithID>;
1388
+ windowState: 'focus' | 'blur';
1389
+ addToast: (toast: ToastType) => void;
1390
+ updateToasts: (fn: (oldToasts: ToastWithID[]) => ToastWithID[]) => void;
1391
+ }
1392
+
1393
+ /**
1394
+ * useToasts is a custom hook that returns the toasts and a function to add a new toast.
1395
+ */
1396
+ declare const useToasts: () => [ToastWithID[], (t: ToastType) => void];
1397
+
1398
+ type ToggleSizes = 'sm' | 'md' | 'lg';
1399
+ interface ToggleProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
1400
+ /**
1401
+ * The position of the tooltip
1402
+ */
1403
+ on?: boolean;
1404
+ handleChange?: (on: boolean) => void;
1405
+ /**
1406
+ * Is the button inline
1407
+ */
1408
+ size?: ToggleSizes;
1409
+ /**
1410
+ * Is hasIcon enabled?
1411
+ */
1412
+ hasIcon?: boolean;
1413
+ thumbProps?: React.HTMLAttributes<HTMLSpanElement>;
1414
+ /**
1415
+ * Is this a required field?
1416
+ */
1417
+ isRequired?: boolean;
1418
+ /**
1419
+ * Is this a error field?
1420
+ */
1421
+ isErrored?: boolean;
1422
+ }
1423
+
1424
+ /**
1425
+ * Toggle component is used to show a toggle to the user. It is used to show a switch to the user. It can be used to show a switch to the user.
1426
+ */
1427
+ declare const Toggle: ({ handleChange, hasIcon, on, isErrored, isRequired, size, thumbProps, ...rest }: ToggleProps) => react__default.JSX.Element;
1428
+
1429
+ type TooltipPosition = 'top' | 'top-start' | 'top-end' | 'bottom' | 'bottom-start' | 'bottom-end' | 'left' | 'left-start' | 'left-end' | 'right' | 'right-start' | 'right-end';
1430
+ type TooltipSide = 'top' | 'right' | 'bottom' | 'left';
1431
+ type TooltipAlign = 'start' | 'end' | 'center';
1432
+ interface TooltipProps {
1433
+ /**
1434
+ * HTML to be rendered in the tooltip
1435
+ */
1436
+ html?: React.ReactElement<any, string | React.JSXElementConstructor<any>>;
1437
+ /**
1438
+ * String to be rendered in the tooltip
1439
+ */
1440
+ label?: string;
1441
+ /**
1442
+ * The position of the tooltip
1443
+ */
1444
+ position: TooltipPosition;
1445
+ delay?: number;
1446
+ /**
1447
+ * Whether to show the arrow,
1448
+ */
1449
+ arrow?: boolean;
1450
+ /**
1451
+ * Whether disabled select
1452
+ */
1453
+ disabled?: boolean;
1454
+ /**
1455
+ * Class name of tooltip
1456
+ */
1457
+ className?: string;
1458
+ style?: React.CSSProperties;
1459
+ /**
1460
+ * The children or label
1461
+ */
1462
+ replaceChild?: boolean;
1463
+ tabIndex?: number;
1464
+ children?: React.ReactNode | string | null;
1465
+ providerProps?: TooltipProviderProps;
1466
+ rootProps?: TooltipProps$1;
1467
+ arrowProps?: TooltipArrowProps;
1468
+ }
1469
+
1470
+ /**
1471
+ * Tooltip component is used to show a tooltip to the user.
1472
+ * It is used to show additional information or actions.
1473
+ * It can be used to show a hint, a warning, or any other content.
1474
+ */
1475
+ declare const Tooltip: ({ position, label, html, style, children, className, disabled, delay, arrow, providerProps, rootProps, }: TooltipProps) => react__default.JSX.Element;
1476
+
1477
+ type BaseProps = Pick<TransitionProps$1, 'in' | 'onEnter' | 'onEntering' | 'onEntered' | 'onExit' | 'onExiting' | 'onExited' | 'unmountOnExit' | 'timeout'>;
1478
+ interface TransitionProps extends BaseProps {
1479
+ transition?: string;
1480
+ children: (styles: React.CSSProperties) => React.ReactNode;
1481
+ styles: TransitionStyles;
1482
+ }
1483
+ type TransitionStyleState = 'init' | 'entered' | 'exiting';
1484
+ type TransitionStyles = {
1485
+ [K in TransitionStyleState]?: React.CSSProperties;
1486
+ };
1487
+
1488
+ type SlidePlacement = 'left' | 'right' | 'bottom' | 'top';
1489
+ type SlideProps = Omit<TransitionProps, 'styles' | 'timeout'> & {
1490
+ /** The direction to slide drawer from */
1491
+ placement?: SlidePlacement;
1492
+ /** The transition timeout */
1493
+ timeout?: number;
1494
+ };
1495
+ type FadeProps = Omit<TransitionProps, 'styles' | 'timeout'> & {
1496
+ timeout?: number;
1497
+ };
1498
+ interface SlideFadeProps extends Omit<TransitionProps, 'styles' | 'timeout'> {
1499
+ /**
1500
+ * The initial offset to slide from
1501
+ */
1502
+ initialOffset?: string;
1503
+ /**
1504
+ * The transition timeout
1505
+ */
1506
+ timeout?: number;
1507
+ }
1508
+
1509
+ declare const Fade: (props: FadeProps) => react__default.JSX.Element;
1510
+
1511
+ declare const Slide: (props: SlideProps) => react__default.JSX.Element;
1512
+
1513
+ declare const SlideFade: (props: SlideFadeProps) => react__default.JSX.Element;
1514
+
1515
+ declare const Transition: (props: TransitionProps) => react__default.JSX.Element;
1516
+
1517
+ /**
1518
+ * Typography component is used to show text to the user. It can be used to show a heading, a paragraph, or any other text.
1519
+ */
1520
+ declare const Typography: ({ children, style, variant, weight, }: TypographyProps) => react__default.JSX.Element;
1521
+
1522
+ type FreshworksPalette = {
1523
+ primary: {
1524
+ elephant: string;
1525
+ smoke: string;
1526
+ milk: string;
1527
+ E900: string;
1528
+ E800: string;
1529
+ E700: string;
1530
+ E600: string;
1531
+ E500: string;
1532
+ E400: string;
1533
+ E300: string;
1534
+ E200: string;
1535
+ E100: string;
1536
+ E50: string;
1537
+ S900: string;
1538
+ S800: string;
1539
+ S700: string;
1540
+ S600: string;
1541
+ S500: string;
1542
+ S400: string;
1543
+ S300: string;
1544
+ S200: string;
1545
+ S100: string;
1546
+ S75: string;
1547
+ S50: string;
1548
+ S25: string;
1549
+ S10: string;
1550
+ };
1551
+ secondary: {
1552
+ jungle: string;
1553
+ J900: string;
1554
+ J800: string;
1555
+ J700: string;
1556
+ J600: string;
1557
+ J500: string;
1558
+ J400: string;
1559
+ J300: string;
1560
+ J200: string;
1561
+ J100: string;
1562
+ J50: string;
1563
+ azure: string;
1564
+ A900: string;
1565
+ A800: string;
1566
+ A700: string;
1567
+ A600: string;
1568
+ A500: string;
1569
+ A400: string;
1570
+ A300: string;
1571
+ A200: string;
1572
+ A100: string;
1573
+ A50: string;
1574
+ persimmon: string;
1575
+ P900: string;
1576
+ P800: string;
1577
+ P700: string;
1578
+ P600: string;
1579
+ P500: string;
1580
+ P400: string;
1581
+ P300: string;
1582
+ P200: string;
1583
+ P100: string;
1584
+ P50: string;
1585
+ casablanca: string;
1586
+ C900: string;
1587
+ C800: string;
1588
+ C700: string;
1589
+ C600: string;
1590
+ C500: string;
1591
+ C400: string;
1592
+ C300: string;
1593
+ C200: string;
1594
+ C100: string;
1595
+ C50: string;
1596
+ };
1597
+ common: {
1598
+ black: string;
1599
+ white: string;
1600
+ };
1601
+ };
1602
+ type FuiContextType = {
1603
+ theme: FreemiumUiTheme;
1604
+ };
1605
+ type ModalCssType = {
1606
+ left?: string;
1607
+ top?: string;
1608
+ transform?: string;
1609
+ right?: string;
1610
+ bottom?: string;
1611
+ y?: string;
1612
+ x?: string;
1613
+ };
1614
+
1615
+ declare const StyledLabel: styled_components.IStyledComponent<"web", styled_components_dist_types.FastOmit<Omit<_radix_ui_react_label.LabelProps & react.RefAttributes<HTMLLabelElement>, "ref"> & {
1616
+ ref?: ((instance: HTMLLabelElement | null) => void) | react.RefObject<HTMLLabelElement> | null | undefined;
1617
+ }, never>> & Omit<react.ForwardRefExoticComponent<_radix_ui_react_label.LabelProps & react.RefAttributes<HTMLLabelElement>>, keyof react.Component<any, {}, any>>;
1618
+ type InputLabelProps = {
1619
+ disabled?: boolean;
1620
+ };
1621
+ declare const InputLabel: styled_components.IStyledComponent<"web", styled_components_dist_types.Substitute<react.DetailedHTMLProps<react.LabelHTMLAttributes<HTMLLabelElement>, HTMLLabelElement>, InputLabelProps>>;
1622
+ declare const RequiredIndicator: styled_components.IStyledComponent<"web", styled_components_dist_types.FastOmit<react.DetailedHTMLProps<react.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>>;
1623
+ declare const IconButton: styled_components.IStyledComponent<"web", styled_components_dist_types.FastOmit<react.DetailedHTMLProps<react.ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, never>>;
1624
+ declare const FreshLink: styled_components.IStyledComponent<"web", styled_components_dist_types.FastOmit<react.DetailedHTMLProps<react.AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>, never>>;
1625
+ declare const CardContent: styled_components.IStyledComponent<"web", styled_components_dist_types.FastOmit<react.DetailedHTMLProps<react.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>>;
1626
+ declare const CardActions: styled_components.IStyledComponent<"web", styled_components_dist_types.FastOmit<react.DetailedHTMLProps<react.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>>;
1627
+ declare const CardTitle: styled_components.IStyledComponent<"web", styled_components_dist_types.FastOmit<react.DetailedHTMLProps<react.HTMLAttributes<HTMLHeadingElement>, HTMLHeadingElement>, never>>;
1628
+ declare const CardDescription: styled_components.IStyledComponent<"web", styled_components_dist_types.FastOmit<react.DetailedHTMLProps<react.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>>;
1629
+ declare const CardText: styled_components.IStyledComponent<"web", styled_components_dist_types.FastOmit<react.DetailedHTMLProps<react.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>>;
1630
+ declare const TriggerButtonWrapper: styled_components.IStyledComponent<"web", styled_components_dist_types.FastOmit<react.DetailedHTMLProps<react.ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, never>>;
1631
+ declare const basicHide: () => styled_components.RuleSet<object>;
1632
+ declare const basicShow: () => styled_components.RuleSet<object>;
1633
+ declare const contentHide: () => styled_components.RuleSet<object>;
1634
+ declare const contentShow: () => styled_components.RuleSet<object>;
1635
+ declare const slideUpAndFade: () => styled_components.RuleSet<object>;
1636
+ declare const slideRightAndFade: () => styled_components.RuleSet<object>;
1637
+ declare const slideDownAndFade: () => styled_components.RuleSet<object>;
1638
+ declare const slideLeftAndFade: () => styled_components.RuleSet<object>;
1639
+
1640
+ declare const light: FreemiumUiTheme;
1641
+ declare const dark: FreemiumUiTheme;
1642
+
1643
+ declare const index_d_dark: typeof dark;
1644
+ declare const index_d_light: typeof light;
1645
+ declare namespace index_d {
1646
+ export { index_d_dark as dark, index_d_light as light };
1647
+ }
1648
+
1649
+ export { Alert, type AlertProps, type BaseProps, BoxedRadio, type BoxedRadioItemProps, type BoxedRadioProps, Button, ButtonDropdown, type ButtonDropdownItemProps, type ButtonDropdownProps, type ButtonProps, type ButtonSizeKey, type ButtonVariant, CardActions, CardContent, CardDescription, CardText, CardTitle, Checkbox, type CheckboxProps, ChevronUp, Confirmation, type ConfirmationProps, Cross as CrossIcon, DatePicker, type DatePickerProps, DateRangePicker, type DateRangePickerProps, DateTimePicker, type DateTimePickerProps, DateTimeRangePicker, type DateTimeRangePickerProps, type DefaultDropdownItem, type DefaultMultiSelectDropdownItem, type DefaultProps, Drawer, type DrawerPlacement, type DrawerProps, type DrawerSizeType, Dropdown, Item as DropdownItem, DropdownMenuItem, type DropdownProps, type DropdownTypes, Fade, type FadeProps, type FreemiumUiTheme, FreshLink, type FreshworksPalette, type FuiContextType, IconButton, Input, InputLabel, type InputProps, type LevelType, Loader, type LoaderPropTypes, type LoaderSizes, type LoaderSpeeds, Menu, type MenuItemProps, type MenuProps, Minus, Modal, type ModalAlignType, type ModalCssType, type ModalPositionType, type ModalProps, type ModalSizeType, MoreVertical, MultiSelectDropdown, type MultiSelectDropdownProps, type Origin, Popover, PopoverClose, type PopoverProps, Radio, RadioGroup, type RadioGroupProps, type RadioItemProps, type RadioProps, Reorder, type ReorderItemType, type ReorderProps, RequiredIndicator, type RowData, Slide, SlideFade, type SlideFadeProps, type SlidePlacement, type SlideProps, StyledLabel, Table, type TableProps, Tabs, TabsContent, type TabsItemProps, TabsList, type TabsProps, TabsRoot, TabsTrigger, Tag, type TagProps, TextArea, type TextAreaProps, ThemeProvider, type ThemeProviderType, index_d as Themes, TickIcon, TimePicker, type TimePickerProps, type ToastContextType, type ToastItemProps, ToastProvider, type ToastType, type ToastTypes, type ToastWithID, Toggle, type ToggleProps, type ToggleSizes, Tooltip, type TooltipAlign, type TooltipPosition, type TooltipProps, type TooltipSide, Transition, type TransitionProps, type TransitionStyleState, type TransitionStyles, TriggerButtonWrapper, Typography, type TypographyProps, type TypographyVariantType, type TypographyWeightType, type UpdateToastsFunction, Warning, basicHide, basicShow, contentHide, contentShow, slideDownAndFade, slideLeftAndFade, slideRightAndFade, slideUpAndFade, useToasts };