#[macro_use]
mod common;
mod kernel;
mod modules;
pub use modules::terminal;
pub use modules::cursor;
pub use modules::input;
pub use modules::output;
pub use modules::style;
pub use self::style::{color, style, Color, ColorType, Attribute, TerminalColor, ObjectStyle, StyledObject, DisplayableObject};
pub use self::cursor::{cursor, TerminalCursor};
pub use self::input::{input, TerminalInput, AsyncReader, KeyEvent};
pub use self::terminal::{terminal, Terminal};
pub use self::output::TerminalOutput;
pub use common::screen::{AlternateScreen, Screen};
pub use common::Crossterm;
#[cfg(unix)]
extern crate libc;
#[cfg(unix)]
extern crate termios;
#[cfg(windows)]
extern crate winapi;