chowa
Version:
UI component library based on React
53 lines (52 loc) • 1.87 kB
TypeScript
/**
* @license chowa v1.1.3
*
* Copyright (c) Chowa Techonlogies Co.,Ltd.(http://www.chowa.cn).
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
import * as React from 'react';
import * as PropTypes from 'prop-types';
export interface TransitionProps {
enter?: string;
appear?: string;
leave?: string;
visible: boolean;
onEnter?: () => void;
onLeave?: () => void;
onShow?: () => void;
onHide?: () => void;
}
export interface TransitionState {
selfVisible: boolean;
inTransition: boolean;
wrapperWidth: number;
wrapperHeight: number;
}
declare class Transition extends React.PureComponent<TransitionProps, TransitionState> {
static propTypes: {
children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
enter: PropTypes.Requireable<string>;
appear: PropTypes.Requireable<string>;
leave: PropTypes.Requireable<string>;
visible: PropTypes.Validator<boolean>;
onEnter: PropTypes.Requireable<(...args: any[]) => any>;
onLeave: PropTypes.Requireable<(...args: any[]) => any>;
onShow: PropTypes.Requireable<(...args: any[]) => any>;
onHide: PropTypes.Requireable<(...args: any[]) => any>;
};
static defaultProps: {
enter: string;
appear: string;
leave: string;
};
private wrapperEle;
constructor(props: TransitionProps);
componentDidMount(): void;
componentDidUpdate(preProps: TransitionProps): void;
private updateVisible;
private onTransitionFinishHandler;
render(): React.ReactElement<any, string | ((props: any) => React.ReactElement<any, string | any | (new (props: any) => React.Component<any, any, any>)>) | (new (props: any) => React.Component<any, any, any>)>;
}
export default Transition;