
    ,h                         d Z ddlmZ ddlmZmZmZmZmZm	Z	m
Z
 	 ddlmZ ddlmZ  G d de      Z G d	 d
e      Z G d de      Zy# e$ r	 ddlmZ Y 5w xY w)z#Helpers for working with PDF types.    )Path)IOAnyDictListOptionalTupleUnion)Protocol   )StrByteTypec            
       x    e Zd ZU eed<   	 	 ddededeeedf   e	e   df   defdZ
d	ededefd
Zded    fdZy)PdfObjectProtocolindirect_referencepdf_destforce_duplicateignore_fields.Nreturnc                      y N )selfr   r   r   s       S/var/www/html/Resume-Scraper/venv/lib/python3.12/site-packages/PyPDF2/_protocols.pyclonezPdfObjectProtocol.clone   s     	    r   c                      y r   r   )r   r   r   s      r   _reference_clonez"PdfObjectProtocol._reference_clone       r   c                      y r   r   r   s    r   
get_objectzPdfObjectProtocol.get_object   r   r   )Fr   )__name__
__module____qualname__r   __annotations__boolr
   r	   strr   r   r   r   r!   r   r   r   r   r      s    
 !&AC	  U38_d3i=>	
 
c S S H%89 r   r   c                       e Zd Zedefd       Zedefd       Zedee	ee	e
f   f   fd       Zedee
   fd       Zde
dee   fdZy)	PdfReaderProtocolr   c                      y r   r   r    s    r   
pdf_headerzPdfReaderProtocol.pdf_header"       r   c                      y r   r   r    s    r   strictzPdfReaderProtocol.strict&   r,   r   c                      y r   r   r    s    r   xrefzPdfReaderProtocol.xref*   r,   r   c                      y r   r   r    s    r   pageszPdfReaderProtocol.pages.   r,   r   r   c                      y r   r   r   r   s     r   r!   zPdfReaderProtocol.get_object2   r   r   N)r"   r#   r$   propertyr'   r+   r&   r.   r   intr   r0   r   r2   r   r   r!   r   r   r   r)   r)   !   s    C      d3S#X./   tCy  S X>O5P r   r)   c                   v    e Zd ZU ee   ed<   eeeeef   f   ed<   dedee	   fdZ
deeef   deeef   fdZy)	PdfWriterProtocol_objects_id_translatedr   r   c                      y r   r   r4   s     r   r!   zPdfWriterProtocol.get_object:   r   r   streamc                      y r   r   )r   r<   s     r   writezPdfWriterProtocol.write=   r   r   N)r"   r#   r$   r   r   r%   r   r6   r   r   r!   r
   r   r   r	   r&   r   r>   r   r   r   r8   r8   6   sb    3id38n,--S X>O5P E$"34 tRx r   r8   N)__doc__pathlibr   typingr   r   r   r   r   r	   r
   r   ImportErrortyping_extensions_utilsr   r   r)   r8   r   r   r   <module>rE      sZ    )  > > >+   $ * [  +*+s   A
 
AA