freemium-ui 2.0.0-beta.3 → 2.0.0-beta.31

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