export module Core.Terminal; export import Core.Vector; export namespace Core { void enterAlternativeTerminal() noexcept; void leaveAlternativeTerminal() noexcept; IntVector2 getTerminalSize() noexcept; void clearTerminal() noexcept; void clearTerminalLine() noexcept; void hideCursor() noexcept; void showCursor() noexcept; void resetCursor() noexcept; void moveCursorLeft(int i) noexcept; void moveCursorRight(int i) noexcept; void moveCursorUp(int i) noexcept; void moveCursorDown(int i) noexcept; bool enterRawTerminal() noexcept; bool leaveRawTerminal() noexcept; u64 getRawChar() noexcept; bool isSpecialChar(u64 u) noexcept; struct SpecialChar { u64 key = 0; bool control = 0; bool shift = 0; bool alt = 0; }; SpecialChar convertToSpecialChar(u64 u) noexcept; }