From 9abfa31139e47bf6eb1421da1d64313a4be25e28 Mon Sep 17 00:00:00 2001 From: Manzoor Wani Date: Thu, 30 Oct 2025 16:54:22 +0530 Subject: [PATCH 1/2] components: Expose TS types of props for public components --- .../src/alignment-matrix-control/index.tsx | 2 + .../src/angle-picker-control/index.tsx | 2 + packages/components/src/animate/index.tsx | 2 + .../components/src/autocomplete/index.tsx | 2 + .../components/src/base-control/index.tsx | 2 + .../src/border-box-control/index.ts | 2 + .../components/src/border-control/index.ts | 2 + packages/components/src/box-control/index.tsx | 3 + .../components/src/button-group/index.tsx | 2 + packages/components/src/button/index.tsx | 3 + packages/components/src/card/index.ts | 7 ++ .../components/src/checkbox-control/index.tsx | 2 + .../components/src/clipboard-button/index.tsx | 2 + .../components/src/color-indicator/index.tsx | 2 + .../components/src/color-palette/index.tsx | 2 + packages/components/src/color-picker/index.ts | 2 + .../components/src/combobox-control/index.tsx | 2 + packages/components/src/composite/index.tsx | 2 + .../components/src/confirm-dialog/index.tsx | 2 + .../src/custom-gradient-picker/index.tsx | 2 + .../src/custom-select-control/index.tsx | 2 + packages/components/src/dashicon/index.tsx | 2 + packages/components/src/date-time/index.ts | 1 + .../src/dimension-control/index.tsx | 2 + packages/components/src/disabled/index.tsx | 2 + packages/components/src/disclosure/index.tsx | 3 + packages/components/src/draggable/index.tsx | 2 + packages/components/src/drop-zone/index.tsx | 2 + .../components/src/dropdown-menu/index.tsx | 2 + packages/components/src/dropdown/index.tsx | 2 + .../components/src/duotone-picker/index.ts | 2 + packages/components/src/elevation/index.ts | 2 + .../components/src/external-link/index.tsx | 2 + packages/components/src/flex/index.ts | 2 + .../src/focal-point-picker/index.tsx | 2 + .../components/src/focusable-iframe/index.tsx | 2 + .../components/src/font-size-picker/index.tsx | 2 + .../components/src/form-file-upload/index.tsx | 2 + packages/components/src/form-toggle/index.tsx | 2 + .../components/src/form-token-field/index.tsx | 2 + .../components/src/gradient-picker/index.tsx | 2 + packages/components/src/grid/index.ts | 2 + packages/components/src/guide/index.tsx | 2 + packages/components/src/heading/index.ts | 2 + packages/components/src/index.ts | 109 ++++++++++++++++++ .../components/src/input-control/index.tsx | 2 + packages/components/src/item-group/index.ts | 2 + .../src/keyboard-shortcuts/index.tsx | 2 + packages/components/src/menu-group/index.tsx | 2 + packages/components/src/menu-item/index.tsx | 2 + .../src/menu-items-choice/index.tsx | 2 + packages/components/src/modal/index.tsx | 2 + .../src/navigable-container/index.tsx | 2 + packages/components/src/navigation/index.tsx | 2 + packages/components/src/navigator/index.tsx | 2 + packages/components/src/notice/index.tsx | 2 + .../components/src/number-control/index.tsx | 2 + .../components/src/palette-edit/index.tsx | 2 + packages/components/src/panel/index.tsx | 2 + packages/components/src/placeholder/index.tsx | 2 + packages/components/src/popover/index.tsx | 2 + .../components/src/progress-bar/index.tsx | 2 + .../components/src/query-controls/index.tsx | 2 + .../components/src/radio-control/index.tsx | 2 + packages/components/src/radio-group/index.tsx | 3 + .../components/src/range-control/index.tsx | 2 + .../components/src/resizable-box/index.tsx | 2 +- .../src/responsive-wrapper/index.tsx | 2 + packages/components/src/sandbox/index.tsx | 2 + packages/components/src/scrollable/index.ts | 2 + .../components/src/search-control/index.tsx | 2 + .../components/src/select-control/index.tsx | 2 + packages/components/src/slot-fill/index.tsx | 2 + packages/components/src/snackbar/index.tsx | 2 + .../components/src/style-provider/index.tsx | 2 + packages/components/src/surface/index.ts | 2 + packages/components/src/tab-panel/index.tsx | 3 + packages/components/src/tabs/index.tsx | 2 + .../components/src/text-control/index.tsx | 2 + .../components/src/text-highlight/index.tsx | 2 + packages/components/src/text/index.ts | 2 + .../components/src/textarea-control/index.tsx | 2 + packages/components/src/tip/index.tsx | 2 + .../components/src/toggle-control/index.tsx | 2 + .../src/toggle-group-control/index.ts | 2 + .../src/toolbar/{index.js => index.ts} | 4 + .../src/toolbar/toolbar-button/index.tsx | 1 + .../src/toolbar/toolbar-group/index.tsx | 2 + .../src/toolbar/toolbar-item/index.tsx | 1 + .../components/src/toolbar/toolbar/index.tsx | 1 + packages/components/src/tools-panel/index.ts | 2 + packages/components/src/tooltip/index.tsx | 2 + packages/components/src/tree-grid/index.tsx | 2 + packages/components/src/tree-select/index.tsx | 2 + packages/components/src/truncate/index.ts | 2 + .../components/src/unit-control/index.tsx | 3 + packages/components/src/v-stack/index.ts | 2 + .../components/src/visually-hidden/index.ts | 2 + packages/components/src/z-stack/index.ts | 2 + 99 files changed, 313 insertions(+), 1 deletion(-) rename packages/components/src/toolbar/{index.js => index.ts} (62%) diff --git a/packages/components/src/alignment-matrix-control/index.tsx b/packages/components/src/alignment-matrix-control/index.tsx index 0e3c23623883fc..a812320f8e40c9 100644 --- a/packages/components/src/alignment-matrix-control/index.tsx +++ b/packages/components/src/alignment-matrix-control/index.tsx @@ -120,4 +120,6 @@ export const AlignmentMatrixControl = Object.assign( } ); +export type { AlignmentMatrixControlProps }; + export default AlignmentMatrixControl; diff --git a/packages/components/src/angle-picker-control/index.tsx b/packages/components/src/angle-picker-control/index.tsx index 2743746bfd76a2..767f5c6f7b43e4 100644 --- a/packages/components/src/angle-picker-control/index.tsx +++ b/packages/components/src/angle-picker-control/index.tsx @@ -104,4 +104,6 @@ function UnforwardedAnglePickerControl( */ export const AnglePickerControl = forwardRef( UnforwardedAnglePickerControl ); +export type { AnglePickerControlProps }; + export default AnglePickerControl; diff --git a/packages/components/src/animate/index.tsx b/packages/components/src/animate/index.tsx index e819020447bc9e..6df96f4329421e 100644 --- a/packages/components/src/animate/index.tsx +++ b/packages/components/src/animate/index.tsx @@ -69,4 +69,6 @@ export function Animate( { type, options = {}, children }: AnimateProps ) { } ); } +export type { AnimateProps }; + export default Animate; diff --git a/packages/components/src/autocomplete/index.tsx b/packages/components/src/autocomplete/index.tsx index 78be906b64d1f4..6203a481df4aca 100644 --- a/packages/components/src/autocomplete/index.tsx +++ b/packages/components/src/autocomplete/index.tsx @@ -446,6 +446,8 @@ export function useAutocompleteProps( options: UseAutocompleteProps ) { }; } +export type { AutocompleteProps }; + export default function Autocomplete( { children, isSelected, diff --git a/packages/components/src/base-control/index.tsx b/packages/components/src/base-control/index.tsx index 423636a92cd5f0..9fddea7c59be8d 100644 --- a/packages/components/src/base-control/index.tsx +++ b/packages/components/src/base-control/index.tsx @@ -166,4 +166,6 @@ export const BaseControl = Object.assign( } ); +export type { BaseControlProps }; + export default BaseControl; diff --git a/packages/components/src/border-box-control/index.ts b/packages/components/src/border-box-control/index.ts index 97f56a171ac728..c2751998118151 100644 --- a/packages/components/src/border-box-control/index.ts +++ b/packages/components/src/border-box-control/index.ts @@ -1,3 +1,5 @@ export { default as BorderBoxControl } from './border-box-control/component'; export { useBorderBoxControl } from './border-box-control/hook'; export { hasSplitBorders, isEmptyBorder, isDefinedBorder } from './utils'; + +export type { BorderBoxControlProps } from './types'; diff --git a/packages/components/src/border-control/index.ts b/packages/components/src/border-control/index.ts index a5eeb763a7c9c1..abc5edf0e50648 100644 --- a/packages/components/src/border-control/index.ts +++ b/packages/components/src/border-control/index.ts @@ -1,2 +1,4 @@ export { default as BorderControl } from './border-control/component'; export { useBorderControl } from './border-control/hook'; + +export type { BorderControlProps } from './types'; diff --git a/packages/components/src/box-control/index.tsx b/packages/components/src/box-control/index.tsx index c5bf28a13de3ad..4e9754a16246ee 100644 --- a/packages/components/src/box-control/index.tsx +++ b/packages/components/src/box-control/index.tsx @@ -234,4 +234,7 @@ function BoxControl( { } export { applyValueToSides } from './utils'; + +export type { BoxControlProps }; + export default BoxControl; diff --git a/packages/components/src/button-group/index.tsx b/packages/components/src/button-group/index.tsx index e073b0c3b359b8..ba6b8732ef8df4 100644 --- a/packages/components/src/button-group/index.tsx +++ b/packages/components/src/button-group/index.tsx @@ -54,4 +54,6 @@ function UnforwardedButtonGroup( */ export const ButtonGroup = forwardRef( UnforwardedButtonGroup ); +export type { ButtonGroupProps }; + export default ButtonGroup; diff --git a/packages/components/src/button/index.tsx b/packages/components/src/button/index.tsx index ca4533c679108b..4803426191772e 100644 --- a/packages/components/src/button/index.tsx +++ b/packages/components/src/button/index.tsx @@ -304,4 +304,7 @@ export function UnforwardedButton( * ``` */ export const Button = forwardRef( UnforwardedButton ); + +export type { ButtonProps }; + export default Button; diff --git a/packages/components/src/card/index.ts b/packages/components/src/card/index.ts index 53d9e06532e706..0b1050858fad9b 100644 --- a/packages/components/src/card/index.ts +++ b/packages/components/src/card/index.ts @@ -4,3 +4,10 @@ export { default as CardDivider, useCardDivider } from './card-divider'; export { default as CardFooter, useCardFooter } from './card-footer'; export { default as CardHeader, useCardHeader } from './card-header'; export { default as CardMedia, useCardMedia } from './card-media'; +export type { + Props as CardProps, + BodyProps as CardBodyProps, + FooterProps as CardFooterProps, + HeaderProps as CardHeaderProps, + MediaProps as CardMediaProps, +} from './types'; diff --git a/packages/components/src/checkbox-control/index.tsx b/packages/components/src/checkbox-control/index.tsx index 98cf15dd228c14..2d557aac1390ba 100644 --- a/packages/components/src/checkbox-control/index.tsx +++ b/packages/components/src/checkbox-control/index.tsx @@ -155,4 +155,6 @@ export function CheckboxControl( ); } +export type { CheckboxControlProps }; + export default CheckboxControl; diff --git a/packages/components/src/clipboard-button/index.tsx b/packages/components/src/clipboard-button/index.tsx index 492ab64b7290e2..179943a220825d 100644 --- a/packages/components/src/clipboard-button/index.tsx +++ b/packages/components/src/clipboard-button/index.tsx @@ -19,6 +19,8 @@ import type { WordPressComponentProps } from '../context'; const TIMEOUT = 4000; +export type { ClipboardButtonProps }; + export default function ClipboardButton( { className, children, diff --git a/packages/components/src/color-indicator/index.tsx b/packages/components/src/color-indicator/index.tsx index 9d4c0de452b246..3c3a2f853eba66 100644 --- a/packages/components/src/color-indicator/index.tsx +++ b/packages/components/src/color-indicator/index.tsx @@ -44,4 +44,6 @@ function UnforwardedColorIndicator( */ export const ColorIndicator = forwardRef( UnforwardedColorIndicator ); +export type { ColorIndicatorProps }; + export default ColorIndicator; diff --git a/packages/components/src/color-palette/index.tsx b/packages/components/src/color-palette/index.tsx index eb981e8b9acc70..17deb352d755fc 100644 --- a/packages/components/src/color-palette/index.tsx +++ b/packages/components/src/color-palette/index.tsx @@ -366,4 +366,6 @@ function UnforwardedColorPalette( */ export const ColorPalette = forwardRef( UnforwardedColorPalette ); +export type { ColorPaletteProps }; + export default ColorPalette; diff --git a/packages/components/src/color-picker/index.ts b/packages/components/src/color-picker/index.ts index 876ebb6af499fd..39bb8f0d0f67c7 100644 --- a/packages/components/src/color-picker/index.ts +++ b/packages/components/src/color-picker/index.ts @@ -2,3 +2,5 @@ * Internal dependencies */ export { LegacyAdapter as ColorPicker } from './legacy-adapter'; + +export type { ColorPickerProps } from './types'; diff --git a/packages/components/src/combobox-control/index.tsx b/packages/components/src/combobox-control/index.tsx index 4dc0fccf5917f2..e8c5ee22d20dd8 100644 --- a/packages/components/src/combobox-control/index.tsx +++ b/packages/components/src/combobox-control/index.tsx @@ -405,4 +405,6 @@ function ComboboxControl( props: ComboboxControlProps ) { /* eslint-enable jsx-a11y/no-static-element-interactions */ } +export type { ComboboxControlProps }; + export default ComboboxControl; diff --git a/packages/components/src/composite/index.tsx b/packages/components/src/composite/index.tsx index 8eb562f5bdab38..edc858949d648a 100644 --- a/packages/components/src/composite/index.tsx +++ b/packages/components/src/composite/index.tsx @@ -249,3 +249,5 @@ export const Composite = Object.assign( } ), } ); + +export type { CompositeProps } from './types'; diff --git a/packages/components/src/confirm-dialog/index.tsx b/packages/components/src/confirm-dialog/index.tsx index c7a35aabe032fe..bd107329d650dc 100644 --- a/packages/components/src/confirm-dialog/index.tsx +++ b/packages/components/src/confirm-dialog/index.tsx @@ -4,3 +4,5 @@ import ConfirmDialog from './component'; export { ConfirmDialog }; + +export type { ConfirmDialogProps } from './types'; diff --git a/packages/components/src/custom-gradient-picker/index.tsx b/packages/components/src/custom-gradient-picker/index.tsx index 8d53cd9f3d0ea2..4ff4392aadc000 100644 --- a/packages/components/src/custom-gradient-picker/index.tsx +++ b/packages/components/src/custom-gradient-picker/index.tsx @@ -208,4 +208,6 @@ export function CustomGradientPicker( { ); } +export type { CustomGradientPickerProps }; + export default CustomGradientPicker; diff --git a/packages/components/src/custom-select-control/index.tsx b/packages/components/src/custom-select-control/index.tsx index e014e4bc642eef..401907e67b12c6 100644 --- a/packages/components/src/custom-select-control/index.tsx +++ b/packages/components/src/custom-select-control/index.tsx @@ -212,4 +212,6 @@ function CustomSelectControl< T extends CustomSelectOption >( ); } +export type { CustomSelectProps }; + export default CustomSelectControl; diff --git a/packages/components/src/dashicon/index.tsx b/packages/components/src/dashicon/index.tsx index d0abe7374da10d..0f042e40ae4c3b 100644 --- a/packages/components/src/dashicon/index.tsx +++ b/packages/components/src/dashicon/index.tsx @@ -48,4 +48,6 @@ function Dashicon( { return ; } +export type { DashiconProps }; + export default Dashicon; diff --git a/packages/components/src/date-time/index.ts b/packages/components/src/date-time/index.ts index a103bac0d30efb..0a1c5fd0b29463 100644 --- a/packages/components/src/date-time/index.ts +++ b/packages/components/src/date-time/index.ts @@ -7,3 +7,4 @@ import { default as DateTimePicker } from './date-time'; export { DatePicker, TimePicker }; export default DateTimePicker; +export type { DatePickerProps, TimeInputProps, TimePickerProps } from './types'; diff --git a/packages/components/src/dimension-control/index.tsx b/packages/components/src/dimension-control/index.tsx index ffdfaeb84ee51d..01a0b60a0624ef 100644 --- a/packages/components/src/dimension-control/index.tsx +++ b/packages/components/src/dimension-control/index.tsx @@ -129,4 +129,6 @@ export function DimensionControl( props: DimensionControlProps ) { ); } +export type { DimensionControlProps }; + export default DimensionControl; diff --git a/packages/components/src/disabled/index.tsx b/packages/components/src/disabled/index.tsx index 25fd72f1983bf5..820b9f4df81a61 100644 --- a/packages/components/src/disabled/index.tsx +++ b/packages/components/src/disabled/index.tsx @@ -89,4 +89,6 @@ function Disabled( { Disabled.Context = Context; Disabled.Consumer = Consumer; +export type { DisabledProps }; + export default Disabled; diff --git a/packages/components/src/disclosure/index.tsx b/packages/components/src/disclosure/index.tsx index fa8570fc1d4c5b..0af6390fb69656 100644 --- a/packages/components/src/disclosure/index.tsx +++ b/packages/components/src/disclosure/index.tsx @@ -40,4 +40,7 @@ const UnforwardedDisclosureContent = ( }; export const DisclosureContent = forwardRef( UnforwardedDisclosureContent ); + +export type { DisclosureContentProps }; + export default DisclosureContent; diff --git a/packages/components/src/draggable/index.tsx b/packages/components/src/draggable/index.tsx index b9dea8fed43061..c8091b4dc60e11 100644 --- a/packages/components/src/draggable/index.tsx +++ b/packages/components/src/draggable/index.tsx @@ -259,4 +259,6 @@ export function Draggable( { ); } +export type { DraggableProps }; + export default Draggable; diff --git a/packages/components/src/drop-zone/index.tsx b/packages/components/src/drop-zone/index.tsx index 16854d21e98bda..8740a8aaa642e2 100644 --- a/packages/components/src/drop-zone/index.tsx +++ b/packages/components/src/drop-zone/index.tsx @@ -137,4 +137,6 @@ export function DropZoneComponent( { ); } +export type { DropZoneProps }; + export default DropZoneComponent; diff --git a/packages/components/src/dropdown-menu/index.tsx b/packages/components/src/dropdown-menu/index.tsx index 195595fb9dc0de..7d0e21da22418c 100644 --- a/packages/components/src/dropdown-menu/index.tsx +++ b/packages/components/src/dropdown-menu/index.tsx @@ -304,4 +304,6 @@ export const DropdownMenu = contextConnectWithoutRef( 'DropdownMenu' ); +export type { DropdownMenuProps }; + export default DropdownMenu; diff --git a/packages/components/src/dropdown/index.tsx b/packages/components/src/dropdown/index.tsx index 3530d3b1e8de23..446232b46de5df 100644 --- a/packages/components/src/dropdown/index.tsx +++ b/packages/components/src/dropdown/index.tsx @@ -182,4 +182,6 @@ const UnconnectedDropdown = ( */ export const Dropdown = contextConnect( UnconnectedDropdown, 'Dropdown' ); +export type { DropdownProps }; + export default Dropdown; diff --git a/packages/components/src/duotone-picker/index.ts b/packages/components/src/duotone-picker/index.ts index 0043b439029001..122d9fac247bd6 100644 --- a/packages/components/src/duotone-picker/index.ts +++ b/packages/components/src/duotone-picker/index.ts @@ -1,2 +1,4 @@ export { default as DuotonePicker } from './duotone-picker'; export { default as DuotoneSwatch } from './duotone-swatch'; + +export type { DuotonePickerProps } from './types'; diff --git a/packages/components/src/elevation/index.ts b/packages/components/src/elevation/index.ts index dcf1b5cbf71e2b..a8b17519e144e8 100644 --- a/packages/components/src/elevation/index.ts +++ b/packages/components/src/elevation/index.ts @@ -1,2 +1,4 @@ export { default as Elevation } from './component'; export * from './hook'; + +export type { ElevationProps } from './types'; diff --git a/packages/components/src/external-link/index.tsx b/packages/components/src/external-link/index.tsx index 0927effb3ae672..844a8bedf42721 100644 --- a/packages/components/src/external-link/index.tsx +++ b/packages/components/src/external-link/index.tsx @@ -93,4 +93,6 @@ function UnforwardedExternalLink( */ export const ExternalLink = forwardRef( UnforwardedExternalLink ); +export type { ExternalLinkProps }; + export default ExternalLink; diff --git a/packages/components/src/flex/index.ts b/packages/components/src/flex/index.ts index 8f320728aba4e3..f9c47674784a0f 100644 --- a/packages/components/src/flex/index.ts +++ b/packages/components/src/flex/index.ts @@ -1,3 +1,5 @@ export { default as Flex, useFlex } from './flex'; export { default as FlexItem, useFlexItem } from './flex-item'; export { default as FlexBlock, useFlexBlock } from './flex-block'; + +export type { FlexProps } from './types'; diff --git a/packages/components/src/focal-point-picker/index.tsx b/packages/components/src/focal-point-picker/index.tsx index 3485893860f322..d113b0da5521bd 100644 --- a/packages/components/src/focal-point-picker/index.tsx +++ b/packages/components/src/focal-point-picker/index.tsx @@ -305,4 +305,6 @@ export function FocalPointPicker( { ); } +export type { FocalPointPickerProps }; + export default FocalPointPicker; diff --git a/packages/components/src/focusable-iframe/index.tsx b/packages/components/src/focusable-iframe/index.tsx index ba1fae45c2928a..58d2b3c939d8a3 100644 --- a/packages/components/src/focusable-iframe/index.tsx +++ b/packages/components/src/focusable-iframe/index.tsx @@ -8,6 +8,8 @@ import deprecated from '@wordpress/deprecated'; */ import type { FocusableIframeProps } from './types'; +export type { FocusableIframeProps }; + export default function FocusableIframe( { iframeRef, ...props diff --git a/packages/components/src/font-size-picker/index.tsx b/packages/components/src/font-size-picker/index.tsx index b2a6ad01ee1114..477d8c6ba04dce 100644 --- a/packages/components/src/font-size-picker/index.tsx +++ b/packages/components/src/font-size-picker/index.tsx @@ -297,4 +297,6 @@ const UnforwardedFontSizePicker = ( export const FontSizePicker = forwardRef( UnforwardedFontSizePicker ); +export type { FontSizePickerProps }; + export default FontSizePicker; diff --git a/packages/components/src/form-file-upload/index.tsx b/packages/components/src/form-file-upload/index.tsx index 5e1466cf9c79d2..f07426856e7447 100644 --- a/packages/components/src/form-file-upload/index.tsx +++ b/packages/components/src/form-file-upload/index.tsx @@ -82,4 +82,6 @@ export function FormFileUpload( { ); } +export type { FormFileUploadProps }; + export default FormFileUpload; diff --git a/packages/components/src/form-toggle/index.tsx b/packages/components/src/form-toggle/index.tsx index 37cc312da4f4d4..52ed9736a1392c 100644 --- a/packages/components/src/form-toggle/index.tsx +++ b/packages/components/src/form-toggle/index.tsx @@ -80,4 +80,6 @@ function UnforwardedFormToggle( */ export const FormToggle = forwardRef( UnforwardedFormToggle ); +export type { FormToggleProps }; + export default FormToggle; diff --git a/packages/components/src/form-token-field/index.tsx b/packages/components/src/form-token-field/index.tsx index b16a5366884291..e494805afd421a 100644 --- a/packages/components/src/form-token-field/index.tsx +++ b/packages/components/src/form-token-field/index.tsx @@ -779,4 +779,6 @@ export function FormTokenField( props: FormTokenFieldProps ) { /* eslint-enable jsx-a11y/no-static-element-interactions */ } +export type { FormTokenFieldProps }; + export default FormTokenField; diff --git a/packages/components/src/gradient-picker/index.tsx b/packages/components/src/gradient-picker/index.tsx index 63867f5e970a47..e9f41bbfffe3b8 100644 --- a/packages/components/src/gradient-picker/index.tsx +++ b/packages/components/src/gradient-picker/index.tsx @@ -245,4 +245,6 @@ export function GradientPicker( { ); } +export type { GradientPickerComponentProps as GradientPickerProps }; + export default GradientPicker; diff --git a/packages/components/src/grid/index.ts b/packages/components/src/grid/index.ts index 7085d14bf0d5ca..10aaef236fdecf 100644 --- a/packages/components/src/grid/index.ts +++ b/packages/components/src/grid/index.ts @@ -1,2 +1,4 @@ export { default as Grid } from './component'; export { default as useGrid } from './hook'; + +export type { GridProps } from './types'; diff --git a/packages/components/src/guide/index.tsx b/packages/components/src/guide/index.tsx index 09d9fa2d000ab8..31d87f45c77f49 100644 --- a/packages/components/src/guide/index.tsx +++ b/packages/components/src/guide/index.tsx @@ -177,4 +177,6 @@ function Guide( { ); } +export type { GuideProps }; + export default Guide; diff --git a/packages/components/src/heading/index.ts b/packages/components/src/heading/index.ts index 1371331423bdd6..2068d55326a1e8 100644 --- a/packages/components/src/heading/index.ts +++ b/packages/components/src/heading/index.ts @@ -1,2 +1,4 @@ export { default as Heading } from './component'; export { useHeading } from './hook'; + +export type { HeadingProps } from './types'; diff --git a/packages/components/src/index.ts b/packages/components/src/index.ts index 2acd609992d6ad..5d1ea51fdf1464 100644 --- a/packages/components/src/index.ts +++ b/packages/components/src/index.ts @@ -17,17 +17,22 @@ export { default as __experimentalAlignmentMatrixControl, default as AlignmentMatrixControl, } from './alignment-matrix-control'; +export type { AlignmentMatrixControlProps } from './alignment-matrix-control'; export { default as Animate, getAnimateClassName as __unstableGetAnimateClassName, } from './animate'; +export type { AnimateProps } from './animate'; export { __unstableMotion, __unstableAnimatePresence } from './animation'; export { default as AnglePickerControl } from './angle-picker-control'; +export type { AnglePickerControlProps } from './angle-picker-control'; export { default as Autocomplete, useAutocompleteProps as __unstableUseAutocompleteProps, } from './autocomplete'; +export type { AutocompleteProps } from './autocomplete'; export { default as BaseControl, useBaseControlProps } from './base-control'; +export type { BaseControlProps } from './base-control'; export { /** @deprecated Import `BorderBoxControl` instead. */ BorderBoxControl as __experimentalBorderBoxControl, @@ -36,19 +41,24 @@ export { isDefinedBorder as __experimentalIsDefinedBorder, isEmptyBorder as __experimentalIsEmptyBorder, } from './border-box-control'; +export type { BorderBoxControlProps } from './border-box-control'; export { /** @deprecated Import `BorderControl` instead. */ BorderControl as __experimentalBorderControl, BorderControl, } from './border-control'; +export type { BorderControlProps } from './border-control'; export { /** @deprecated Import `BoxControl` instead. */ default as __experimentalBoxControl, default as BoxControl, applyValueToSides as __experimentalApplyValueToSides, } from './box-control'; +export type { BoxControlProps } from './box-control'; export { default as Button } from './button'; +export type { ButtonProps } from './button'; export { default as ButtonGroup } from './button-group'; +export type { ButtonGroupProps } from './button-group'; export { Card, CardBody, @@ -57,13 +67,27 @@ export { CardHeader, CardMedia, } from './card'; +export type { + CardProps, + CardBodyProps, + CardFooterProps, + CardHeaderProps, + CardMediaProps, +} from './card'; export { default as CheckboxControl } from './checkbox-control'; +export type { CheckboxControlProps } from './checkbox-control'; export { default as ClipboardButton } from './clipboard-button'; +export type { ClipboardButtonProps } from './clipboard-button'; export { default as __experimentalPaletteEdit } from './palette-edit'; +export type { PaletteEditProps } from './palette-edit'; export { default as ColorIndicator } from './color-indicator'; +export type { ColorIndicatorProps } from './color-indicator'; export { default as ColorPalette } from './color-palette'; +export type { ColorPaletteProps } from './color-palette'; export { ColorPicker } from './color-picker'; +export type { ColorPickerProps } from './color-picker'; export { default as ComboboxControl } from './combobox-control'; +export type { ComboboxControlProps } from './combobox-control'; export { Composite as __unstableComposite, CompositeGroup as __unstableCompositeGroup, @@ -71,36 +95,68 @@ export { useCompositeState as __unstableUseCompositeState, } from './composite/legacy'; export { Composite } from './composite'; +export type { CompositeProps } from './composite'; export { ConfirmDialog as __experimentalConfirmDialog } from './confirm-dialog'; +export type { ConfirmDialogProps } from './confirm-dialog'; export { default as CustomSelectControl } from './custom-select-control'; +export type { CustomSelectProps } from './custom-select-control'; export { default as Dashicon } from './dashicon'; +export type { DashiconProps } from './dashicon'; export { default as DateTimePicker, DatePicker, TimePicker } from './date-time'; +export type { + DatePickerProps, + TimeInputProps, + TimePickerProps, +} from './date-time'; export { default as __experimentalDimensionControl } from './dimension-control'; +export type { DimensionControlProps } from './dimension-control'; export { default as Disabled } from './disabled'; +export type { DisabledProps } from './disabled'; export { DisclosureContent as __unstableDisclosureContent } from './disclosure'; +export type { DisclosureContentProps } from './disclosure'; export { Divider as __experimentalDivider } from './divider'; +export type { DividerProps } from './divider'; export { default as Draggable } from './draggable'; +export type { DraggableProps } from './draggable'; export { default as DropZone } from './drop-zone'; +export type { DropZoneProps } from './drop-zone'; export { default as DropZoneProvider } from './drop-zone/provider'; export { default as Dropdown } from './dropdown'; +export type { DropdownProps } from './dropdown'; export { default as __experimentalDropdownContentWrapper } from './dropdown/dropdown-content-wrapper'; export { default as DropdownMenu } from './dropdown-menu'; +export type { DropdownMenuProps } from './dropdown-menu'; export { DuotoneSwatch, DuotonePicker } from './duotone-picker'; +export type { DuotonePickerProps } from './duotone-picker'; export { Elevation as __experimentalElevation } from './elevation'; +export type { ElevationProps } from './elevation'; export { default as ExternalLink } from './external-link'; +export type { ExternalLinkProps } from './external-link'; export { Flex, FlexBlock, FlexItem } from './flex'; +export type { FlexProps } from './flex'; export { default as FocalPointPicker } from './focal-point-picker'; +export type { FocalPointPickerProps } from './focal-point-picker'; export { default as FocusableIframe } from './focusable-iframe'; +export type { FocusableIframeProps } from './focusable-iframe'; export { default as FontSizePicker } from './font-size-picker'; +export type { FontSizePickerProps } from './font-size-picker'; export { default as FormFileUpload } from './form-file-upload'; +export type { FormFileUploadProps } from './form-file-upload'; export { default as FormToggle } from './form-toggle'; +export type { FormToggleProps } from './form-toggle'; export { default as FormTokenField } from './form-token-field'; +export type { FormTokenFieldProps } from './form-token-field'; export { default as GradientPicker } from './gradient-picker'; +export type { GradientPickerProps } from './gradient-picker'; export { default as CustomGradientPicker } from './custom-gradient-picker'; +export type { CustomGradientPickerProps } from './custom-gradient-picker'; export { Grid as __experimentalGrid } from './grid'; +export type { GridProps } from './grid'; export { default as Guide } from './guide'; +export type { GuideProps } from './guide'; export { default as GuidePage } from './guide/page'; export { Heading as __experimentalHeading } from './heading'; +export type { HeadingProps } from './heading'; export { HStack as __experimentalHStack } from './h-stack'; export { default as Icon } from './icon'; export type { IconType } from './icon'; @@ -109,17 +165,26 @@ export { ItemGroup as __experimentalItemGroup, Item as __experimentalItem, } from './item-group'; +export type { ItemGroupProps } from './item-group'; export { default as __experimentalInputControl } from './input-control'; +export type { InputControlProps } from './input-control'; export { default as __experimentalInputControlPrefixWrapper } from './input-control/input-prefix-wrapper'; export { default as __experimentalInputControlSuffixWrapper } from './input-control/input-suffix-wrapper'; export { default as KeyboardShortcuts } from './keyboard-shortcuts'; +export type { KeyboardShortcutsProps } from './keyboard-shortcuts'; export { default as MenuGroup } from './menu-group'; +export type { MenuGroupProps } from './menu-group'; export { default as MenuItem } from './menu-item'; +export type { MenuItemProps } from './menu-item'; export { default as MenuItemsChoice } from './menu-items-choice'; +export type { MenuItemsChoiceProps } from './menu-items-choice'; export { default as Modal } from './modal'; +export type { ModalProps } from './modal'; export { default as ScrollLock } from './scroll-lock'; export { NavigableMenu, TabbableContainer } from './navigable-container'; +export type { NavigableContainerProps } from './navigable-container'; export { default as __experimentalNavigation } from './navigation'; +export type { NavigationProps } from './navigation'; export { default as __experimentalNavigationBackButton } from './navigation/back-button'; export { default as __experimentalNavigationGroup } from './navigation/group'; export { default as __experimentalNavigationItem } from './navigation/item'; @@ -142,44 +207,71 @@ export { /** @deprecated Import `useNavigator` instead. */ useNavigator as __experimentalUseNavigator, } from './navigator'; +export type { NavigatorProps } from './navigator'; export { default as Notice } from './notice'; +export type { NoticeProps } from './notice'; export { default as __experimentalNumberControl } from './number-control'; +export type { NumberControlProps } from './number-control'; export { default as NoticeList } from './notice/list'; export { default as Panel } from './panel'; +export type { PanelProps } from './panel'; export { default as PanelBody } from './panel/body'; export { default as PanelHeader } from './panel/header'; export { default as PanelRow } from './panel/row'; export { default as Placeholder } from './placeholder'; +export type { PlaceholderProps } from './placeholder'; export { default as Popover } from './popover'; +export type { PopoverProps } from './popover'; export { default as ProgressBar } from './progress-bar'; +export type { ProgressBarProps } from './progress-bar'; export { default as QueryControls } from './query-controls'; +export type { QueryControlsProps } from './query-controls'; export { default as __experimentalRadio } from './radio-group/radio'; export { default as __experimentalRadioGroup } from './radio-group'; +export type { RadioGroupProps } from './radio-group'; export { default as RadioControl } from './radio-control'; +export type { RadioControlProps } from './radio-control'; export { default as RangeControl } from './range-control'; +export type { RangeControlProps } from './range-control'; export { default as ResizableBox } from './resizable-box'; +export type { ResizableBoxProps } from './resizable-box'; export { default as ResponsiveWrapper } from './responsive-wrapper'; +export type { ResponsiveWrapperProps } from './responsive-wrapper'; export { default as SandBox } from './sandbox'; +export type { SandBoxProps } from './sandbox'; export { default as SearchControl } from './search-control'; +export type { SearchControlProps } from './search-control'; export { default as SelectControl } from './select-control'; +export type { SelectControlProps } from './select-control'; export { default as Snackbar } from './snackbar'; +export type { SnackbarProps } from './snackbar'; export { default as SnackbarList } from './snackbar/list'; export { Spacer as __experimentalSpacer } from './spacer'; export { Scrollable as __experimentalScrollable } from './scrollable'; +export type { ScrollableProps } from './scrollable'; export { default as Spinner } from './spinner'; export { Surface as __experimentalSurface } from './surface'; +export type { SurfaceProps } from './surface'; export { default as TabPanel } from './tab-panel'; +export type { TabPanelProps } from './tab-panel'; export { Text as __experimentalText } from './text'; +export type { TextProps } from './text'; export { default as TextControl } from './text-control'; +export type { TextControlProps } from './text-control'; export { default as TextareaControl } from './textarea-control'; +export type { TextareaControlProps } from './textarea-control'; export { default as TextHighlight } from './text-highlight'; +export type { TextHighlightProps } from './text-highlight'; export { default as Tip } from './tip'; +export type { TipProps } from './tip'; export { default as ToggleControl } from './toggle-control'; +export type { ToggleControlProps } from './toggle-control'; export { ToggleGroupControl as __experimentalToggleGroupControl, ToggleGroupControlOption as __experimentalToggleGroupControlOption, ToggleGroupControlOptionIcon as __experimentalToggleGroupControlOptionIcon, } from './toggle-group-control'; +export type { ToggleGroupControlProps } from './toggle-group-control'; export { Toolbar, ToolbarButton, @@ -188,28 +280,42 @@ export { ToolbarGroup, ToolbarItem, } from './toolbar'; +export type { + ToolbarProps, + ToolbarButtonProps, + ToolbarGroupProps, + ToolbarItemProps, +} from './toolbar'; export { ToolsPanel as __experimentalToolsPanel, ToolsPanelItem as __experimentalToolsPanelItem, ToolsPanelContext as __experimentalToolsPanelContext, } from './tools-panel'; +export type { ToolsPanelProps } from './tools-panel'; export { default as Tooltip } from './tooltip'; +export type { TooltipProps } from './tooltip'; export { default as __experimentalTreeGrid, TreeGridRow as __experimentalTreeGridRow, TreeGridCell as __experimentalTreeGridCell, TreeGridItem as __experimentalTreeGridItem, } from './tree-grid'; +export type { TreeGridProps } from './tree-grid'; export { default as TreeSelect } from './tree-select'; +export type { TreeSelectProps } from './tree-select'; export { Truncate as __experimentalTruncate } from './truncate'; +export type { TruncateProps } from './truncate'; export { default as __experimentalUnitControl, useCustomUnits as __experimentalUseCustomUnits, parseQuantityAndUnitFromRawValue as __experimentalParseQuantityAndUnitFromRawValue, } from './unit-control'; +export type { UnitControlProps } from './unit-control'; export { View as __experimentalView } from './view'; export { VisuallyHidden } from './visually-hidden'; +export type { VisuallyHiddenProps } from './visually-hidden'; export { VStack as __experimentalVStack } from './v-stack'; +export type { VStackProps } from './v-stack'; export { default as IsolatedEventContainer } from './isolated-event-container'; export { createSlotFill, @@ -219,8 +325,11 @@ export { useSlot as __experimentalUseSlot, useSlotFills as __experimentalUseSlotFills, } from './slot-fill'; +export type { FillProps } from './slot-fill'; export { default as __experimentalStyleProvider } from './style-provider'; +export type { StyleProviderProps } from './style-provider'; export { ZStack as __experimentalZStack } from './z-stack'; +export type { ZStackProps } from './z-stack'; // Higher-Order Components. export { diff --git a/packages/components/src/input-control/index.tsx b/packages/components/src/input-control/index.tsx index d346d1b31b1118..e3895d4d02e8a8 100644 --- a/packages/components/src/input-control/index.tsx +++ b/packages/components/src/input-control/index.tsx @@ -144,4 +144,6 @@ export function UnforwardedInputControl( */ export const InputControl = forwardRef( UnforwardedInputControl ); +export type { InputControlProps }; + export default InputControl; diff --git a/packages/components/src/item-group/index.ts b/packages/components/src/item-group/index.ts index 25412ed60e0f66..baa094759801f8 100644 --- a/packages/components/src/item-group/index.ts +++ b/packages/components/src/item-group/index.ts @@ -1,2 +1,4 @@ export { default as Item } from './item'; export { default as ItemGroup } from './item-group'; + +export type { ItemGroupProps } from './types'; diff --git a/packages/components/src/keyboard-shortcuts/index.tsx b/packages/components/src/keyboard-shortcuts/index.tsx index cc6835c56666d8..8a1f552dc439e2 100644 --- a/packages/components/src/keyboard-shortcuts/index.tsx +++ b/packages/components/src/keyboard-shortcuts/index.tsx @@ -90,4 +90,6 @@ function KeyboardShortcuts( { ); } +export type { KeyboardShortcutsProps }; + export default KeyboardShortcuts; diff --git a/packages/components/src/menu-group/index.tsx b/packages/components/src/menu-group/index.tsx index 4148db8f369557..4f12234f0b6431 100644 --- a/packages/components/src/menu-group/index.tsx +++ b/packages/components/src/menu-group/index.tsx @@ -60,4 +60,6 @@ export function MenuGroup( props: MenuGroupProps ) { ); } +export type { MenuGroupProps }; + export default MenuGroup; diff --git a/packages/components/src/menu-item/index.tsx b/packages/components/src/menu-item/index.tsx index 6c83b16b493dd7..9cc0935225ca19 100644 --- a/packages/components/src/menu-item/index.tsx +++ b/packages/components/src/menu-item/index.tsx @@ -110,4 +110,6 @@ function UnforwardedMenuItem( */ export const MenuItem = forwardRef( UnforwardedMenuItem ); +export type { MenuItemProps }; + export default MenuItem; diff --git a/packages/components/src/menu-items-choice/index.tsx b/packages/components/src/menu-items-choice/index.tsx index ecdf9ba47242d7..cfbb23dadcf2ff 100644 --- a/packages/components/src/menu-items-choice/index.tsx +++ b/packages/components/src/menu-items-choice/index.tsx @@ -81,4 +81,6 @@ function MenuItemsChoice( { ); } +export type { MenuItemsChoiceProps }; + export default MenuItemsChoice; diff --git a/packages/components/src/modal/index.tsx b/packages/components/src/modal/index.tsx index fe7a20dc71042d..28ee6e162391da 100644 --- a/packages/components/src/modal/index.tsx +++ b/packages/components/src/modal/index.tsx @@ -415,4 +415,6 @@ function UnforwardedModal( */ export const Modal = forwardRef( UnforwardedModal ); +export type { ModalProps }; + export default Modal; diff --git a/packages/components/src/navigable-container/index.tsx b/packages/components/src/navigable-container/index.tsx index e98f1b1236d7b4..c22459f8653538 100644 --- a/packages/components/src/navigable-container/index.tsx +++ b/packages/components/src/navigable-container/index.tsx @@ -3,3 +3,5 @@ */ export { default as NavigableMenu } from './menu'; export { default as TabbableContainer } from './tabbable'; + +export type { NavigableContainerProps } from './types'; diff --git a/packages/components/src/navigation/index.tsx b/packages/components/src/navigation/index.tsx index ef37caf2f52140..16923c6359d533 100644 --- a/packages/components/src/navigation/index.tsx +++ b/packages/components/src/navigation/index.tsx @@ -149,4 +149,6 @@ export function Navigation( { ); } +export type { NavigationProps }; + export default Navigation; diff --git a/packages/components/src/navigator/index.tsx b/packages/components/src/navigator/index.tsx index 1d9ae95441e01a..29a4277417fc2e 100644 --- a/packages/components/src/navigator/index.tsx +++ b/packages/components/src/navigator/index.tsx @@ -129,3 +129,5 @@ export const Navigator = Object.assign( TopLevelNavigator, { displayName: 'Navigator.BackButton', } ), } ); + +export type { NavigatorProps } from './types'; diff --git a/packages/components/src/notice/index.tsx b/packages/components/src/notice/index.tsx index 6f3ca94d4f734a..084c4a5c39a7ae 100644 --- a/packages/components/src/notice/index.tsx +++ b/packages/components/src/notice/index.tsx @@ -172,4 +172,6 @@ function Notice( { ); } +export type { NoticeProps }; + export default Notice; diff --git a/packages/components/src/number-control/index.tsx b/packages/components/src/number-control/index.tsx index 2302d10e2d45bd..d59dd841ec1ef0 100644 --- a/packages/components/src/number-control/index.tsx +++ b/packages/components/src/number-control/index.tsx @@ -282,4 +282,6 @@ function UnforwardedNumberControl( export const NumberControl = forwardRef( UnforwardedNumberControl ); +export type { NumberControlProps }; + export default NumberControl; diff --git a/packages/components/src/palette-edit/index.tsx b/packages/components/src/palette-edit/index.tsx index 557c97deaa8090..fcc9055f1af625 100644 --- a/packages/components/src/palette-edit/index.tsx +++ b/packages/components/src/palette-edit/index.tsx @@ -629,4 +629,6 @@ export function PaletteEdit( { ); } +export type { PaletteEditProps }; + export default PaletteEdit; diff --git a/packages/components/src/panel/index.tsx b/packages/components/src/panel/index.tsx index de44af6bdfa3f8..795aa469c542ad 100644 --- a/packages/components/src/panel/index.tsx +++ b/packages/components/src/panel/index.tsx @@ -45,4 +45,6 @@ function UnforwardedPanel( */ export const Panel = forwardRef( UnforwardedPanel ); +export type { PanelProps }; + export default Panel; diff --git a/packages/components/src/placeholder/index.tsx b/packages/components/src/placeholder/index.tsx index 9a6e12f30fefcd..bde3e8e266d9e8 100644 --- a/packages/components/src/placeholder/index.tsx +++ b/packages/components/src/placeholder/index.tsx @@ -109,4 +109,6 @@ export function Placeholder( ); } +export type { PlaceholderProps }; + export default Placeholder; diff --git a/packages/components/src/popover/index.tsx b/packages/components/src/popover/index.tsx index 98018e308a4225..e1ba4dd55a9956 100644 --- a/packages/components/src/popover/index.tsx +++ b/packages/components/src/popover/index.tsx @@ -569,4 +569,6 @@ export const Popover = Object.assign( } ); +export type { PopoverProps }; + export default Popover; diff --git a/packages/components/src/progress-bar/index.tsx b/packages/components/src/progress-bar/index.tsx index e6a34850954563..2070d4638a889e 100644 --- a/packages/components/src/progress-bar/index.tsx +++ b/packages/components/src/progress-bar/index.tsx @@ -61,4 +61,6 @@ function UnforwardedProgressBar( */ export const ProgressBar = forwardRef( UnforwardedProgressBar ); +export type { ProgressBarProps }; + export default ProgressBar; diff --git a/packages/components/src/query-controls/index.tsx b/packages/components/src/query-controls/index.tsx index 649aa60cc9b690..a8bf744b7e131c 100644 --- a/packages/components/src/query-controls/index.tsx +++ b/packages/components/src/query-controls/index.tsx @@ -204,4 +204,6 @@ export function QueryControls( { ); } +export type { QueryControlsProps }; + export default QueryControls; diff --git a/packages/components/src/radio-control/index.tsx b/packages/components/src/radio-control/index.tsx index 6b181671332c88..856a6f837f2e08 100644 --- a/packages/components/src/radio-control/index.tsx +++ b/packages/components/src/radio-control/index.tsx @@ -161,4 +161,6 @@ export function RadioControl( ); } +export type { RadioControlProps }; + export default RadioControl; diff --git a/packages/components/src/radio-group/index.tsx b/packages/components/src/radio-group/index.tsx index 589d20ffdaae5b..44f8c94983eadf 100644 --- a/packages/components/src/radio-group/index.tsx +++ b/packages/components/src/radio-group/index.tsx @@ -74,4 +74,7 @@ function UnforwardedRadioGroup( * @deprecated Use `RadioControl` or `ToggleGroupControl` instead. */ export const RadioGroup = forwardRef( UnforwardedRadioGroup ); + +export type { RadioGroupProps }; + export default RadioGroup; diff --git a/packages/components/src/range-control/index.tsx b/packages/components/src/range-control/index.tsx index deeb17738e5bc0..44c70c9541ddab 100644 --- a/packages/components/src/range-control/index.tsx +++ b/packages/components/src/range-control/index.tsx @@ -410,4 +410,6 @@ function UnforwardedRangeControl( */ export const RangeControl = forwardRef( UnforwardedRangeControl ); +export type { RangeControlProps }; + export default RangeControl; diff --git a/packages/components/src/resizable-box/index.tsx b/packages/components/src/resizable-box/index.tsx index 3bf3d36aa0d5c3..27f978bb3a0384 100644 --- a/packages/components/src/resizable-box/index.tsx +++ b/packages/components/src/resizable-box/index.tsx @@ -87,7 +87,7 @@ const HANDLE_STYLES = { bottomLeft: HANDLE_STYLES_OVERRIDES, }; -type ResizableBoxProps = ResizableProps & { +export type ResizableBoxProps = ResizableProps & { children: ReactNode; showHandle?: boolean; __experimentalShowTooltip?: boolean; diff --git a/packages/components/src/responsive-wrapper/index.tsx b/packages/components/src/responsive-wrapper/index.tsx index 98e0493ad3e833..bcca01a61baeef 100644 --- a/packages/components/src/responsive-wrapper/index.tsx +++ b/packages/components/src/responsive-wrapper/index.tsx @@ -63,4 +63,6 @@ function ResponsiveWrapper( { ); } +export type { ResponsiveWrapperProps }; + export default ResponsiveWrapper; diff --git a/packages/components/src/sandbox/index.tsx b/packages/components/src/sandbox/index.tsx index 5288fea3f7e43e..d8e4e38dc9832d 100644 --- a/packages/components/src/sandbox/index.tsx +++ b/packages/components/src/sandbox/index.tsx @@ -292,4 +292,6 @@ function SandBox( { ); } +export type { SandBoxProps }; + export default SandBox; diff --git a/packages/components/src/scrollable/index.ts b/packages/components/src/scrollable/index.ts index 1a8ae2905eecb8..f1c26c19e5ad41 100644 --- a/packages/components/src/scrollable/index.ts +++ b/packages/components/src/scrollable/index.ts @@ -1,3 +1,5 @@ export { default as Scrollable } from './component'; export * from './hook'; + +export type { ScrollableProps } from './types'; diff --git a/packages/components/src/search-control/index.tsx b/packages/components/src/search-control/index.tsx index f6be806e7246df..503a458186d5b3 100644 --- a/packages/components/src/search-control/index.tsx +++ b/packages/components/src/search-control/index.tsx @@ -157,4 +157,6 @@ function UnforwardedSearchControl( */ export const SearchControl = forwardRef( UnforwardedSearchControl ); +export type { SearchControlProps }; + export default SearchControl; diff --git a/packages/components/src/select-control/index.tsx b/packages/components/src/select-control/index.tsx index d82c5c19178910..6179c45a2a47a4 100644 --- a/packages/components/src/select-control/index.tsx +++ b/packages/components/src/select-control/index.tsx @@ -188,4 +188,6 @@ export const SelectControl = forwardRef( UnforwardedSelectControl ) as < > & { ref?: React.Ref< HTMLSelectElement > } ) => React.JSX.Element | null; +export type { SelectControlProps }; + export default SelectControl; diff --git a/packages/components/src/slot-fill/index.tsx b/packages/components/src/slot-fill/index.tsx index caf97091b67ac8..5145f3aebb4834 100644 --- a/packages/components/src/slot-fill/index.tsx +++ b/packages/components/src/slot-fill/index.tsx @@ -96,3 +96,5 @@ export function createSlotFill( key: SlotKey ) { Slot: SlotComponent, }; } + +export type { FillProps } from './types'; diff --git a/packages/components/src/snackbar/index.tsx b/packages/components/src/snackbar/index.tsx index 97b09f9534c46a..90f4b01e16fa7a 100644 --- a/packages/components/src/snackbar/index.tsx +++ b/packages/components/src/snackbar/index.tsx @@ -207,4 +207,6 @@ function UnforwardedSnackbar( */ export const Snackbar = forwardRef( UnforwardedSnackbar ); +export type { SnackbarProps }; + export default Snackbar; diff --git a/packages/components/src/style-provider/index.tsx b/packages/components/src/style-provider/index.tsx index 1c1b55589dedcc..67d32e56d8c27a 100644 --- a/packages/components/src/style-provider/index.tsx +++ b/packages/components/src/style-provider/index.tsx @@ -45,4 +45,6 @@ export function StyleProvider( props: StyleProviderProps ) { return { children }; } +export type { StyleProviderProps }; + export default StyleProvider; diff --git a/packages/components/src/surface/index.ts b/packages/components/src/surface/index.ts index 8aea03e1906fd5..785bf28ef046b9 100644 --- a/packages/components/src/surface/index.ts +++ b/packages/components/src/surface/index.ts @@ -1,2 +1,4 @@ export { default as Surface } from './component'; export * from './hook'; + +export type { SurfaceProps } from './types'; diff --git a/packages/components/src/tab-panel/index.tsx b/packages/components/src/tab-panel/index.tsx index ec4f33d875a381..8a61ea9d6536d7 100644 --- a/packages/components/src/tab-panel/index.tsx +++ b/packages/components/src/tab-panel/index.tsx @@ -246,4 +246,7 @@ const UnforwardedTabPanel = ( }; export const TabPanel = forwardRef( UnforwardedTabPanel ); + +export type { TabPanelProps }; + export default TabPanel; diff --git a/packages/components/src/tabs/index.tsx b/packages/components/src/tabs/index.tsx index 2cbe487976c59e..e918b8bbc2f5c7 100644 --- a/packages/components/src/tabs/index.tsx +++ b/packages/components/src/tabs/index.tsx @@ -152,3 +152,5 @@ export const Tabs = Object.assign( } ), } ); + +export type { TabsProps } from './types'; diff --git a/packages/components/src/text-control/index.tsx b/packages/components/src/text-control/index.tsx index 83881542fe7b7b..532cf19d2ffa04 100644 --- a/packages/components/src/text-control/index.tsx +++ b/packages/components/src/text-control/index.tsx @@ -95,4 +95,6 @@ function UnforwardedTextControl( */ export const TextControl = forwardRef( UnforwardedTextControl ); +export type { TextControlProps }; + export default TextControl; diff --git a/packages/components/src/text-highlight/index.tsx b/packages/components/src/text-highlight/index.tsx index dd2e909898653c..81c26319de314a 100644 --- a/packages/components/src/text-highlight/index.tsx +++ b/packages/components/src/text-highlight/index.tsx @@ -42,4 +42,6 @@ export const TextHighlight = ( props: TextHighlightProps ) => { } ); }; +export type { TextHighlightProps }; + export default TextHighlight; diff --git a/packages/components/src/text/index.ts b/packages/components/src/text/index.ts index 2341fd018171b0..70f3985d01561a 100644 --- a/packages/components/src/text/index.ts +++ b/packages/components/src/text/index.ts @@ -1,2 +1,4 @@ export { default as Text } from './component'; export { default as useText } from './hook'; + +export type { Props as TextProps } from './types'; diff --git a/packages/components/src/textarea-control/index.tsx b/packages/components/src/textarea-control/index.tsx index cf5f9ed4b52e75..5303e1794e888b 100644 --- a/packages/components/src/textarea-control/index.tsx +++ b/packages/components/src/textarea-control/index.tsx @@ -89,4 +89,6 @@ function UnforwardedTextareaControl( */ export const TextareaControl = forwardRef( UnforwardedTextareaControl ); +export type { TextareaControlProps }; + export default TextareaControl; diff --git a/packages/components/src/tip/index.tsx b/packages/components/src/tip/index.tsx index b3918cd94d1432..1e2918d6ecf82f 100644 --- a/packages/components/src/tip/index.tsx +++ b/packages/components/src/tip/index.tsx @@ -19,4 +19,6 @@ export function Tip( props: TipProps ) { ); } +export type { TipProps }; + export default Tip; diff --git a/packages/components/src/toggle-control/index.tsx b/packages/components/src/toggle-control/index.tsx index d2ee234a9695f8..ce9b79aee60d32 100644 --- a/packages/components/src/toggle-control/index.tsx +++ b/packages/components/src/toggle-control/index.tsx @@ -133,4 +133,6 @@ function UnforwardedToggleControl( */ export const ToggleControl = forwardRef( UnforwardedToggleControl ); +export type { ToggleControlProps }; + export default ToggleControl; diff --git a/packages/components/src/toggle-group-control/index.ts b/packages/components/src/toggle-group-control/index.ts index e5e40497d9220e..68ac1944157d28 100644 --- a/packages/components/src/toggle-group-control/index.ts +++ b/packages/components/src/toggle-group-control/index.ts @@ -1,3 +1,5 @@ export { ToggleGroupControl } from './toggle-group-control'; export { ToggleGroupControlOption } from './toggle-group-control-option'; export { ToggleGroupControlOptionIcon } from './toggle-group-control-option-icon'; + +export type { ToggleGroupControlProps } from './types'; diff --git a/packages/components/src/toolbar/index.js b/packages/components/src/toolbar/index.ts similarity index 62% rename from packages/components/src/toolbar/index.js rename to packages/components/src/toolbar/index.ts index a337fd3af4d216..8378e32c1d4fc0 100644 --- a/packages/components/src/toolbar/index.js +++ b/packages/components/src/toolbar/index.ts @@ -1,6 +1,10 @@ export { default as Toolbar } from './toolbar'; +export type { ToolbarProps } from './toolbar'; export { default as ToolbarButton } from './toolbar-button'; +export type { ToolbarButtonProps } from './toolbar-button'; export { default as ToolbarContext } from './toolbar-context'; export { default as ToolbarDropdownMenu } from './toolbar-dropdown-menu'; export { default as ToolbarGroup } from './toolbar-group'; +export type { ToolbarGroupProps } from './toolbar-group'; export { default as ToolbarItem } from './toolbar-item'; +export type { ToolbarItemProps } from './toolbar-item'; diff --git a/packages/components/src/toolbar/toolbar-button/index.tsx b/packages/components/src/toolbar/toolbar-button/index.tsx index 710cd599507624..f35dc918c127ae 100644 --- a/packages/components/src/toolbar/toolbar-button/index.tsx +++ b/packages/components/src/toolbar/toolbar-button/index.tsx @@ -132,4 +132,5 @@ function UnforwardedToolbarButton( * ``` */ export const ToolbarButton = forwardRef( UnforwardedToolbarButton ); +export type { ToolbarButtonProps }; export default ToolbarButton; diff --git a/packages/components/src/toolbar/toolbar-group/index.tsx b/packages/components/src/toolbar/toolbar-group/index.tsx index af555233cc25c6..6284d61ec64ad6 100644 --- a/packages/components/src/toolbar/toolbar-group/index.tsx +++ b/packages/components/src/toolbar/toolbar-group/index.tsx @@ -116,4 +116,6 @@ function ToolbarGroup( { ); } +export type { ToolbarGroupProps }; + export default ToolbarGroup; diff --git a/packages/components/src/toolbar/toolbar-item/index.tsx b/packages/components/src/toolbar/toolbar-item/index.tsx index 4a7ca177bfbf95..363711d33d22a2 100644 --- a/packages/components/src/toolbar/toolbar-item/index.tsx +++ b/packages/components/src/toolbar/toolbar-item/index.tsx @@ -58,4 +58,5 @@ function UnforwardedToolbarItem( } export const ToolbarItem = forwardRef( UnforwardedToolbarItem ); +export type { ToolbarItemProps }; export default ToolbarItem; diff --git a/packages/components/src/toolbar/toolbar/index.tsx b/packages/components/src/toolbar/toolbar/index.tsx index 6b7f4843560fe7..3eabd7efa572df 100644 --- a/packages/components/src/toolbar/toolbar/index.tsx +++ b/packages/components/src/toolbar/toolbar/index.tsx @@ -102,4 +102,5 @@ function UnforwardedToolbar( * ``` */ export const Toolbar = forwardRef( UnforwardedToolbar ); +export type { ToolbarProps }; export default Toolbar; diff --git a/packages/components/src/tools-panel/index.ts b/packages/components/src/tools-panel/index.ts index bd749977d256ea..a2bf9335a6910d 100644 --- a/packages/components/src/tools-panel/index.ts +++ b/packages/components/src/tools-panel/index.ts @@ -1,3 +1,5 @@ export { default as ToolsPanel } from './tools-panel'; export { default as ToolsPanelItem } from './tools-panel-item'; export { ToolsPanelContext } from './context'; + +export type { ToolsPanelProps } from './types'; diff --git a/packages/components/src/tooltip/index.tsx b/packages/components/src/tooltip/index.tsx index df2c49b65a9bf3..e8c0272e228db6 100644 --- a/packages/components/src/tooltip/index.tsx +++ b/packages/components/src/tooltip/index.tsx @@ -159,4 +159,6 @@ function UnforwardedTooltip( } export const Tooltip = forwardRef( UnforwardedTooltip ); +export type { TooltipProps }; + export default Tooltip; diff --git a/packages/components/src/tree-grid/index.tsx b/packages/components/src/tree-grid/index.tsx index 6a02f333854941..9966bf0de9f0ba 100644 --- a/packages/components/src/tree-grid/index.tsx +++ b/packages/components/src/tree-grid/index.tsx @@ -387,6 +387,8 @@ function UnforwardedTreeGrid( */ export const TreeGrid = forwardRef( UnforwardedTreeGrid ); +export type { TreeGridProps }; + export default TreeGrid; export { default as TreeGridRow } from './row'; export { default as TreeGridCell } from './cell'; diff --git a/packages/components/src/tree-select/index.tsx b/packages/components/src/tree-select/index.tsx index 66116576361623..364e79b665bc60 100644 --- a/packages/components/src/tree-select/index.tsx +++ b/packages/components/src/tree-select/index.tsx @@ -119,4 +119,6 @@ export function TreeSelect( props: TreeSelectProps ) { ); } +export type { TreeSelectProps }; + export default TreeSelect; diff --git a/packages/components/src/truncate/index.ts b/packages/components/src/truncate/index.ts index 0ea1912af03c8b..c05d654beb18e7 100644 --- a/packages/components/src/truncate/index.ts +++ b/packages/components/src/truncate/index.ts @@ -1,2 +1,4 @@ export { default as Truncate } from './component'; export { default as useTruncate } from './hook'; + +export type { TruncateProps } from './types'; diff --git a/packages/components/src/unit-control/index.tsx b/packages/components/src/unit-control/index.tsx index 65e1e56cda3b3b..e9bb792af8aabc 100644 --- a/packages/components/src/unit-control/index.tsx +++ b/packages/components/src/unit-control/index.tsx @@ -263,4 +263,7 @@ function UnforwardedUnitControl( export const UnitControl = forwardRef( UnforwardedUnitControl ); export { parseQuantityAndUnitFromRawValue, useCustomUnits } from './utils'; + +export type { UnitControlProps }; + export default UnitControl; diff --git a/packages/components/src/v-stack/index.ts b/packages/components/src/v-stack/index.ts index 932237a92adf93..52d6e70d0d0437 100644 --- a/packages/components/src/v-stack/index.ts +++ b/packages/components/src/v-stack/index.ts @@ -1,2 +1,4 @@ export { default as VStack } from './component'; export { useVStack } from './hook'; + +export type { VStackProps } from './types'; diff --git a/packages/components/src/visually-hidden/index.ts b/packages/components/src/visually-hidden/index.ts index 4b0eb62431163f..1f1c12dc20844c 100644 --- a/packages/components/src/visually-hidden/index.ts +++ b/packages/components/src/visually-hidden/index.ts @@ -1 +1,3 @@ export { default as VisuallyHidden } from './component'; + +export type { VisuallyHiddenProps } from './types'; diff --git a/packages/components/src/z-stack/index.ts b/packages/components/src/z-stack/index.ts index ec29793b39db84..c59ba831bfb50e 100644 --- a/packages/components/src/z-stack/index.ts +++ b/packages/components/src/z-stack/index.ts @@ -1 +1,3 @@ export { default as ZStack } from './component'; + +export type { ZStackProps } from './types'; From 88e4011303cdbc7c3dc337e54047a997a928f773 Mon Sep 17 00:00:00 2001 From: Manzoor Wani Date: Thu, 30 Oct 2025 17:14:16 +0530 Subject: [PATCH 2/2] Update CHANGELOG.md --- packages/components/CHANGELOG.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/components/CHANGELOG.md b/packages/components/CHANGELOG.md index 771f834b50bfca..0e42f940080a2c 100644 --- a/packages/components/CHANGELOG.md +++ b/packages/components/CHANGELOG.md @@ -2,6 +2,10 @@ ## Unreleased +### Enhancements + +- Expose the TS types for props of public components ([#72831](https://github.com/WordPress/gutenberg/pull/72831)). + ## 30.7.0 (2025-10-29) ### Bug Fixes