import collections from typing import Any, List def encode_text(s: str) -> bytes: ... PDFDocEncoding: dict[int, str] def decode_text(b: bytes) -> str: ... class PdfFormatError(RuntimeError): ... def check_format_condition(condition, error_message) -> None: ... class IndirectReference: def __bytes__(self): ... def __eq__(self, other): ... def __ne__(self, other): ... def __hash__(self): ... class IndirectObjectDef(IndirectReference): ... class XrefTable: existing_entries: Any new_entries: Any deleted_entries: Any reading_finished: bool def __init__(self) -> None: ... def __setitem__(self, key, value) -> None: ... def __getitem__(self, key): ... def __delitem__(self, key) -> None: ... def __contains__(self, key): ... def __len__(self): ... def keys(self): ... def write(self, f): ... class PdfName: name: Any def __init__(self, name) -> None: ... def name_as_str(self): ... def __eq__(self, other): ... def __hash__(self): ... @classmethod def from_pdf_stream(cls, data): ... allowed_chars: Any def __bytes__(self): ... class PdfArray(List[Any]): def __bytes__(self): ... class PdfDict(collections.UserDict): def __setattr__(self, key, value) -> None: ... def __getattr__(self, key): ... def __bytes__(self): ... class PdfBinary: data: Any def __init__(self, data) -> None: ... def __bytes__(self): ... class PdfStream: dictionary: Any buf: Any def __init__(self, dictionary, buf) -> None: ... def decode(self): ... def pdf_repr(x: Any) -> bytes: ... class PdfParser: filename: Any buf: Any f: Any start_offset: Any should_close_buf: bool should_close_file: bool cached_objects: Any file_size_total: int root: Any root_ref: Any info: Any info_ref: Any page_tree_root: Any pages: Any orig_pages: Any pages_ref: Any last_xref_section_offset: Any trailer_dict: Any xref_table: Any def __init__( self, filename: Any | None = ..., f: Any | None = ..., buf: Any | None = ..., start_offset: int = ..., mode: str = ... ) -> None: ... def __enter__(self): ... def __exit__(self, exc_type, exc_value, traceback): ... def start_writing(self) -> None: ... def close_buf(self) -> None: ... def close(self) -> None: ... def seek_end(self) -> None: ... def write_header(self) -> None: ... def write_comment(self, s) -> None: ... def write_catalog(self): ... def rewrite_pages(self) -> None: ... def write_xref_and_trailer(self, new_root_ref: Any | None = ...) -> None: ... def write_page(self, ref, *objs, **dict_obj): ... def write_obj(self, ref, *objs, **dict_obj): ... def del_root(self) -> None: ... @staticmethod def get_buf_from_file(f): ... file_size_this: Any def read_pdf_info(self) -> None: ... def next_object_id(self, offset: Any | None = ...): ... delimiter: bytes delimiter_or_ws: bytes whitespace: bytes whitespace_or_hex: bytes whitespace_optional: Any whitespace_mandatory: Any whitespace_optional_no_nl: bytes newline_only: bytes newline: Any re_trailer_end: Any re_trailer_prev: Any def read_trailer(self) -> None: ... def read_prev_trailer(self, xref_section_offset) -> None: ... re_whitespace_optional: Any re_name: Any re_dict_start: Any re_dict_end: Any @classmethod def interpret_trailer(cls, trailer_data): ... re_hashes_in_name: Any @classmethod def interpret_name(cls, raw, as_text: bool = ...): ... re_null: Any re_true: Any re_false: Any re_int: Any re_real: Any re_array_start: Any re_array_end: Any re_string_hex: Any re_string_lit: Any re_indirect_reference: Any re_indirect_def_start: Any re_indirect_def_end: Any re_comment: Any re_stream_start: Any re_stream_end: Any @classmethod def get_value(cls, data, offset, expect_indirect: Any | None = ..., max_nesting: int = ...): ... re_lit_str_token: Any escaped_chars: Any @classmethod def get_literal_string(cls, data, offset): ... re_xref_section_start: Any re_xref_subsection_start: Any re_xref_entry: Any def read_xref_table(self, xref_section_offset): ... def read_indirect(self, ref, max_nesting: int = ...): ... def linearize_page_tree(self, node: Any | None = ...): ...