UNPKG

reblend-ui

Version:

Utilities for creating robust overlay components

26 lines (25 loc) 1.34 kB
import { TransitionComponent, TransitionProps } from './types'; export interface TransitionFunctionOptions { in: boolean; element: HTMLElement; initial: boolean; isStale: () => boolean; } export type TransitionHandler = (options: TransitionFunctionOptions) => void | Promise<void>; export interface UseTransitionOptions { in: boolean; onTransition: TransitionHandler; initial?: boolean; } export declare function useTransition({ in: inProp, onTransition, }: UseTransitionOptions): import("reblend-typing").Ref<HTMLElement>; export interface ImperativeTransitionProps extends Omit<TransitionProps, 'appear' | 'mountOnEnter' | 'unmountOnExit'> { transition: TransitionHandler; } /** * Adapts an imperative transition function to a subset of the RTG `<Transition>` component API. * * ImperativeTransition does not support mounting options or `appear` at the moment, meaning * that it always acts like: `mountOnEnter={true} unmountOnExit={true} appear={true}` */ export default function ImperativeTransition({ children, in: inProp, onExited, onEntered, transition, }: ImperativeTransitionProps): any; export declare function renderTransition(component: TransitionComponent | undefined, runTransition: TransitionHandler | undefined, props: TransitionProps & Omit<ImperativeTransitionProps, 'transition'>): never;