@amaui/ui-react
Version:
UI for React
47 lines (46 loc) • 1.8 kB
TypeScript
import React from 'react';
import { TTransitionsDurationProperties } from '@amaui/style-react';
import { IBaseElement } from '../types';
export type TTransitionStatus = 'appended' | 'add' | 'adding' | 'added' | 'enter' | 'entering' | 'entered' | 'exit' | 'exiting' | 'exited' | 'removed';
export declare const STATUS: Record<TTransitionStatus, TTransitionStatus>;
export interface ITransitionDelay {
default?: number;
add?: number;
enter?: number;
exit?: number;
}
export interface ITransition extends Omit<IBaseElement, 'children' | 'className'> {
in?: boolean;
name?: string;
className?: boolean;
prefix?: string;
run?: boolean;
append?: boolean;
add?: boolean;
enter?: boolean;
exit?: boolean;
enterOnAdd?: boolean;
exitOnAdd?: boolean;
noAbruption?: boolean;
removeOnExited?: boolean;
preEnterAppendTimeout?: number;
delay?: TTransitionsDurationProperties | number | ITransitionDelay;
duration?: TTransitionsDurationProperties | number | ITransitionDelay;
onTransition?: (element: HTMLElement, status: TTransitionStatus) => void;
onInit?: (element: HTMLElement) => void;
onAppended?: (element: HTMLElement) => void;
onAdd?: (element: HTMLElement) => void;
onAdding?: (element: HTMLElement) => void;
onAdded?: (element: HTMLElement) => void;
onEnter?: (element: HTMLElement) => void;
onEntering?: (element: HTMLElement) => void;
onEntered?: (element: HTMLElement) => void;
onExit?: (element: HTMLElement) => void;
onExiting?: (element: HTMLElement) => void;
onExited?: (element: HTMLElement) => void;
onRemoved?: (element: HTMLElement) => void;
children?: any;
[p: string]: any;
}
declare const Transition: React.FC<ITransition>;
export default Transition;