@oku-ui/motion
Version:
A tiny, performant animation library for VueJS
54 lines (53 loc) • 1.72 kB
TypeScript
import { AnimationPlaybackControls, DOMKeyframesDefinition } from 'framer-motion';
import { Options } from './types';
declare const STATE_TYPES: readonly ["initial", "animate", "inView", "hover", "press", "exit"];
type StateType = typeof STATE_TYPES[number];
export declare const mountedStates: WeakMap<Element, {
id: string;
state: MotionState;
}>;
export declare const motionStatesIdElements: Map<string, {
animations: AnimationPlaybackControls[];
id: string;
state: MotionState;
}>;
export declare function getStates(): {
mountedStates: WeakMap<Element, {
id: string;
state: MotionState;
}>;
motionStatesIdElements: Map<string, {
animations: AnimationPlaybackControls[];
id: string;
state: MotionState;
}>;
};
export declare class MotionState {
private id;
private element;
private context;
private parent?;
private options;
private activeStates;
private depth;
private baseTarget;
private target;
private featureManager;
constructor(options: Options, parent?: MotionState);
reset(options: Options, parent?: MotionState): void;
private initContext;
private initTarget;
get initial(): string | boolean | object | undefined;
mount(element: Element): void;
unmount(): void;
update(options: Options, parent?: MotionState): void;
setActive(name: StateType, isActive: boolean): void;
animateUpdates(): Generator<void, void, unknown>;
isMounted(): boolean;
getDepth(): number;
getOptions(): Options;
getElement(): Element | null;
getTarget(): DOMKeyframesDefinition;
getAnimationControls(): AnimationPlaybackControls[] | undefined;
}
export {};