/**
based on framer-motion@4.0.3,
Copyright (c) 2018 Framer B.V.
*/
/**
* Creates `AnimationControls`, which can be used to manually start, stop
* and sequence animations on one or more components.
*
* The returned `AnimationControls` should be passed to the `animate` property
* of the components you want to animate.
*
* These components can then be animated with the `start` method.
*
* @library
*
* ```jsx
* import * as React from 'react'
* import { Frame, useAnimation } from 'framer'
*
* export function MyComponent(props) {
* const controls = useAnimation()
*
* controls.start({
* x: 100,
* transition: { duration: 0.5 },
* })
*
* return
* }
* ```
*
* @motion
*
* ```jsx
* import * as React from 'react'
* import { motion, useAnimation } from 'framer-motion'
*
* export function MyComponent(props) {
* const controls = useAnimation()
*
* controls.start({
* x: 100,
* transition: { duration: 0.5 },
* })
*
* return
* }
* ```
*
* @returns Animation controller with `start` and `stop` methods
*
* @public
*/
export declare const useAnimation: () => {
subscribe: (visualElement: import("..").VisualElement) => () => void;
start: (definition: import("./types").ControlsAnimationDefinition, transitionOverride?: any) => Promise;
set: (definition: import("./types").ControlsAnimationDefinition) => void;
stop: () => void;
mount: () => () => void;
};
export { default as UseAnimation } from "./UseAnimation.svelte";
//# sourceMappingURL=use-animation.d.ts.map