declare enum TransitionStatus {
    entered = "entered",
    exited = "exited",
    entering = "entering",
    exiting = "exiting",
    preExiting = "pre-exiting",
    preEntering = "pre-entering"
}
interface UseTransition {
    duration: number;
    initial: boolean;
    exitDuration: number;
    timingFunction: string;
    mounted: boolean;
    reduceMotion?: boolean;
    onEnter?: () => void;
    onExit?: () => void;
    onEntered?: () => void;
    onExited?: () => void;
    enterDelay?: number;
    exitDelay?: number;
}
declare function useTransition(props: UseTransition): {
    transitionDuration: number;
    transitionStatus: TransitionStatus;
    transitionTimingFunction: string;
};

export { TransitionStatus, type UseTransition, useTransition };
