import { LinearTransition } from 'react-native-reanimated'; /** * An entering/exiting/layout animation, or nothing under react-native-web. * * Reanimated's web backend pins an animating view to `position: absolute` with * a measured top/left and never restores it, so the view leaves its slot: the * row it was in collapses and whatever clipped that row hides it. A static but * correct layout beats an animated broken one on a platform the SDK does not * target. */ export declare function nativeMotion(animation: T): T | undefined; export declare const MOTION_DURATION = 180; export declare const MOTION_EASING: import("react-native-reanimated").EasingFunctionFactory; /** The clock as a `withTiming` config, for animations driven outside keyframes. */ export declare const MOTION_TIMING: { duration: number; easing: import("react-native-reanimated").EasingFunctionFactory; }; export declare const SPINNER_APPEAR_DELAY_MS = 150; export declare const GLYPH_LAYOUT: LinearTransition; export declare const DIGIT_ENTER_SCALE = 0.5; export declare const DIGIT_TRAVEL_RATIO = 0.4; export declare const DIGIT_STAGGER = 40; /** * The digit mount/unmount pair for a line box `travel` points of rise. `delay` * holds the entrance back for staggered bulk mounts; exits always run at once. */ export declare function digitKeyframes(travel: number, delay?: number): { entering: import("react-native-reanimated").ReanimatedKeyframe; exiting: import("react-native-reanimated").ReanimatedKeyframe; }; export declare const SMOOTH_EASING: import("react-native-reanimated").EasingFunctionFactory; /** * The deposit action changing phase: its fill crosses between phase colours on * the amount screen's own clock, and the label and spinner arrive once that * crossing is visibly under way rather than with it. */ export declare const CONTENT_FADE_DELAY = 60; export declare const CONTENT_FADE_DURATION = 120; export declare const CONTENT_FADE_TIMING: { duration: number; easing: import("react-native-reanimated").EasingFunctionFactory; }; /** * A keyboard action rising into place. Deposit amount fills use * DepositActionLayers so state changes can replay without remounting. */ export declare const RISE_TRAVEL = 24; export declare const RISE_ENTERING: import("react-native-reanimated").ReanimatedKeyframe; export declare const RISE_EXITING: import("react-native-reanimated").ReanimatedKeyframe; /** * transitions.dev "Modal open / close": a surface scales up from 0.96 over * 250ms and dips back to it over a quicker 150ms. */ export declare const MODAL_OPEN_DURATION = 250; export declare const MODAL_CLOSE_DURATION = 150; export declare const MODAL_SCALE = 0.96; export declare const MODAL_ENTERING: import("react-native-reanimated").ReanimatedKeyframe; export declare const MODAL_EXITING: import("react-native-reanimated").ReanimatedKeyframe; /** * transitions.dev "Page side-by-side": the page ahead sits 8px to the right, * the page behind 8px to the left, and a turn fades each across 250ms. The * blur it also runs is left out: React Native cannot animate a filter. */ export declare const PAGE_TURN_DURATION = 250; export declare const PAGE_SLIDE_DISTANCE = 8; export declare const PAGE_TIMING: { duration: number; easing: import("react-native-reanimated").EasingFunctionFactory; }; /** `direction` is +1 turning forward, -1 turning back. */ export declare function pageEntering(direction: 1 | -1): import("react-native-reanimated").ReanimatedKeyframe; /** The mirror of {@link pageEntering}: a page leaves by the side it came from. */ export declare function pageExiting(direction: 1 | -1): import("react-native-reanimated").ReanimatedKeyframe; /** * transitions.dev "Success check", as an arrival for the control itself: fade * in, swing upright from 80°, and bob up 40px on a bouncy overshoot, all over * 500ms. The icon's own stroke-draw and blur are not part of it here. */ export declare const CHECK_DURATION = 500; export declare const CHECK_ROTATE_FROM = "80deg"; export declare const CHECK_BOB_DISTANCE = 40; export declare const CHECK_BOB_EASING: import("react-native-reanimated").EasingFunctionFactory; export declare const CHECK_ENTERING: import("react-native-reanimated").ReanimatedKeyframe; /** * A keyboard action arriving. Short travel on purpose: a longer rise reads as * the button coming out from behind the keyboard, and the fade carries the * arrival instead. */ export declare const ACTION_ENTER_TRAVEL = 12; export declare const ACTION_ENTER_DURATION = 300; export declare const ACTION_ENTER_TIMING: { duration: number; easing: import("react-native-reanimated").EasingFunction; }; /** * The same arrival as a keyframe pair, for whatever stands in the action's * slot beside it: a notice that replaces the button has to come and go the * way the button does, or the swap reads as one of them glitching. * * Leaving is quicker than arriving, so the slot is clear before its next * occupant rises into it. */ export declare const ACTION_EXIT_DURATION = 150; export declare const ACTION_ENTERING: import("react-native-reanimated").ReanimatedKeyframe; export declare const ACTION_EXITING: import("react-native-reanimated").ReanimatedKeyframe; /** * The ring taking a slot something else is still leaving. Paced to that exit * so the two cross-fade rather than both standing at full strength; a fade * alone, since the waiting state keeps to fill and opacity with no travel. */ export declare const INDICATOR_ENTERING: import("react-native-reanimated").ReanimatedKeyframe; //# sourceMappingURL=motion.d.ts.map