use std::io::{self, stdout, Stdout}; use ratatui::{backend::CrosstermBackend, crossterm::{terminal::{disable_raw_mode, enable_raw_mode, EnterAlternateScreen, LeaveAlternateScreen}, ExecutableCommand}, Terminal}; pub type Tui = Terminal>; pub fn init() -> io::Result { stdout().execute(EnterAlternateScreen)?; enable_raw_mode()?; let mut terminal = Terminal::new(CrosstermBackend::new(stdout()))?; terminal.clear()?; Ok(terminal) } pub fn restore() -> io::Result<()> { stdout().execute(LeaveAlternateScreen)?; disable_raw_mode()?; Ok(()) }