import React, { ElementType, MutableRefObject } from 'react'; import { Props } from '../../types'; import { Features, PropsForFeatures } from '../../utils/render'; 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; } declare type TransitionChildProps = Props & PropsForFeatures & TransitionClasses & TransitionEvents & { appear?: boolean; }; declare let DEFAULT_TRANSITION_CHILD_TAG: "div"; declare type TransitionChildRenderPropArg = MutableRefObject; declare let TransitionChildRenderFeatures: Features; export declare function Transition(props: TransitionChildProps & { show?: boolean; appear?: boolean; }): JSX.Element; export declare namespace Transition { var Child: = "div">(props: TransitionChildProps) => JSX.Element; var Root: typeof Transition; } export {};