# Stubs for __main__ (Python 3)
#
# NOTE: This dynamically typed stub was automatically generated by stubgen.

import logging
from typing import Any, Optional

class Node:
    content: Any = ...
    def __init__(self) -> None: ...
    @staticmethod
    def list(*content: Any): ...
    def add(self, *nodes: Any) -> None: ...
    def to_file(self): ...
    def to_screen(self, stack: Optional[Any] = ...): ...
    def __add__(self, rhs: Any): ...

class Text(Node):
    text: Any = ...
    def __init__(self, text: Any) -> None: ...
    def to_screen(self, stack: Optional[Any] = ...): ...
    def to_file(self): ...
    def add(self, *nodes: Any) -> None: ...

class Tag(Node):
    before: Any = ...
    after: Any = ...
    def __init__(self, before: Optional[Any] = ..., after: Optional[Any] = ...) -> None: ...
    def to_screen(self, stack: Optional[Any] = ...): ...

class Sequence(Node):
    seq: Any = ...
    def __init__(self, seq: Any) -> None: ...
    def to_screen(self, stack: Optional[Any] = ...): ...
    def add(self, *nodes: Any) -> None: ...

class LogRecord(logging.LogRecord):
    def getMessage(self): ...

seq: Any
attr: Any
clrscr: Any
clreol: Any
reset: Any

class TagFactory:
    before: Any = ...
    after: Any = ...
    def __init__(self, before: Optional[Any] = ..., after: Optional[Any] = ...) -> None: ...
    def __call__(self, *content: Any): ...

default: Any
bright: Any
dim: Any
underscore: Any
blink: Any
reverse: Any
hidden: Any
fraktur: Any
fg_color: Any
bold_color: Any
bg_color: Any

class fg:
    class bright: ...

class bg: ...

class cursor:
    hide: Any = ...
    show: Any = ...
    save: Any = ...
    restore: Any = ...
    move: Any = ...
    up: Any = ...
    down: Any = ...
    right: Any = ...
    left: Any = ...

class screen:
    size: Any = ...
    clear: Any = ...

class Formatter(logging.Formatter):
    stream: Any = ...
    level_colors: Any = ...
    def __init__(self, stream: Any) -> None: ...
    def get_file_format(self, record: Any): ...
    def get_screen_format(self, record: Any): ...
    def formatMessage(self, record: Any): ...
    def usesTime(self): ...

class StreamHandler(logging.StreamHandler):
    def __init__(self, stream: Optional[Any] = ...) -> None: ...

handler: Any

def print(*values: Any, sep: str = ..., end: str = ..., file: Any = ..., flush: bool = ...) -> None: ...

class _Getch:
    impl: Any = ...
    def __init__(self) -> None: ...
    def __call__(self): ...

class _GetchUnix:
    def __init__(self) -> None: ...
    def __call__(self): ...

class _GetchWindows:
    def __init__(self) -> None: ...
    def __call__(self): ...

class screen:
    size: Any = ...
    clear: Any = ...
    getch: Any = ...
    @staticmethod
    def echo_off() -> None: ...
    @staticmethod
    def echo_on() -> None: ...
    @staticmethod
    def set_echo(fd: Any, enabled: Any) -> None: ...
