import { type ElementType, type MutableRefObject, type Ref } from 'react'; import type { Props, ReactTag } from '../../types.js'; import { Features, type HasDisplayName, type PropsForFeatures, type RefProp } from '../../utils/render.js'; export interface TransitionClasses { enter?: string; enterFrom?: string; enterTo?: string; entered?: string; leave?: string; leaveFrom?: string; leaveTo?: string; } export interface TransitionEvents { beforeEnter?: () => void; afterEnter?: () => void; beforeLeave?: () => void; afterLeave?: () => void; } export type TransitionChildProps = Props & TransitionClasses & TransitionEvents & { appear?: boolean; }>; declare let DEFAULT_TRANSITION_CHILD_TAG: "div"; type TransitionChildRenderPropArg = MutableRefObject; declare let TransitionChildRenderFeatures: Features; declare function TransitionChildFn(props: TransitionChildProps, ref: Ref): JSX.Element; export type TransitionRootProps = TransitionChildProps & { show?: boolean; appear?: boolean; }; declare function TransitionRootFn(props: TransitionRootProps, ref: Ref): JSX.Element; export interface _internal_ComponentTransitionRoot extends HasDisplayName { (props: TransitionRootProps & RefProp): JSX.Element; } export interface _internal_ComponentTransitionChild extends HasDisplayName { (props: TransitionChildProps & RefProp): JSX.Element; } export declare let Transition: _internal_ComponentTransitionRoot & { Child: _internal_ComponentTransitionChild; Root: _internal_ComponentTransitionRoot; }; export {};