victory-core
Version:
35 lines • 1.61 kB
TypeScript
import React from "react";
import TimerContext from "../victory-util/timer-context";
/**
* Single animation object to interpolate
*/
export type AnimationStyle = {
[key: string]: string | number;
};
/**
* Animation styles to interpolate
*/
export type AnimationData = AnimationStyle | AnimationStyle[];
export type AnimationEasing = "back" | "backIn" | "backOut" | "backInOut" | "bounce" | "bounceIn" | "bounceOut" | "bounceInOut" | "circle" | "circleIn" | "circleOut" | "circleInOut" | "linear" | "linearIn" | "linearOut" | "linearInOut" | "cubic" | "cubicIn" | "cubicOut" | "cubicInOut" | "elastic" | "elasticIn" | "elasticOut" | "elasticInOut" | "exp" | "expIn" | "expOut" | "expInOut" | "poly" | "polyIn" | "polyOut" | "polyInOut" | "quad" | "quadIn" | "quadOut" | "quadInOut" | "sin" | "sinIn" | "sinOut" | "sinInOut";
export interface VictoryAnimationProps {
children: (style: AnimationStyle, info: AnimationInfo) => React.ReactElement;
duration?: number;
easing?: AnimationEasing;
delay?: number;
onEnd?: () => void;
data: AnimationData;
}
export interface VictoryAnimationState {
data: AnimationStyle;
animationInfo: AnimationInfo;
}
export interface AnimationInfo {
progress: number;
animating: boolean;
terminating?: boolean;
}
export interface VictoryAnimation {
context: React.ContextType<typeof TimerContext>;
}
export declare const VictoryAnimation: ({ duration, easing, delay, data, children, onEnd, }: VictoryAnimationProps) => React.ReactElement<any, string | React.JSXElementConstructor<any>>;
//# sourceMappingURL=victory-animation.d.ts.map