use io;
use Write;
use Duration;
use ThreadRng;
pub use Size;
/// Terminal dimensions and timing context shared across all components.
/// A self-rendering UI element.
///
/// Each component owns its visual state (positions, reveal progress, etc.)
/// and knows how to draw itself into a terminal writer. The wizard loop
/// acts as a thin compositor, calling `render` on each component in
/// z-order.