  def _split_chunks(self, text: str) -> List[str]: ...
    def wrap(self, text: str) -> List[str]: ...
    def fill(self, text: str) -> str: ...

def wrap(
    text: str,
    width: int = ...,
    *,
    initial_indent: str = ...,
    subsequent_indent: str = ...,
    expand_tabs: bool = ...,
    tabsize: int = ...,
    replace_whitespace: bool = ...,
    fix_sentence_endings: bool = ...,
    break_long_words: bool = ...,
    break_on_hyphens: bool = ...,
    drop_whitespace: bool = ...,
    max_lines: int = ...,
    placeholder: str = ...,
) -> List[str]: ...
def fill(
    text: str,
    width: int = ...,
    *,
    initial_indent: str = ...,
    subsequent_indent: str = ...,
    expand_tabs: bool = ...,
    tabsize: int = ...,
    replace_whitespace: bool = ...,
    fix_sentence_endings: bool = ...,
    break_long_words: bool = ...,
    break_on_hyphens: bool = ...,
    drop_whitespace: bool = ...,
    max_lines: int = ...,
    placeholder: str = ...,
) -> str: ...
def shorten(
    text: str,
    width: int,
    *,
    initial_indent: str = ...,
    subsequent_indent: str = ...,
    expand_tabs: bool = ...,
    tabsize: int = ...,
    replace_whitespace: bool = ...,
    fix_sentence_endings: bool = ...,
    break_long_words: bool = ...,
    break_on_hyphens: bool = ...,
    drop_whitespace: bool = ...,
    # Omit `max_lines: int = None`, it is forced to 1 here.
    placeholder: str = ...,
) -> str: ...
def dedent(text: str) -> str: ...
def indent(text: str, prefix: str, predicate: Optional[Callable[[str], bool]] = ...) -> str: ...
PK