@yamada-ui/transitions
Version:
Yamada UI transitions components
86 lines (83 loc) • 2.09 kB
TypeScript
import * as _yamada_ui_motion from '@yamada-ui/motion';
import { MotionProps } from '@yamada-ui/motion';
import { ThemeProps } from '@yamada-ui/core';
import { Merge } from '@yamada-ui/utils';
import { ReactElement } from 'react';
type RotateIdent = "from" | "to";
interface RotateOptions {
/**
* Passing React elements to "from" is required.
*/
from: ReactElement;
/**
* Passing React elements to "to" is required.
*/
to: ReactElement;
/**
* You can set the initial state.
*
* @default 'from'
*/
defaultValue?: RotateIdent;
/**
* The animation delay.
*
* @default 0
*/
delay?: number;
/**
* If `true`, the component is disabled.
*
* @default false
*/
disabled?: boolean;
/**
* The animation duration.
*
* @default 0.4
*/
duration?: number;
/**
* If `true`, the component is disabled.
*
* @default false
* @deprecated Use `disabled` instead.
*/
isDisabled?: boolean;
/**
* If `true`, the component is readonly.
*
* @default false
* @deprecated Use `readOnly` instead.
*/
isReadOnly?: boolean;
/**
* If `true`, the component is readonly.
*
* @default false
*/
readOnly?: boolean;
/**
* The animation rotation.
*
* @default 45
*/
rotate?: number;
/**
* Use this when you want to control the animation from outside the component.
*/
value?: RotateIdent;
/**
* This is a callback function that is called when the animation state changes.
*/
onChange?: (value: RotateIdent) => void;
}
interface RotateProps extends Merge<MotionProps<"button">, RotateOptions>, ThemeProps<"Rotate"> {
}
/**
* `Rotate` is an animation component that alternately rotates two elements as they switch.
*
* @see Docs https://yamada-ui.com/components/transitions/rotate
*/
declare const Rotate: _yamada_ui_motion.MotionComponent<"button", RotateProps>;
export { Rotate, type RotateIdent, type RotateProps };