namespace Terminal.Gui.Drivers; /// /// The low-level interface drivers implement to provide output capabilities; encapsulates platform-specific /// output functionality. /// public interface IOutput : IDisposable { /// /// Gets the current position of the console cursor. /// /// Point GetCursorPosition (); /// /// Returns the current size of the console in rows/columns (i.e. /// of characters not pixels). /// /// public Size GetSize (); /// /// Moves the console cursor to the given location. /// /// /// void SetCursorPosition (int col, int row); /// /// Updates the console cursor (the blinking underscore) to be hidden, /// visible etc. /// /// void SetCursorVisibility (CursorVisibility visibility); /// /// Sets the size of the console. /// /// /// void SetSize (int width, int height); /// /// Writes the given text directly to the console. Use to send /// ansi escape codes etc. Regular screen output should use the /// overload. /// /// void Write (ReadOnlySpan text); /// /// Write the contents of the to the console /// /// void Write (IOutputBuffer buffer); }