diff --git a/packages/mui-base/src/FormControlUnstyled/FormControlUnstyled.spec.tsx b/packages/mui-base/src/FormControlUnstyled/FormControlUnstyled.spec.tsx index 6c46361dae0147..a029a461ebac01 100644 --- a/packages/mui-base/src/FormControlUnstyled/FormControlUnstyled.spec.tsx +++ b/packages/mui-base/src/FormControlUnstyled/FormControlUnstyled.spec.tsx @@ -36,8 +36,12 @@ const FormControlUnstyledTest = () => ( ); function Root(props: FormControlUnstyledRootSlotProps) { - const { ownerState, ...other } = props; - return
; + const { ownerState, children, ...other } = props; + return ( +
+ {children as React.ReactNode} +
+ ); } const StyledFormControl = ; diff --git a/packages/mui-base/src/InputUnstyled/useInput.ts b/packages/mui-base/src/InputUnstyled/useInput.ts index ea64e6aaf303d8..2e65e79aefa51c 100644 --- a/packages/mui-base/src/InputUnstyled/useInput.ts +++ b/packages/mui-base/src/InputUnstyled/useInput.ts @@ -61,7 +61,7 @@ export default function useInput(parameters: UseInputParameters) { const { current: isControlled } = React.useRef(value != null); - const handleInputRefWarning = React.useCallback((instance) => { + const handleInputRefWarning = React.useCallback((instance: HTMLElement) => { if (process.env.NODE_ENV !== 'production') { if (instance && instance.nodeName !== 'INPUT' && !instance.focus) { console.error( diff --git a/packages/mui-base/src/MenuUnstyled/useMenu.ts b/packages/mui-base/src/MenuUnstyled/useMenu.ts index aeeb24c456a071..5b5b064e2c6cb4 100644 --- a/packages/mui-base/src/MenuUnstyled/useMenu.ts +++ b/packages/mui-base/src/MenuUnstyled/useMenu.ts @@ -51,7 +51,7 @@ export default function useMenu(parameters: UseMenuParameters = {}) { const listboxRef = React.useRef(null); const handleRef = useForkRef(listboxRef, listboxRefProp); - const registerItem = React.useCallback((id, metadata) => { + const registerItem = React.useCallback((id: string, metadata: MenuItemMetadata) => { setMenuItems((previousState) => { const newState = { ...previousState }; newState[id] = metadata; @@ -59,7 +59,7 @@ export default function useMenu(parameters: UseMenuParameters = {}) { }); }, []); - const unregisterItem = React.useCallback((id) => { + const unregisterItem = React.useCallback((id: string) => { setMenuItems((previousState) => { const newState = { ...previousState }; delete newState[id]; diff --git a/packages/mui-base/src/MultiSelectUnstyled/MultiSelectUnstyled.types.ts b/packages/mui-base/src/MultiSelectUnstyled/MultiSelectUnstyled.types.ts index 48f5281d5028e9..1fc94e47fdd3de 100644 --- a/packages/mui-base/src/MultiSelectUnstyled/MultiSelectUnstyled.types.ts +++ b/packages/mui-base/src/MultiSelectUnstyled/MultiSelectUnstyled.types.ts @@ -77,7 +77,7 @@ export type MultiSelectUnstyledListboxSlotProps = Simplify< export type MultiSelectUnstyledPopperSlotProps = { anchorEl: PopperUnstyledProps['anchorEl']; - children?: React.ReactNode; + children?: PopperUnstyledProps['children']; className: string | undefined; disablePortal: PopperUnstyledProps['disablePortal']; open: boolean; diff --git a/packages/mui-base/src/SelectUnstyled/SelectUnstyled.types.ts b/packages/mui-base/src/SelectUnstyled/SelectUnstyled.types.ts index d2d4c4babf07dd..ef93a1c7614ca9 100644 --- a/packages/mui-base/src/SelectUnstyled/SelectUnstyled.types.ts +++ b/packages/mui-base/src/SelectUnstyled/SelectUnstyled.types.ts @@ -106,7 +106,7 @@ export type SelectUnstyledListboxSlotProps = Simplify< export type SelectUnstyledPopperSlotProps = { anchorEl: PopperUnstyledProps['anchorEl']; - children?: React.ReactNode; + children?: PopperUnstyledProps['children']; className: string | undefined; disablePortal: PopperUnstyledProps['disablePortal']; open: boolean; diff --git a/packages/mui-base/src/TabsUnstyled/TabsUnstyled.types.ts b/packages/mui-base/src/TabsUnstyled/TabsUnstyled.types.ts index d612133cc94dff..a56a801ec5dcb9 100644 --- a/packages/mui-base/src/TabsUnstyled/TabsUnstyled.types.ts +++ b/packages/mui-base/src/TabsUnstyled/TabsUnstyled.types.ts @@ -50,7 +50,7 @@ export interface TabsUnstyledOwnProps { /** * Callback invoked when new value is being set. */ - onChange?: (event: React.SyntheticEvent, value: number | string) => void; + onChange?: (event: React.SyntheticEvent, value: number | string | boolean) => void; /** * If `true` the selected tab changes on focus. Otherwise it only * changes on activation. diff --git a/packages/mui-base/src/TabsUnstyled/useTabs.ts b/packages/mui-base/src/TabsUnstyled/useTabs.ts index b7ea9dc957813f..ca27bb92cf0961 100644 --- a/packages/mui-base/src/TabsUnstyled/useTabs.ts +++ b/packages/mui-base/src/TabsUnstyled/useTabs.ts @@ -24,7 +24,7 @@ export interface UseTabsParameters { /** * Callback invoked when new value is being set. */ - onChange?: (event: React.SyntheticEvent, value: number | string) => void; + onChange?: (event: React.SyntheticEvent, value: number | string | boolean) => void; /** * If `true` the selected tab changes on focus. Otherwise it only * changes on activation. @@ -52,7 +52,7 @@ const useTabs = (parameters: UseTabsParameters) => { const idPrefix = useId(); const onSelected = React.useCallback( - (e, newValue) => { + (e: React.SyntheticEvent, newValue: string | number | false) => { setValue(newValue); if (onChange) { onChange(e, newValue);