diff --git a/types/react-transition-group/Transition.d.ts b/types/react-transition-group/Transition.d.ts index f8722a41d8..b6de6e9991 100644 --- a/types/react-transition-group/Transition.d.ts +++ b/types/react-transition-group/Transition.d.ts @@ -16,7 +16,7 @@ export interface TransitionActions { exit?: boolean; } -type TransitionStatus = +export type TransitionStatus = typeof ENTERING | typeof ENTERED | typeof EXITING | diff --git a/types/react-transition-group/react-transition-group-tests.tsx b/types/react-transition-group/react-transition-group-tests.tsx index 172d91ce54..cda468f9b5 100644 --- a/types/react-transition-group/react-transition-group-tests.tsx +++ b/types/react-transition-group/react-transition-group-tests.tsx @@ -1,6 +1,6 @@ import * as React from "react"; import CSSTransition = require("react-transition-group/CSSTransition"); -import Transition, { UNMOUNTED, EXITED, ENTERING, ENTERED, EXITING } from "react-transition-group/Transition"; +import Transition, { UNMOUNTED, EXITED, ENTERING, ENTERED, EXITING, TransitionStatus } from "react-transition-group/Transition"; import TransitionGroup = require("react-transition-group/TransitionGroup"); import Components = require("react-transition-group"); @@ -26,6 +26,17 @@ const Test: React.StatelessComponent = () => { node.addEventListener("transitionend", done, false); } + function statusAsArgument(status: TransitionStatus) { + switch (status) { + case ENTERING: + case ENTERED: + case EXITING: + case EXITED: + case UNMOUNTED: + return