class_docstr: I/O abstraction for rendering to Windows consoles.
  (cmd.exe and similar.)
class_docstr_tok: ["I\/O","abstraction","for","rendering","to","Windows","consoles",".","(","cmd.exe","and","similar",".",")"]
code: def __init__(
      self,
      stdout: TextIO,
      use_complete_width: bool = False,
      default_color_depth: ColorDepth | None = None,
  ) -> None:
      self.use_complete_width = use_complete_width
      self.default_color_depth = default_color_depth
  
      self._buffer: list[str] = []
      self.stdout: TextIO = stdout
      self.hconsole = HANDLE(
          windll.kernel32.GetStdHandle(STD_OUTPUT_HANDLE)
      )
  
      self._in_alternate_screen = False
      self._hidden = False
  
      self.color_lookup_table = ColorLookupTable()
  
      # Remember the default console colors.
      info = self.get_win32_screen_buffer_info()
      self.default_attrs = info.wAttributes if info else 15
  
      if _DEBUG_RENDER_OUTPUT:
          self.LOG = open(_DEBUG_RENDER_OUTPUT_FILENAME, "ab")
  
imports: from __future__ import annotations
  import sys
  import os
  from ctypes import ArgumentError, byref, c_char, c_long, c_uint, c_ulong, pointer
  from ctypes.wintypes import DWORD, HANDLE
  from typing import Callable, TextIO, TypeVar
  from prompt_toolkit.cursor_shapes import CursorShape
  from prompt_toolkit.data_structures import Size
  from prompt_toolkit.styles import ANSI_COLOR_NAMES, Attrs
  from prompt_toolkit.utils import get_cwidth
  from prompt_toolkit.win32_types import CONSOLE_SCREEN_BUFFER_INFO, COORD, SMALL_RECT, STD_INPUT_HANDLE, STD_OUTPUT_HANDLE
  from ..utils import SPHINX_AUTODOC_RUNNING
  from .base import Output
  from .color_depth import ColorDepth
label_desc: Use image node_id 1 to create a new Win32Output object from inherited base classes: Output with example: obj = Win32Output(stdout, use_complete_width, default_color_depth)