import { default as React } from 'react'; export type SimulationState = "stopped" | "playing" | "paused"; export interface SimulationControlsProps { /** Current simulation state */ state?: SimulationState; /** Whether simulation is playing (alternative to state) */ isPlaying?: boolean; /** Whether simulation is paused (used with isPlaying for 3-state) */ isPaused?: boolean; /** Called when play is triggered */ onPlay?: () => void; /** Called when pause is triggered */ onPause?: () => void; /** Called when stop (reset) is triggered */ onStop?: () => void; /** Called when step forward is triggered */ onStepForward?: () => void; /** Called when step backward is triggered */ onStepBackward?: () => void; /** Current simulation time */ currentTime?: Date | string; /** Simulation epoch (t=0) */ epoch?: Date | string; /** Current elapsed seconds from epoch */ elapsedSeconds?: number; /** Show elapsed time display */ showElapsedTime?: boolean; /** Show current time display */ showCurrentTime?: boolean; /** Show date in time display */ showDate?: boolean; /** Current time scale factor (1 = realtime) */ timeScale?: number; /** Callback when time scale changes */ onTimeScaleChange?: (scale: number) => void; /** Available time scale presets */ timeScalePresets?: number[]; /** Show time scale controls */ showTimeScale?: boolean; /** Step size in seconds */ stepSize?: number; /** Callback when step size changes */ onStepSizeChange?: (size: number) => void; /** Available step size presets in seconds */ stepSizePresets?: number[]; /** Show step controls */ showStepControls?: boolean; /** Compact display mode */ compact?: boolean; /** Small size variant */ small?: boolean; /** Custom className */ className?: string; /** Disabled state */ disabled?: boolean; /** Show simulation status indicator */ showStatus?: boolean; /** Custom label for simulation mode */ label?: string; } /** * SimulationControls - Playback controls for space simulation * * Provides comprehensive simulation time control following Astro UX patterns. * Designed for mission control and space operations applications. * * @example * ```tsx * // Basic usage * setIsPlaying(true)} * onPause={() => setIsPlaying(false)} * onStop={handleReset} * /> * * // Full featured * * * // In AppBar center slot * * } * /> * ``` */ export declare const SimulationControls: React.NamedExoticComponent; /** * MiniSimulationControls - Ultra-compact controls for AppBar */ export interface MiniSimulationControlsProps { isPlaying?: boolean; onPlay?: () => void; onPause?: () => void; onStop?: () => void; timeScale?: number; onTimeScaleChange?: (scale: number) => void; disabled?: boolean; className?: string; } export declare const MiniSimulationControls: React.NamedExoticComponent; /** * SimulationControlsWithClock - Controls combined with MissionClock */ export interface SimulationControlsWithClockProps extends Omit { /** Clock format */ clockFormat?: "12h" | "24h"; /** Timezone label */ timezone?: string; } export declare const SimulationControlsWithClock: React.NamedExoticComponent; export default SimulationControls;