@nypl/design-system-react-components 2.2.0-react-chakra-rc-2 → 3.0.0-react-chakra-rc2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (125) hide show
  1. package/dist/design-system-react-components.cjs +59 -59
  2. package/dist/design-system-react-components.js +18230 -17049
  3. package/dist/src/components/Accordion/Accordion.d.ts +9 -2
  4. package/dist/src/components/AlphabetFilter/AlphabetFilter.d.ts +6 -3
  5. package/dist/src/components/AudioPlayer/AudioPlayer.d.ts +6 -3
  6. package/dist/src/components/Breadcrumbs/Breadcrumbs.d.ts +2 -1
  7. package/dist/src/components/Button/Button.d.ts +23 -1
  8. package/dist/src/components/ButtonGroup/ButtonGroup.d.ts +15 -1
  9. package/dist/src/components/Card/Card.d.ts +2 -1
  10. package/dist/src/components/Checkbox/Checkbox.d.ts +2 -1
  11. package/dist/src/components/CheckboxGroup/CheckboxGroup.d.ts +2 -1
  12. package/dist/src/components/ComponentWrapper/ComponentWrapper.d.ts +4 -2
  13. package/dist/src/components/DatePicker/DatePicker.d.ts +14 -6
  14. package/dist/src/components/FeaturedContent/FeaturedContent.d.ts +2 -1
  15. package/dist/src/components/FeedbackBox/FeedbackBox.d.ts +48 -2
  16. package/dist/src/components/Fieldset/Fieldset.d.ts +17 -1
  17. package/dist/src/components/Form/Form.d.ts +4 -3
  18. package/dist/src/components/Grid/SimpleGrid.d.ts +2 -1
  19. package/dist/src/components/Heading/Heading.d.ts +2 -1
  20. package/dist/src/components/HelperErrorText/HelperErrorText.d.ts +26 -1
  21. package/dist/src/components/Hero/Hero.d.ts +6 -1
  22. package/dist/src/components/HorizontalRule/HorizontalRule.d.ts +2 -1
  23. package/dist/src/components/Icons/Icon.d.ts +2 -1
  24. package/dist/src/components/Icons/IconSvgs.d.ts +24 -0
  25. package/dist/src/components/Icons/iconVariables.d.ts +2 -2
  26. package/dist/src/components/Image/Image.d.ts +9 -2
  27. package/dist/src/components/Label/Label.d.ts +19 -1
  28. package/dist/src/components/Link/Link.d.ts +2 -1
  29. package/dist/src/components/List/List.d.ts +6 -4
  30. package/dist/src/components/Logo/Logo.d.ts +5 -4
  31. package/dist/src/components/Logo/logoVariables.d.ts +0 -1
  32. package/dist/src/components/Menu/Menu.d.ts +58 -0
  33. package/dist/src/components/Modal/Modal.d.ts +13 -4
  34. package/dist/src/components/MultiSelect/MultiSelect.d.ts +55 -0
  35. package/dist/src/components/MultiSelect/MultiSelectItemsCountButton.d.ts +29 -0
  36. package/dist/src/components/NewsletterSignup/NewsletterSignup.d.ts +42 -1
  37. package/dist/src/components/Notification/Notification.d.ts +11 -5
  38. package/dist/src/components/Pagination/Pagination.d.ts +2 -1
  39. package/dist/src/components/ProgressIndicator/ProgressIndicator.d.ts +2 -1
  40. package/dist/src/components/Radio/Radio.d.ts +2 -1
  41. package/dist/src/components/RadioGroup/RadioGroup.d.ts +2 -1
  42. package/dist/src/components/SearchBar/SearchBar.d.ts +4 -2
  43. package/dist/src/components/Select/Select.d.ts +2 -1
  44. package/dist/src/components/SkeletonLoader/SkeletonLoader.d.ts +2 -1
  45. package/dist/src/components/SkipNavigation/SkipNavigation.d.ts +10 -1
  46. package/dist/src/components/Slider/Slider.d.ts +2 -1
  47. package/dist/src/components/SocialMediaLinks/SocialMediaLinks.d.ts +2 -1
  48. package/dist/src/components/StatusBadge/StatusBadge.d.ts +15 -6
  49. package/dist/src/components/StructuredContent/StructuredContent.d.ts +7 -4
  50. package/dist/src/components/StyleGuide/ColorCard.d.ts +2 -1
  51. package/dist/src/components/StyledList/StyledList.d.ts +2 -1
  52. package/dist/src/components/Table/Table.d.ts +2 -1
  53. package/dist/src/components/Tabs/Tabs.d.ts +2 -2
  54. package/dist/src/components/TagSet/TagSet.d.ts +2 -1
  55. package/dist/src/components/TagSet/TagSetExplore.d.ts +1 -1
  56. package/dist/src/components/TagSet/TagSetFilter.d.ts +1 -1
  57. package/dist/src/components/Template/Template.d.ts +3 -2
  58. package/dist/src/components/Text/Text.d.ts +2 -1
  59. package/dist/src/components/TextInput/TextInput.d.ts +2 -1
  60. package/dist/src/components/Toggle/Toggle.d.ts +2 -1
  61. package/dist/src/components/Tooltip/Tooltip.d.ts +2 -1
  62. package/dist/src/components/VideoPlayer/VideoPlayer.d.ts +6 -3
  63. package/dist/src/helpers/types.d.ts +2 -0
  64. package/dist/src/hooks/useDSHeading.d.ts +16 -0
  65. package/dist/src/hooks/useMultiSelect.d.ts +18 -0
  66. package/dist/src/hooks/useScrollTabIntoView.d.ts +9 -0
  67. package/dist/src/hooks/useStateWithDependencies.d.ts +4 -2
  68. package/dist/src/index.d.ts +6 -1
  69. package/dist/src/theme/components/accordion.d.ts +25 -2
  70. package/dist/src/theme/components/alphabetFilter.d.ts +24 -8
  71. package/dist/src/theme/components/audioPlayer.d.ts +18 -1
  72. package/dist/src/theme/components/breadcrumb.d.ts +24 -16
  73. package/dist/src/theme/components/button.d.ts +39 -0
  74. package/dist/src/theme/components/buttonGroup.d.ts +12 -3
  75. package/dist/src/theme/components/card.d.ts +104 -235
  76. package/dist/src/theme/components/checkbox.d.ts +44 -34
  77. package/dist/src/theme/components/checkboxGroup.d.ts +18 -4
  78. package/dist/src/theme/components/datePicker.d.ts +17 -6
  79. package/dist/src/theme/components/featuredContent.d.ts +75 -36
  80. package/dist/src/theme/components/feedbackBox.d.ts +28 -9
  81. package/dist/src/theme/components/fieldset.d.ts +14 -2
  82. package/dist/src/theme/components/global.d.ts +1 -0
  83. package/dist/src/theme/components/heading.d.ts +596 -249
  84. package/dist/src/theme/components/helperErrorText.d.ts +19 -3
  85. package/dist/src/theme/components/hero.d.ts +198 -176
  86. package/dist/src/theme/components/horizontalRule.d.ts +14 -2
  87. package/dist/src/theme/components/icon.d.ts +13 -4
  88. package/dist/src/theme/components/image.d.ts +326 -223
  89. package/dist/src/theme/components/label.d.ts +14 -2
  90. package/dist/src/theme/components/link.d.ts +40 -197
  91. package/dist/src/theme/components/list.d.ts +130 -101
  92. package/dist/src/theme/components/logo.d.ts +17 -5
  93. package/dist/src/theme/components/menu.d.ts +169 -0
  94. package/dist/src/theme/components/modal.d.ts +19 -4
  95. package/dist/src/theme/components/multiSelect.d.ts +106 -12
  96. package/dist/src/theme/components/multiSelectItemsCountButton.d.ts +52 -0
  97. package/dist/src/theme/components/newsletterSignup.d.ts +37 -29
  98. package/dist/src/theme/components/notification.d.ts +51 -116
  99. package/dist/src/theme/components/notificationContent.d.ts +58 -0
  100. package/dist/src/theme/components/notificationHeading.d.ts +57 -0
  101. package/dist/src/theme/components/pagination.d.ts +17 -2
  102. package/dist/src/theme/components/progressIndicator.d.ts +21 -5
  103. package/dist/src/theme/components/radio.d.ts +25 -6
  104. package/dist/src/theme/components/radioGroup.d.ts +18 -4
  105. package/dist/src/theme/components/searchBar.d.ts +24 -6
  106. package/dist/src/theme/components/select.d.ts +21 -13
  107. package/dist/src/theme/components/skeletonLoader.d.ts +34 -12
  108. package/dist/src/theme/components/skipNavigation.d.ts +12 -1
  109. package/dist/src/theme/components/slider.d.ts +49 -33
  110. package/dist/src/theme/components/socialmedialinks.d.ts +22 -16
  111. package/dist/src/theme/components/statusBadge.d.ts +66 -10
  112. package/dist/src/theme/components/structuredContent.d.ts +233 -102
  113. package/dist/src/theme/components/styledList.d.ts +12 -6
  114. package/dist/src/theme/components/tabs.d.ts +27 -13
  115. package/dist/src/theme/components/tagSet.d.ts +83 -42
  116. package/dist/src/theme/components/template.d.ts +76 -25
  117. package/dist/src/theme/components/text.d.ts +27 -12
  118. package/dist/src/theme/components/textInput.d.ts +52 -44
  119. package/dist/src/theme/components/toggle.d.ts +33 -11
  120. package/dist/src/theme/components/tooltip.d.ts +13 -1
  121. package/dist/src/theme/components/videoPlayer.d.ts +32 -21
  122. package/dist/src/theme/foundations/global.d.ts +6 -0
  123. package/dist/styles.css +1 -1
  124. package/package.json +4 -7
  125. package/dist/src/theme/components/multiSelectMenuButton.d.ts +0 -99
@@ -1,13 +1,20 @@
1
+ import { ChakraComponent } from "@chakra-ui/react";
1
2
  import React from "react";
2
3
  export type AccordionTypes = "default" | "warning" | "error";
3
4
  export interface AccordionDataProps {
4
5
  accordionType?: AccordionTypes;
5
- label: string;
6
+ ariaLabel?: string;
7
+ /** Ref to the DOM element of the AccordionButton. */
8
+ buttonInteractionRef?: any;
9
+ label: string | JSX.Element;
6
10
  panel: string | React.ReactNode;
7
11
  }
8
12
  export interface AccordionProps {
9
13
  /** Array of data to display, and an optional accordionType */
10
14
  accordionData: AccordionDataProps[];
15
+ /** Global aria-label value that is applied to all accordions if individual
16
+ * ariaLabel props are not included with accordionData entries. */
17
+ ariaLabel?: string;
11
18
  /** ID that other components can cross reference for accessibility purposes */
12
19
  id?: string;
13
20
  /** Whether the accordion is open by default only on its initial rendering */
@@ -25,5 +32,5 @@ export interface AccordionProps {
25
32
  * Accordion component that shows content on toggle. Can be used to display
26
33
  * multiple accordion items together.
27
34
  */
28
- export declare const Accordion: React.FC<any>;
35
+ export declare const Accordion: ChakraComponent<React.ForwardRefExoticComponent<AccordionProps & React.RefAttributes<HTMLDivElement>>, AccordionProps>;
29
36
  export default Accordion;
@@ -1,4 +1,5 @@
1
1
  import React from "react";
2
+ import { ChakraComponent } from "@chakra-ui/react";
2
3
  export interface AlphabetFilterProps {
3
4
  /** Array of letters to specify which `Button` components should be set in an `enabled`
4
5
  * state. By default, all buttons are `enabled`. */
@@ -10,8 +11,10 @@ export interface AlphabetFilterProps {
10
11
  currentLetter?: string;
11
12
  /** Value used to set the text for a `Text` component that will be displayed above the letter buttons. */
12
13
  descriptionText?: string | JSX.Element;
13
- /** Value used to set the text for a `Heading` component. */
14
- headingText?: string;
14
+ /** Optional string value used to set the text for a `Heading` component, or
15
+ * a DS Heading component that can be passed in.
16
+ */
17
+ headingText?: string | JSX.Element;
15
18
  /** ID that other components can cross reference for accessibility purposes. */
16
19
  id?: string;
17
20
  /** Adds the `disabled` prop to the AlphabetFilter when true. */
@@ -19,5 +22,5 @@ export interface AlphabetFilterProps {
19
22
  /** The callback function called when a letter button or the Show All button is clicked. */
20
23
  onClick: (filterValue: string) => void;
21
24
  }
22
- export declare const AlphabetFilter: React.FC<any>;
25
+ export declare const AlphabetFilter: ChakraComponent<React.ForwardRefExoticComponent<AlphabetFilterProps & React.RefAttributes<HTMLDivElement>>, AlphabetFilterProps>;
23
26
  export default AlphabetFilter;
@@ -1,3 +1,4 @@
1
+ import { ChakraComponent } from "@chakra-ui/react";
1
2
  import React from "react";
2
3
  declare const thirdPartyServices: readonly ["libsyn", "soundcloud", "spotify"];
3
4
  export type ThirdPartyAudioType = typeof thirdPartyServices[number];
@@ -18,8 +19,10 @@ export interface AudioPlayerProps {
18
19
  * or to another domain altogether.
19
20
  * TODO: This prop won't be used until a future version.
20
21
  */
21
- /** Optional string to set the text for a `Heading` component. */
22
- headingText?: string;
22
+ /** Optional string value used to set the text for a `Heading` component, or
23
+ * a DS Heading component that can be passed in.
24
+ */
25
+ headingText?: string | JSX.Element;
23
26
  /** Optional string to set the text for a `HelperErrorText` component. */
24
27
  helperText?: string;
25
28
  /** ID that other components can cross reference for accessibility purposes. */
@@ -32,7 +35,7 @@ export interface AudioPlayerProps {
32
35
  /**
33
36
  * Renders an audio player from 3rd party services such as Libsyn, SoundCloud, and Spotify.
34
37
  */
35
- export declare const AudioPlayer: React.FC<any>;
38
+ export declare const AudioPlayer: ChakraComponent<React.ForwardRefExoticComponent<React.PropsWithChildren<AudioPlayerProps> & React.RefAttributes<HTMLDivElement>>, AudioPlayerProps>;
36
39
  /**
37
40
  * Parse the embedCode string to a DOM object for proper formatted HTML element.
38
41
  * We are only interested in the iframe element.
@@ -1,3 +1,4 @@
1
+ import { ChakraComponent } from "@chakra-ui/react";
1
2
  import React from "react";
2
3
  export declare const breadcrumbTypeArray: readonly ["blogs", "booksAndMore", "brand", "connect", "education", "locations", "research", "whatsOn"];
3
4
  export type BreadcrumbsTypes = typeof breadcrumbTypeArray[number];
@@ -20,5 +21,5 @@ export interface BreadcrumbProps {
20
21
  * breadcrumb path that reflects the site structure and allows a user to
21
22
  * navigate to any page available in the breadcrumb hierarchy.
22
23
  */
23
- export declare const Breadcrumbs: React.FC<any>;
24
+ export declare const Breadcrumbs: ChakraComponent<React.ForwardRefExoticComponent<BreadcrumbProps & React.RefAttributes<HTMLDivElement>>, BreadcrumbProps>;
24
25
  export default Breadcrumbs;
@@ -1,3 +1,4 @@
1
+ import { ChakraComponent } from "@chakra-ui/react";
1
2
  import React from "react";
2
3
  export declare const buttonElementTypeArray: readonly ["submit", "button", "reset"];
3
4
  export declare const buttonSizesArray: readonly ["small", "medium", "large"];
@@ -5,8 +6,29 @@ export declare const buttonTypesArray: readonly ["primary", "secondary", "text",
5
6
  export type ButtonElementType = typeof buttonElementTypeArray[number];
6
7
  export type ButtonSizes = typeof buttonSizesArray[number];
7
8
  export type ButtonTypes = typeof buttonTypesArray[number];
9
+ interface ButtonProps {
10
+ /** The button variation to render based on the `ButtonTypes` type.*/
11
+ buttonType?: ButtonTypes;
12
+ /** Additional className to use. */
13
+ className?: string;
14
+ /** ID that other components can cross reference for accessibility purposes. */
15
+ id: string;
16
+ /** Adds 'disabled' property to the button. */
17
+ isDisabled?: boolean;
18
+ /** Trigger the Button's action through the `mouseDown` event handler instead
19
+ * of `onClick`. `false` by default. */
20
+ mouseDown?: boolean;
21
+ /** The action to perform on the `<button>`'s onClick function. */
22
+ onClick?: (event: React.MouseEvent | React.KeyboardEvent) => void;
23
+ /** Visibly hidden text that will only be read by screenreaders. */
24
+ screenreaderOnlyText?: string;
25
+ /** The size of the `Button`. */
26
+ size?: ButtonSizes;
27
+ /** The HTML button type attribute. */
28
+ type?: ButtonElementType;
29
+ }
8
30
  /**
9
31
  * Renders a simple `button` element with custom variant styles.
10
32
  */
11
- export declare const Button: React.FC<React.PropsWithChildren<any>>;
33
+ export declare const Button: ChakraComponent<React.ForwardRefExoticComponent<React.PropsWithChildren<ButtonProps> & React.RefAttributes<HTMLButtonElement>>, React.PropsWithChildren<ButtonProps>>;
12
34
  export default Button;
@@ -1,10 +1,24 @@
1
+ import { ChakraComponent } from "@chakra-ui/react";
1
2
  import React from "react";
3
+ import { LayoutTypes } from "../../helpers/types";
2
4
  export declare const buttonGroupWidthsArray: readonly ["default", "full"];
3
5
  export type ButtonGroupWidths = typeof buttonGroupWidthsArray[number];
6
+ interface ButtonGroupProps {
7
+ /** Sets the width to "default" (for "fit-content") or "full". */
8
+ buttonWidth?: ButtonGroupWidths;
9
+ /** Additional className to use. */
10
+ className?: string;
11
+ /** ID that other components can cross reference for accessibility purposes. */
12
+ id?: string;
13
+ /** Set's the disabled state to all the internal `Button` components. */
14
+ isDisabled?: boolean;
15
+ /** Renders the layout of `Button` components in a row or column. */
16
+ layout?: LayoutTypes;
17
+ }
4
18
  /**
5
19
  * A simple wrapper to group `Button` components together. The layout can be set
6
20
  * to row or column and the width of internal `Button` components can be set to
7
21
  * the parent's full width or the `Button`'s content width
8
22
  */
9
- export declare const ButtonGroup: React.FC<React.PropsWithChildren<any>>;
23
+ export declare const ButtonGroup: ChakraComponent<React.ForwardRefExoticComponent<React.PropsWithChildren<ButtonGroupProps> & React.RefAttributes<HTMLDivElement>>, React.PropsWithChildren<ButtonGroupProps>>;
10
24
  export default ButtonGroup;
@@ -1,3 +1,4 @@
1
+ import { ChakraComponent } from "@chakra-ui/react";
1
2
  import React from "react";
2
3
  import { LayoutTypes } from "../../helpers/types";
3
4
  import { ComponentImageProps } from "../Image/Image";
@@ -39,5 +40,5 @@ export interface CardProps extends CardBaseProps, CardWrapperProps {
39
40
  export declare const CardHeading: React.FC<any>;
40
41
  export declare const CardContent: React.FC<React.PropsWithChildren<any>>;
41
42
  export declare const CardActions: React.FC<React.PropsWithChildren<any>>;
42
- export declare const Card: React.FC<React.PropsWithChildren<any>>;
43
+ export declare const Card: ChakraComponent<React.ForwardRefExoticComponent<React.PropsWithChildren<CardProps> & React.RefAttributes<HTMLDivElement>>, CardProps>;
43
44
  export default Card;
@@ -1,3 +1,4 @@
1
+ import { ChakraComponent } from "@chakra-ui/react";
1
2
  import React from "react";
2
3
  import { HelperErrorTextType } from "../HelperErrorText/HelperErrorText";
3
4
  interface CheckboxIconProps {
@@ -43,5 +44,5 @@ export interface CheckboxProps extends CheckboxIconProps {
43
44
  /** Populates the value of the input */
44
45
  value?: string;
45
46
  }
46
- export declare const Checkbox: React.FC<any>;
47
+ export declare const Checkbox: ChakraComponent<React.ForwardRefExoticComponent<CheckboxProps & React.RefAttributes<HTMLInputElement>>, CheckboxProps>;
47
48
  export default Checkbox;
@@ -1,3 +1,4 @@
1
+ import { ChakraComponent } from "@chakra-ui/react";
1
2
  import React from "react";
2
3
  import { HelperErrorTextType } from "../HelperErrorText/HelperErrorText";
3
4
  import { LayoutTypes } from "../../helpers/types";
@@ -47,5 +48,5 @@ export interface CheckboxGroupProps {
47
48
  * wrapping and associated text elements, but the checkbox input elements
48
49
  * _need_ to be child `Checkbox` components from the NYPL Design System.
49
50
  */
50
- export declare const CheckboxGroup: React.FC<any>;
51
+ export declare const CheckboxGroup: ChakraComponent<React.ForwardRefExoticComponent<React.PropsWithChildren<CheckboxGroupProps> & React.RefAttributes<HTMLDivElement>>, React.PropsWithChildren<CheckboxGroupProps>>;
51
52
  export default CheckboxGroup;
@@ -7,8 +7,10 @@ export interface ComponentWrapperProps {
7
7
  className?: string;
8
8
  /** Optional string to set the text for the component's description */
9
9
  descriptionText?: string | JSX.Element;
10
- /** Optional string to set the text for a `Heading` component */
11
- headingText?: string;
10
+ /** Optional string value used to set the text for a `Heading` component, or
11
+ * a DS Heading component that can be passed in.
12
+ */
13
+ headingText?: string | JSX.Element;
12
14
  /** Optional string to set the text for a `HelperErrorText` component */
13
15
  helperText?: HelperErrorTextType;
14
16
  /** Styles that target the helper text. */
@@ -1,3 +1,4 @@
1
+ import { ChakraComponent } from "@chakra-ui/react";
1
2
  import React from "react";
2
3
  import { HelperErrorTextType } from "../HelperErrorText/HelperErrorText";
3
4
  import { TextInputRefType } from "../TextInput/TextInput";
@@ -6,9 +7,9 @@ export type DatePickerTypes = typeof datePickerTypesArray[number];
6
7
  export interface FullDateType {
7
8
  /** Date object that gets returned for the onChange
8
9
  * function only for date ranges. */
9
- endDate?: Date;
10
+ endDate?: Date | null;
10
11
  /** Date object that gets returned for the onChange function. */
11
- startDate: Date;
12
+ startDate: Date | null;
12
13
  }
13
14
  interface DateRangeRowProps {
14
15
  /** ID that other components can cross reference for accessibility purposes. */
@@ -41,10 +42,13 @@ export interface DatePickerProps extends DatePickerWrapperProps {
41
42
  helperTextFrom?: string;
42
43
  /** Populates the `HelperErrorText` component in the "To" `TextInput` component. */
43
44
  helperTextTo?: string;
44
- /** The initial date value. This must be in the mm/dd/yyyy format. */
45
+ /** The initial date value. If no initialDate is passed, the input will render with
46
+ * today's date. If an empty string is passed, the input will render with no initial
47
+ * value. If a date is passed, it must be in the mm/dd/yyyy format. */
45
48
  initialDate?: string;
46
- /** The initialTo date value used for date ranges.
47
- * This must be in the mm/dd/yyyy format. */
49
+ /** The initialTo date value (used for date ranges). If no initialTo is passed, the input
50
+ * will render with today's date. If an empty string is passed, the input will render with
51
+ * no initial value. If a date is passed, it must be in the mm/dd/yyyy format. */
48
52
  initialDateTo?: string;
49
53
  /** Populates the `HelperErrorText` error state for both "From"
50
54
  * and "To" input components. */
@@ -69,6 +73,10 @@ export interface DatePickerProps extends DatePickerWrapperProps {
69
73
  * This will return the data in an object with `startDate` and `endDate` keys.
70
74
  */
71
75
  onChange?: (data: FullDateType) => void;
76
+ /** Placeholder text for the input. */
77
+ placeholder?: string;
78
+ /** Placeholder text for the end date input (used in date ranges). */
79
+ placeholderTo?: string;
72
80
  /** An additional explicit React ref passed for a date range's "To"
73
81
  * input field. Note that the "From" input takes the initial "ref" value. */
74
82
  refTo?: React.Ref<TextInputRefType>;
@@ -78,5 +86,5 @@ export interface DatePickerProps extends DatePickerWrapperProps {
78
86
  /**
79
87
  * Returns a single date input field or two date input fields for a date range.
80
88
  */
81
- export declare const DatePicker: React.FC<any>;
89
+ export declare const DatePicker: ChakraComponent<React.ForwardRefExoticComponent<DatePickerProps & React.RefAttributes<TextInputRefType>>, DatePickerProps>;
82
90
  export default DatePicker;
@@ -1,3 +1,4 @@
1
+ import { ChakraComponent } from "@chakra-ui/react";
1
2
  import React from "react";
2
3
  import { ImageProps } from "../Image/Image";
3
4
  export declare const featuredContentWidthArray: string[];
@@ -23,5 +24,5 @@ export interface FeaturedContentProps {
23
24
  /** Data object that contains the props related to the image element: alt, position, src, width. */
24
25
  imageProps: FeaturedContentImageProps;
25
26
  }
26
- export declare const FeaturedContent: React.FC<any>;
27
+ export declare const FeaturedContent: ChakraComponent<React.ForwardRefExoticComponent<React.PropsWithChildren<FeaturedContentProps> & React.RefAttributes<HTMLDivElement>>, FeaturedContentProps>;
27
28
  export default FeaturedContent;
@@ -1,6 +1,52 @@
1
- import React from "react";
1
+ /// <reference types="react" />
2
+ import { ChakraComponent } from "@chakra-ui/react";
2
3
  export declare const feedbackBoxViewTypeArray: readonly ["form", "confirmation", "error"];
3
4
  export type FeedbackBoxViewType = typeof feedbackBoxViewTypeArray[number];
5
+ interface FeedbackBoxProps {
6
+ /** Additional class name to add. */
7
+ className?: string;
8
+ /** Used to add additional information to the default confirmation message in
9
+ * the confirmation view. */
10
+ confirmationText?: string | JSX.Element;
11
+ /** Used to add description text above the form input fields in
12
+ * the initial/form view. */
13
+ descriptionText?: string | JSX.Element;
14
+ /** A data object containing key/value pairs that will be added to the form
15
+ * field submitted data. */
16
+ hiddenFields?: any;
17
+ /** ID that other components can cross reference for accessibility purposes */
18
+ id?: string;
19
+ /** Toggles the invalid state for the comment field. */
20
+ isInvalidComment?: boolean;
21
+ /** Toggles the invalid state for the email field. */
22
+ isInvalidEmail?: boolean;
23
+ /** Only used for internal purposes. */
24
+ isOpen?: boolean;
25
+ /** Used to add a notification above the description in the
26
+ * initial/form view.*/
27
+ notificationText?: string | JSX.Element;
28
+ /** Only used for internal purposes. */
29
+ onClose?: any;
30
+ /** Only used for internal purposes. */
31
+ onOpen?: any;
32
+ /** Callback function that will be invoked when the form is submitted.
33
+ * The returned data object contains key/value pairs including the
34
+ * values from the `hiddenFields` prop.
35
+ */
36
+ onSubmit: (values: {
37
+ [key: string]: string;
38
+ }) => any;
39
+ /** Toggles the category radio group field. */
40
+ showCategoryField?: boolean;
41
+ /** Toggles the email input field. When set to `true`, an additional
42
+ * confirmation message will be rendered. */
43
+ showEmailField?: boolean;
44
+ /** Used to populate the label on the open button and the `Drawer`'s
45
+ * header title. */
46
+ title: string;
47
+ /** Used to specify what screen should be displayed. */
48
+ view?: FeedbackBoxViewType;
49
+ }
4
50
  /**
5
51
  * The `FeedbackBox` component renders a fixed-positioned button on the bottom
6
52
  * right corner of a page that opens a Chakra `Drawer` popup component. Inside
@@ -9,6 +55,6 @@ export type FeedbackBoxViewType = typeof feedbackBoxViewTypeArray[number];
9
55
  * submitted data; that feature is the responsibility of the consuming
10
56
  * application.
11
57
  */
12
- export declare const FeedbackBox: React.FC<any>;
58
+ export declare const FeedbackBox: ChakraComponent<React.ForwardRefExoticComponent<React.PropsWithChildren<FeedbackBoxProps> & React.RefAttributes<HTMLDivElement>>, FeedbackBoxProps>;
13
59
  export declare function useFeedbackBox(): any;
14
60
  export default FeedbackBox;
@@ -1,7 +1,23 @@
1
+ import { ChakraComponent } from "@chakra-ui/react";
1
2
  import React from "react";
3
+ interface FieldsetProps {
4
+ /** Additional class name to add. */
5
+ className?: string;
6
+ /** ID that other components can cross reference for accessibility purposes */
7
+ id: string;
8
+ /** Flag to show or hide the text in the `legend` element. False by default. */
9
+ isLegendHidden?: boolean;
10
+ /** Flag to render "Required" in the `legend`. True by default. */
11
+ isRequired?: boolean;
12
+ /** Text to display in the `legend` element. */
13
+ legendText?: string;
14
+ /** Whether or not to display the "(Required)" text in the `legend` text.
15
+ * True by default. */
16
+ showRequiredLabel?: boolean;
17
+ }
2
18
  /**
3
19
  * A wrapper component that renders a `fieldset` element along with a `legend`
4
20
  * element as its first child. Commonly used to wrap form components.
5
21
  */
6
- export declare const Fieldset: React.FC<React.PropsWithChildren<any>>;
22
+ export declare const Fieldset: ChakraComponent<React.ForwardRefExoticComponent<React.PropsWithChildren<FieldsetProps> & React.RefAttributes<HTMLDivElement & HTMLFieldSetElement>>, React.PropsWithChildren<FieldsetProps>>;
7
23
  export default Fieldset;
@@ -1,3 +1,4 @@
1
+ import { ChakraComponent } from "@chakra-ui/react";
1
2
  import React from "react";
2
3
  import { GridGaps } from "../Grid/SimpleGrid";
3
4
  interface FormBaseProps {
@@ -21,9 +22,9 @@ export interface FormProps extends FormBaseProps {
21
22
  onSubmit?: (e: React.FormEvent<any>) => void;
22
23
  }
23
24
  /** FormRow child-component */
24
- export declare const FormRow: React.FC<any>;
25
+ export declare const FormRow: ChakraComponent<React.ForwardRefExoticComponent<React.PropsWithChildren<FormChildProps> & React.RefAttributes<HTMLDivElement>>, FormChildProps>;
25
26
  /** FormField child-component */
26
- export declare const FormField: React.FC<any>;
27
+ export declare const FormField: ChakraComponent<React.ForwardRefExoticComponent<React.PropsWithChildren<FormChildProps> & React.RefAttributes<HTMLDivElement>>, FormChildProps>;
27
28
  /** Main Form component */
28
- export declare const Form: React.FC<any>;
29
+ export declare const Form: ChakraComponent<React.ForwardRefExoticComponent<React.PropsWithChildren<FormProps> & React.RefAttributes<HTMLDivElement & HTMLFormElement>>, React.PropsWithChildren<FormProps>>;
29
30
  export default Form;
@@ -1,3 +1,4 @@
1
+ import { ChakraComponent } from "@chakra-ui/react";
1
2
  import React from "react";
2
3
  export declare const gridGapsArray: readonly ["grid.xxs", "grid.xs", "grid.s", "grid.m", "grid.l", "grid.xl", "grid.xxl"];
3
4
  export type GridGaps = typeof gridGapsArray[number];
@@ -14,5 +15,5 @@ export interface SimpleGridProps {
14
15
  /** ID that other components can cross reference for accessibility purposes */
15
16
  id?: string;
16
17
  }
17
- export declare const SimpleGrid: React.FC<any>;
18
+ export declare const SimpleGrid: ChakraComponent<React.ForwardRefExoticComponent<React.PropsWithChildren<SimpleGridProps> & React.RefAttributes<HTMLDivElement>>, React.PropsWithChildren<SimpleGridProps>>;
18
19
  export default SimpleGrid;
@@ -1,3 +1,4 @@
1
+ import { ChakraComponent } from "@chakra-ui/react";
1
2
  import React from "react";
2
3
  export declare const headingSizesArray: readonly ["display1", "heading1", "heading2", "heading3", "heading4", "heading5", "heading6", "primary", "secondary", "tertiary", "callout"];
3
4
  export declare const headingLevelsArray: readonly ["h1", "h2", "h3", "h4", "h5", "h6", "one", "two", "three", "four", "five", "six"];
@@ -36,5 +37,5 @@ export interface HeadingProps {
36
37
  /** Optional className for the URL when the `url` prop is passed */
37
38
  urlClass?: string;
38
39
  }
39
- export declare const Heading: React.FC<any>;
40
+ export declare const Heading: ChakraComponent<React.ForwardRefExoticComponent<React.PropsWithChildren<HeadingProps> & React.RefAttributes<HTMLHeadingElement>>, React.PropsWithChildren<HeadingProps>>;
40
41
  export default Heading;
@@ -1,10 +1,35 @@
1
1
  /// <reference types="react" />
2
+ import { ChakraComponent } from "@chakra-ui/react";
2
3
  export type AriaLiveValues = "assertive" | "off" | "polite" | undefined;
3
4
  export type HelperErrorTextType = string | JSX.Element;
5
+ interface HelperErrorTextProps {
6
+ /** Aria attribute. When true, assistive technologies will read the entire
7
+ * DOM element. When false, only changes (additionals or removals) will be
8
+ * read. True by default. */
9
+ ariaAtomic?: boolean;
10
+ /** Aria attribute used to handle live updates for the helper and error text.
11
+ * This indicates the priority of the text and when it should be presented to
12
+ * users using screen readers; "off" indicates that the content should not be
13
+ * presented, "polite" that it will be announced at the next available time
14
+ * slot, and "assertive" that it should be announced immediately. This is set
15
+ * to "polite" by default. */
16
+ ariaLive?: AriaLiveValues;
17
+ /** Additional className to add. */
18
+ className?: string;
19
+ /** Unique ID for accessibility purposes. */
20
+ id?: string;
21
+ /** Toggles between helper and invalid styling. */
22
+ isInvalid?: boolean;
23
+ /** Offers the ability to render or not render the content passed in
24
+ * the `text` prop; `true` by default. */
25
+ isRenderedText?: boolean;
26
+ /** The text to display. */
27
+ text: HelperErrorTextType;
28
+ }
4
29
  /**
5
30
  * Component that always renders a div even if the text content is not passed.
6
31
  * This pattern guarantees accessibility guidelines are met if the text content
7
32
  * is dynamically updated by the app or component that implements it.
8
33
  */
9
- export declare const HelperErrorText: React.FC<any>;
34
+ export declare const HelperErrorText: ChakraComponent<React.ForwardRefExoticComponent<HelperErrorTextProps & React.RefAttributes<HTMLDivElement>>, HelperErrorTextProps>;
10
35
  export default HelperErrorText;
@@ -1,3 +1,4 @@
1
+ import { ChakraComponent } from "@chakra-ui/react";
1
2
  import React from "react";
2
3
  import { ComponentImageProps } from "../Image/Image";
3
4
  export declare const heroTypesArray: readonly ["primary", "secondary", "secondaryBooksAndMore", "secondaryLocations", "secondaryResearch", "secondaryWhatsOn", "tertiary", "campaign", "fiftyFifty"];
@@ -36,6 +37,10 @@ export interface HeroProps {
36
37
  * can only be used in conjunction with `backgroundImageSrc` for the "campaign"
37
38
  * `Hero` type. Note: not all `Hero` variations utilize this prop. */
38
39
  imageProps?: HeroImageProps;
40
+ /** Optional boolean used to toggle the treatment of the background image in
41
+ * the "campaign" variant. If true, the background image will be converted to
42
+ * black & white and darkened to 60% black. */
43
+ isDarkBackgroundImage?: boolean;
39
44
  /** Optional details area that contains location data.
40
45
  * Note: not all `Hero` variations utilize this prop. */
41
46
  locationDetails?: JSX.Element;
@@ -43,5 +48,5 @@ export interface HeroProps {
43
48
  * underneath the heading element. */
44
49
  subHeaderText?: string | JSX.Element;
45
50
  }
46
- export declare const Hero: React.FC<any>;
51
+ export declare const Hero: ChakraComponent<React.ForwardRefExoticComponent<React.PropsWithChildren<HeroProps> & React.RefAttributes<HTMLDivElement>>, HeroProps>;
47
52
  export default Hero;
@@ -1,3 +1,4 @@
1
+ import { ChakraComponent } from "@chakra-ui/react";
1
2
  import React from "react";
2
3
  export interface HorizontalRuleProps {
3
4
  /** Optional alignment value to align the horizontal rule to one side or the
@@ -7,5 +8,5 @@ export interface HorizontalRuleProps {
7
8
  /** ClassName you can add in addition to `horizontal-rule` */
8
9
  className?: string;
9
10
  }
10
- export declare const HorizontalRule: React.FC<any>;
11
+ export declare const HorizontalRule: ChakraComponent<React.ForwardRefExoticComponent<React.PropsWithChildren<HorizontalRuleProps> & React.RefAttributes<HTMLDivElement & HTMLHRElement>>, React.PropsWithChildren<HorizontalRuleProps>>;
11
12
  export default HorizontalRule;
@@ -1,3 +1,4 @@
1
+ import { ChakraComponent } from "@chakra-ui/react";
1
2
  import React from "react";
2
3
  import { iconAlignArray, iconColorsArray, iconNamesArray, iconRotationsArray, iconSizesArray, iconTypesArray } from "./iconVariables";
3
4
  export type IconAlign = typeof iconAlignArray[number];
@@ -35,5 +36,5 @@ export interface IconProps {
35
36
  /**
36
37
  * Renders SVG-based icons.
37
38
  */
38
- export declare const Icon: React.FC<any>;
39
+ export declare const Icon: ChakraComponent<React.ForwardRefExoticComponent<React.PropsWithChildren<IconProps> & React.RefAttributes<HTMLDivElement & SVGSVGElement>>, IconProps>;
39
40
  export default Icon;
@@ -12,6 +12,9 @@ declare const _default: {
12
12
  actionCheckCircleFilled: import("react").FunctionComponent<import("react").SVGProps<SVGSVGElement> & {
13
13
  title?: string;
14
14
  }>;
15
+ actionDelete: import("react").FunctionComponent<import("react").SVGProps<SVGSVGElement> & {
16
+ title?: string;
17
+ }>;
15
18
  actionExit: import("react").FunctionComponent<import("react").SVGProps<SVGSVGElement> & {
16
19
  title?: string;
17
20
  }>;
@@ -21,6 +24,9 @@ declare const _default: {
21
24
  actionHelpOutline: import("react").FunctionComponent<import("react").SVGProps<SVGSVGElement> & {
22
25
  title?: string;
23
26
  }>;
27
+ actionHome: import("react").FunctionComponent<import("react").SVGProps<SVGSVGElement> & {
28
+ title?: string;
29
+ }>;
24
30
  actionIdentity: import("react").FunctionComponent<import("react").SVGProps<SVGSVGElement> & {
25
31
  title?: string;
26
32
  }>;
@@ -30,6 +36,12 @@ declare const _default: {
30
36
  actionLaunch: import("react").FunctionComponent<import("react").SVGProps<SVGSVGElement> & {
31
37
  title?: string;
32
38
  }>;
39
+ actionLockClosed: import("react").FunctionComponent<import("react").SVGProps<SVGSVGElement> & {
40
+ title?: string;
41
+ }>;
42
+ actionPayment: import("react").FunctionComponent<import("react").SVGProps<SVGSVGElement> & {
43
+ title?: string;
44
+ }>;
33
45
  actionPower: import("react").FunctionComponent<import("react").SVGProps<SVGSVGElement> & {
34
46
  title?: string;
35
47
  }>;
@@ -66,6 +78,15 @@ declare const _default: {
66
78
  close: import("react").FunctionComponent<import("react").SVGProps<SVGSVGElement> & {
67
79
  title?: string;
68
80
  }>;
81
+ communicationCall: import("react").FunctionComponent<import("react").SVGProps<SVGSVGElement> & {
82
+ title?: string;
83
+ }>;
84
+ communicationChatBubble: import("react").FunctionComponent<import("react").SVGProps<SVGSVGElement> & {
85
+ title?: string;
86
+ }>;
87
+ communicationEmail: import("react").FunctionComponent<import("react").SVGProps<SVGSVGElement> & {
88
+ title?: string;
89
+ }>;
69
90
  decorativeEnvelope: import("react").FunctionComponent<import("react").SVGProps<SVGSVGElement> & {
70
91
  title?: string;
71
92
  }>;
@@ -138,6 +159,9 @@ declare const _default: {
138
159
  moonCrescent: import("react").FunctionComponent<import("react").SVGProps<SVGSVGElement> & {
139
160
  title?: string;
140
161
  }>;
162
+ navigationMoreVert: import("react").FunctionComponent<import("react").SVGProps<SVGSVGElement> & {
163
+ title?: string;
164
+ }>;
141
165
  plus: import("react").FunctionComponent<import("react").SVGProps<SVGSVGElement> & {
142
166
  title?: string;
143
167
  }>;
@@ -1,6 +1,6 @@
1
1
  export declare const iconAlignArray: readonly ["left", "right", "none"];
2
- export declare const iconColorsArray: readonly ["ui.black", "ui.white", "brand.primary", "brand.secondary", "ui.error.primary", "ui.error.secondary", "ui.status.primary", "ui.status.secondary", "ui.success.primary", "ui.success.secondary", "ui.warning.primary", "ui.warning.secondary", "section.blogs.primary", "section.blogs.secondary", "section.books-and-more.primary", "section.books-and-more.secondary", "section.education.primary", "section.education.secondary", "section.locations.primary", "section.locations.secondary", "section.research.primary", "section.research.secondary", "section.research-library.lpa", "section.research-library.schomburg", "section.research-library.schwartzman", "section.whats-on.primary", "section.whats-on.secondary", "dark.ui.error.primary", "dark.ui.error.secondary", "dark.ui.status.primary", "dark.ui.status.secondary", "dark.ui.success.primary", "dark.ui.success.secondary", "dark.ui.warning.primary", "dark.ui.warning.secondary"];
3
- export declare const iconNamesArray: readonly ["accessibilityFull", "accessibilityPartial", "actionCheckCircle", "actionCheckCircleFilled", "actionExit", "actionHelpDefault", "actionHelpOutline", "actionIdentity", "actionIdentityFilled", "actionLaunch", "actionPower", "actionRegistration", "actionSearch", "actionSettings", "alertNotificationImportant", "alertWarningFilled", "alertWarningOutline", "arrow", "building", "check", "clock", "close", "decorativeEnvelope", "decorativeLibraryCard", "decorativeShoppingBag", "download", "errorFilled", "errorOutline", "fileTypeAudio", "fileTypeDoc", "fileTypeGenericDoc", "fileTypeImage", "fileTypePdf", "fileTypeSpreadsheet", "fileTypeVideo", "headset", "legacyAccountFilled", "legacyAccountUnfilled", "legacySocialFacebook", "legacySocialInstagram", "legacySocialTwitter", "legacySocialYoutube", "locator", "mapsPlace", "minus", "moonCrescent", "plus", "search", "socialFacebook", "socialInstagram", "socialPinterest", "socialSoundCloud", "socialSpotify", "socialTikTok", "socialTumblr", "socialTwitter", "socialVimeo", "socialYoutube", "speakerNotes", "sunFull", "utilityAccountFilled", "utilityAccountUnfilled", "utilityHamburger", "utilitySearch"];
2
+ export declare const iconColorsArray: readonly ["transparent", "ui.black", "ui.white", "ui.disabled.primary", "ui.disabled.secondary", "ui.error.primary", "ui.error.secondary", "ui.focus", "ui.link.primary", "ui.link.primary-05", "ui.link.primary-10", "ui.link.secondary", "ui.link.tertiary", "ui.status.primary", "ui.status.secondary", "ui.success.primary", "ui.success.secondary", "ui.test", "ui.warning.primary", "ui.warning.secondary", "ui.bg.default", "ui.bg.hover", "ui.bg.active", "ui.border.default", "ui.border.hover", "ui.typography.heading", "ui.typography.body", "ui.typography.inverse.heading", "ui.typography.inverse.body", "ui.gray.xxxx-dark", "ui.gray.xxx-dark", "ui.gray.xx-dark", "ui.gray.x-dark", "ui.gray.dark", "ui.gray.semi-dark", "ui.gray.medium", "ui.gray.semi-medium", "ui.gray.light-cool", "ui.gray.x-light-cool", "ui.gray.xx-light-cool", "ui.gray.light-warm", "ui.gray.x-light-warm", "brand.primary", "brand.secondary", "section.blogs.primary", "section.blogs.secondary", "section.books-and-more.primary", "section.books-and-more.secondary", "section.connect.primary", "section.connect.secondary", "section.education.primary", "section.education.secondary", "section.locations.primary", "section.locations.secondary", "section.research.primary", "section.research.secondary", "section.research-library.lpa", "section.research-library.schomburg", "section.research-library.schwartzman", "section.whats-on.primary", "section.whats-on.secondary", "dark.brand.primary", "dark.brand.secondary", "dark.section.blogs.primary", "dark.section.blogs.secondary", "dark.section.books-and-more.primary", "dark.section.books-and-more.secondary", "dark.section.connect.primary", "dark.section.connect.secondary", "dark.section.education.primary", "dark.section.education.secondary", "dark.section.locations.primary", "dark.section.locations.secondary", "dark.section.research.primary", "dark.section.research.secondary", "dark.section.research-library.primary", "dark.section.research-library.secondary", "dark.section.whats-on.primary", "dark.section.whats-on.secondary", "dark.ui.disabled.primary", "dark.ui.disabled.secondary", "dark.ui.error.primary", "dark.ui.error.secondary", "dark.ui.focus", "dark.ui.link.primary", "dark.ui.link.primary-05", "dark.ui.link.primary-10", "dark.ui.link.secondary", "dark.ui.link.tertiary", "dark.ui.status.primary", "dark.ui.status.secondary", "dark.ui.success.primary", "dark.ui.success.secondary", "dark.ui.test", "dark.ui.warning.secondary", "dark.ui.warning.primary", "dark.ui.bg.page", "dark.ui.bg.default", "dark.ui.bg.hover", "dark.ui.bg.active", "dark.ui.border.default", "dark.ui.border.hover", "dark.ui.typography.heading", "dark.ui.typography.body", "dark.ui.typography.inverse.heading", "dark.ui.typography.inverse.body"];
3
+ export declare const iconNamesArray: readonly ["accessibilityFull", "accessibilityPartial", "actionCheckCircle", "actionCheckCircleFilled", "actionDelete", "actionExit", "actionHelpDefault", "actionHelpOutline", "actionHome", "actionIdentity", "actionIdentityFilled", "actionLaunch", "actionLockClosed", "actionPayment", "actionPower", "actionRegistration", "actionSearch", "actionSettings", "alertNotificationImportant", "alertWarningFilled", "alertWarningOutline", "arrow", "building", "check", "clock", "close", "communicationCall", "communicationChatBubble", "communicationEmail", "decorativeEnvelope", "decorativeLibraryCard", "decorativeShoppingBag", "download", "errorFilled", "errorOutline", "fileTypeAudio", "fileTypeDoc", "fileTypeGenericDoc", "fileTypeImage", "fileTypePdf", "fileTypeSpreadsheet", "fileTypeVideo", "headset", "legacyAccountFilled", "legacyAccountUnfilled", "legacySocialFacebook", "legacySocialInstagram", "legacySocialTwitter", "legacySocialYoutube", "locator", "mapsPlace", "minus", "moonCrescent", "navigationMoreVert", "plus", "search", "socialFacebook", "socialInstagram", "socialPinterest", "socialSoundCloud", "socialSpotify", "socialTikTok", "socialTumblr", "socialTwitter", "socialVimeo", "socialYoutube", "speakerNotes", "sunFull", "utilityAccountFilled", "utilityAccountUnfilled", "utilityHamburger", "utilitySearch"];
4
4
  export declare const iconRotationsArray: readonly ["rotate0", "rotate90", "rotate180", "rotate270"];
5
5
  export declare const iconSizesArray: readonly ["default", "xsmall", "small", "medium", "large", "xlarge", "xxlarge", "xxxlarge"];
6
6
  export declare const iconTypesArray: readonly ["default", "breadcrumbs"];
@@ -1,4 +1,6 @@
1
+ import { ChakraComponent } from "@chakra-ui/react";
1
2
  import React, { ImgHTMLAttributes } from "react";
3
+ import { DimensionTypes } from "../../helpers/types";
2
4
  export declare const imageRatiosArray: readonly ["fourByThree", "oneByTwo", "original", "sixteenByNine", "square", "threeByFour", "threeByTwo", "twoByOne"];
3
5
  export declare const imageSizesArray: readonly ["default", "xxxsmall", "xxsmall", "xsmall", "small", "medium", "large"];
4
6
  export declare const imageTypesArray: readonly ["default", "circle"];
@@ -36,9 +38,11 @@ interface ImageWrapperProps {
36
38
  className?: string;
37
39
  /** Optional value to control the aspect ratio of the card image; default
38
40
  * value is `"original"` */
39
- aspectRatio?: ImageRatios;
41
+ ratio?: ImageRatios;
40
42
  /** Optional value to control the size of the image */
41
43
  size?: ImageSizes;
44
+ /** Sets the image size based on the width or height. Width by default. */
45
+ sizeBasedOn?: DimensionTypes;
42
46
  }
43
47
  export interface ImageProps extends ImageWrapperProps, ImgHTMLAttributes<HTMLImageElement> {
44
48
  /** Optionally pass in additional Chakra-based styles only for the figure. */
@@ -51,6 +55,9 @@ export interface ImageProps extends ImageWrapperProps, ImgHTMLAttributes<HTMLIma
51
55
  };
52
56
  /** Alternate text description of the image */
53
57
  alt?: string;
58
+ /** Optional value to control the aspect ratio of the card image; default
59
+ * value is `"original"` */
60
+ aspectRatio?: ImageRatios;
54
61
  /** Adding will wrap the image in a <figure> */
55
62
  caption?: string;
56
63
  /** Custom image component */
@@ -64,5 +71,5 @@ export interface ImageProps extends ImageWrapperProps, ImgHTMLAttributes<HTMLIma
64
71
  /** The src attribute is required, and contains the path to the image you want to embed. */
65
72
  src?: string;
66
73
  }
67
- export declare const Image: React.FC<any>;
74
+ export declare const Image: ChakraComponent<React.ForwardRefExoticComponent<ImageProps & React.RefAttributes<HTMLDivElement>>, ImageProps>;
68
75
  export default Image;