import type { SpringConfig } from './spring-utils'; /** * @description Calculates a position based on physical parameters, start and end value, and time. * @see [Documentation](https://www.remotion.dev/docs/spring) * @param {number} frame The current time value. Most of the time you want to pass in the return value of useCurrentFrame. * @param {number} fps The framerate at which the animation runs. Pass in the value obtained by `useVideoConfig()`. * @param {?boolean} reverse Whether the animation plays in reverse or not. Default `false`. * @param {?Object} config optional object that allows you to customize the physical properties of the animation. * @param {number} [config.mass=1] The weight of the spring. If you reduce the mass, the animation becomes faster! * @param {number} [config.damping=10] How hard the animation decelerates. * @param {number} [config.stiffness=100] Affects bounciness of the animation. * @param {boolean} [config.overshootClamping=false] Whether to prevent the animation going beyond the target value. * @param {?number} [config.from] The initial value of the animation. Default `0` * @param {?number} [config.to] The end value of the animation. Default `1` * @param {?number} [config.durationInFrames] Stretch the duration of an animation to a set value.. Default `undefined` * @param {?number} [config.durationThreshold] How close to the end the animation is considered to be done. Default `0.005` * @param {?number} [config.delay] Delay the animation for this amount of frames. Default `0` */ export declare function spring({ frame: passedFrame, fps, config, from, to, durationInFrames: passedDurationInFrames, durationRestThreshold, delay, reverse, }: { frame: number; fps: number; config?: Partial; from?: number; to?: number; durationInFrames?: number; durationRestThreshold?: number; delay?: number; reverse?: boolean; }): number; export { measureSpring } from './measure-spring.js'; export type { SpringConfig } from './spring-utils';