import React from 'react'; import type { TransitionProps } from '@mui/material/transitions/transition'; import type { DefaultComponentType } from 'reflexy/styled'; import type { TweakableComponentProps } from 'reflexy/types'; export type TransitionComponent = React.JSXElementConstructor; }>; export interface HideableProps { readonly hidden?: boolean | undefined; readonly appear?: boolean | undefined; readonly disposable?: boolean | undefined; readonly keepChildren?: boolean | undefined; readonly transition?: T | undefined; readonly transitionProps?: OmitStrict, 'children'> | undefined; readonly transitionDuration?: TransitionProps['timeout'] | undefined; readonly onHidden?: VoidFunction | undefined; readonly onShown?: VoidFunction | undefined; } export type TransitionWrapperProps = RequiredSome, 'component'> & HideableProps; /** * The component must accept `ref` prop. * Default transition is `Fade`. */ declare function TransitionWrapper({ component, transition, transitionProps, transitionDuration, hidden, appear, // Will be overrided by TransitionGroup. disposable, keepChildren, onHidden, onShown, ...rest }: TransitionWrapperProps): React.JSX.Element; export default TransitionWrapper;