from typing import *

class Texttable:

    BORDER: int
    HEADER: int
    HLINES: int
    VLINES: int

    def __init__(self, max_width: int = ...) -> None: ...

    def reset(self) -> 'Texttable': ...

    def set_max_width(self, max_width: int) -> 'Texttable': ...

    def set_chars(self, array: List[str]) -> 'Texttable': ...

    def set_deco(self, deco: int) -> 'Texttable': ...

    def set_header_align(self, array: List[str]) -> 'Texttable': ...

    def set_cols_align(self, array: List[str]) -> 'Texttable': ...

    def set_cols_valign(self, array: List[str]) -> 'Texttable': ...

    def set_cols_dtype(self, array: List[Union[str, Callable[[Any], str]]]) -> 'Texttable': ...

    def set_cols_width(self, array: List[int]) -> 'Texttable': ...

    def set_precision(self, width: int) -> 'Texttable': ...

    def header(self, array: List[str]) -> 'Texttable': ...

    def add_row(self, array: List[Union[Union[int, str], float]]) -> 'Texttable': ...

    def add_rows(self, rows: List[object], header: bool = ...) -> 'Texttable': ...

    def draw(self) -> str: ...
