/** * TransitionSystem.ts * * Pre-built UI transition patterns using the AnimationEngine. * Provides fade, scale, slide, and combined transitions. */ import { AnimationEngine, EasingFn } from './AnimationEngine'; export type TransitionDirection = 'in' | 'out'; export interface TransitionOptions { duration?: number; easing?: EasingFn; delay?: number; onComplete?: () => void; } export declare class TransitionSystem { private engine; constructor(engine?: AnimationEngine); getEngine(): AnimationEngine; /** * Fade in/out (opacity 0 <-> 1) */ fade(nodeId: string, direction: TransitionDirection, setter: (opacity: number) => void, options?: TransitionOptions): void; /** * Scale in/out (scale 0 <-> 1) */ scale(nodeId: string, direction: TransitionDirection, setter: (scale: number) => void, options?: TransitionOptions): void; /** * Slide from a direction (e.g., slide up from below) */ slide(nodeId: string, direction: TransitionDirection, axis: 'x' | 'y' | 'z', distance: number, setter: (offset: number) => void, options?: TransitionOptions): void; /** * Combined: Scale + Fade (common for dialogs/menus) */ popIn(nodeId: string, scaleSetter: (s: number) => void, opacitySetter: (o: number) => void, options?: TransitionOptions): void; /** * Combined: Scale + Fade out */ popOut(nodeId: string, scaleSetter: (s: number) => void, opacitySetter: (o: number) => void, options?: TransitionOptions): void; /** * Update all transitions. Must be called every frame. */ update(delta: number): void; } //# sourceMappingURL=TransitionSystem.d.ts.map