export interface SlideAnimationConfig { duration?: number; translateX?: number; translateY?: number; } /** * @interface SlideProps * @param {React.ReactNode} children * @param {Function} onSlideStart - callback to track when the animation starts * @param {Function} onSlideEnd - callback to track when the animation ends * @param {SlideAnimationConfig} config - to control "duration" of animation, "start" and "end" opacity of child component */ type SlideProps = PropsWithChildren<{ onSlideStart?: Function; onSlideEnd?: Animated.EndCallback; config?: SlideAnimationConfig; ref?: React.RefObject; }>; export type AnimationHandle = { /** * @description triggers slide animation * @returns {void} */ triggerAnimation: () => void; }; /** * @component * Represents a Fade component instance * @param {React.ReactNode} children * @param {Function} onFadeStart - callback to track when the animation starts * @param {Function} onFadeEnd - callback to track when the animation ends * @param {SlideAnimationConfig} config - to control "duration" of animation, "start" and "end" opacity of child component * @example * * Hello * */ export default function Slide(props: SlideProps): JSX.Element;