/** * ZUI Animator * Animation controller for ZUI components */ import type { AnimationConfig, Widget } from '../core/types'; export interface Animation { id: string; widget: Widget; config: Required; startTime: number; isRunning: boolean; onFrame?: (value: number) => void; } export interface AnimatorOptions { fps?: number; } /** * Cancel animation frame polyfill - exported for future use */ export declare function cancelFrame(id: number): void; /** * Animator class for managing component animations */ export declare class Animator { private animations; private frameCallback; private propertyKey; constructor(_options?: AnimatorOptions); /** * Start an animation */ animate(widget: Widget, config: AnimationConfig): string; /** * Stop an animation */ stop(id: string): void; /** * Stop all animations */ stopAll(): void; /** * Check if animation is running */ isAnimating(id: string): boolean; /** * Update all animations (called per frame) */ private update; /** * Create a sequence of animations */ sequence(widget: Widget, configs: AnimationConfig[]): Promise; /** * Run animations in parallel */ parallel(animations: Array<{ widget: Widget; config: AnimationConfig; }>): Promise; } export declare const animator: Animator; /** * Fade in animation */ export declare function fadeIn(widget: Widget, duration?: number, onComplete?: () => void): string; /** * Fade out animation */ export declare function fadeOut(widget: Widget, duration?: number, onComplete?: () => void): string; /** * Scale animation */ export declare function scale(widget: Widget, from: number, to: number, duration?: number, onComplete?: () => void): string; /** * Pressed state animation (28.6% brightness reduction) */ export declare function pressedAnimation(widget: Widget, onComplete?: () => void): string; /** * Released state animation */ export declare function releasedAnimation(widget: Widget, onComplete?: () => void): string; /** * Toast enter animation */ export declare function toastEnter(widget: Widget, onComplete?: () => void): string; /** * Toast exit animation */ export declare function toastExit(widget: Widget, onComplete?: () => void): string; //# sourceMappingURL=Animator.d.ts.map