from pandas._typing import FilePathOrBuffer as FilePathOrBuffer
from pandas.core.dtypes.generic import ABCDatetimeIndex as ABCDatetimeIndex, ABCIndexClass as ABCIndexClass, ABCMultiIndex as ABCMultiIndex, ABCPeriodIndex as ABCPeriodIndex
from pandas.core.dtypes.missing import notna as notna
from pandas.io.common import get_compression_method as get_compression_method, get_filepath_or_buffer as get_filepath_or_buffer, get_handle as get_handle, infer_compression as infer_compression
from typing import Any, Hashable, Mapping, Optional, Sequence, Union

class CSVFormatter:
    obj: Any = ...
    sep: Any = ...
    na_rep: Any = ...
    float_format: Any = ...
    decimal: Any = ...
    header: Any = ...
    index: Any = ...
    index_label: Any = ...
    mode: Any = ...
    encoding: Any = ...
    compression: Any = ...
    quoting: Any = ...
    quotechar: Any = ...
    doublequote: Any = ...
    escapechar: Any = ...
    line_terminator: Any = ...
    date_format: Any = ...
    has_mi_columns: Any = ...
    cols: Any = ...
    blocks: Any = ...
    data: Any = ...
    chunksize: Any = ...
    data_index: Any = ...
    nlevels: Any = ...
    def __init__(self, obj: Any, path_or_buf: Optional[FilePathOrBuffer[str]]=..., sep: str=..., na_rep: str=..., float_format: Optional[str]=..., cols: Any = ..., header: Union[bool, Sequence[Hashable]]=..., index: bool=..., index_label: Optional[Union[bool, Hashable, Sequence[Hashable]]]=..., mode: str=..., encoding: Optional[str]=..., compression: Union[str, Mapping[str, str], None]=..., quoting: Optional[int]=..., line_terminator: Any = ..., chunksize: Optional[int]=..., quotechar: Any = ..., date_format: Optional[str]=..., doublequote: bool=..., escapechar: Optional[str]=..., decimal: Any = ...) -> None: ...
    writer: Any = ...
    def save(self) -> None: ...
