export type CurveType = 'linear' | 'easeIn' | 'easeOut' | 'easeInOut' | 'bounce' | 'elastic'; export interface CurveConfig { duration: number; from: number; to: number; type: CurveType; bounceStrength?: number; elasticity?: number; } export interface AnimationState { value: number; progress: number; isRunning: boolean; } export declare class CurveContextAnimation { private animationFrame; private startTime; private config; private onUpdate; private onComplete?; constructor(config: CurveConfig, onUpdate: (state: AnimationState) => void, onComplete?: () => void); private easingFunctions; private interpolate; private animate; start(): void; stop(): void; updateConfig(newConfig: Partial): void; }