/** * StateSnapshot.ts * * Captures runtime state beyond the scene graph: * animation progress, particle emitter state, scroll offsets, focus state. */ export interface AnimationSnapshot { activeClipIds: string[]; springValues: Record; } export interface ParticleSnapshot { emitterId: string; isEmitting: boolean; activeCount: number; } export interface UISnapshot { focusedInputId: string | null; cursorIndex: number; scrollOffsets: Record; } export interface RuntimeStateSnapshot { timestamp: string; animation: AnimationSnapshot; particles: ParticleSnapshot[]; ui: UISnapshot; custom: Record; } /** * Capture current runtime state from various subsystems. */ export declare class StateSnapshotCapture { /** * Create a snapshot of the current runtime state. * Subsystem references are passed in to avoid coupling. */ capture(options: { animationEngine?: { getActiveIds: () => string[]; }; particleSystems?: Array<{ id: string; isEmitting: () => boolean; getActiveCount: () => number; }>; keyboardSystem?: { focusedInputId: string | null; cursorIndex: number; }; scrollOffsets?: Record; custom?: Record; }): RuntimeStateSnapshot; } //# sourceMappingURL=StateSnapshot.d.ts.map