
     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 n# e$ r	 ddlmZ Y nw xY wddlmZmZ  G d de          Z G d	 d
e          Z G d de          ZdS )z#Helpers for working with PDF types.    )Path)IOAnyDictListOptionalTupleUnion)Protocol   )StrByteType
StreamTypec            
           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d	efdZdededeef         d	dfdZdS )PdfObjectProtocolindirect_referenceF pdf_destforce_duplicateignore_fields.Nreturnc                     d S Nr   )selfr   r   r   s       L/var/www/html/Sam_Eipo/venv/lib/python3.11/site-packages/pypdf/_protocols.pyclonezPdfObjectProtocol.clone   s	     	    r   c                     d S r   r   )r   r   r   s      r   _reference_clonez"PdfObjectProtocol._reference_clone       r   c                     d S r   r   r   s    r   
get_objectzPdfObjectProtocol.get_object   r   r   c                     d S r   r   r!   s    r   
hash_valuezPdfObjectProtocol.hash_value    r   r   streamencryption_keyc                     d S r   r   )r   r%   r&   s      r   write_to_streamz!PdfObjectProtocol.write_to_stream#   s	     	r   )Fr   )__name__
__module____qualname__r   __annotations__boolr
   r	   strr   r   r   r   r"   bytesr$   r   r(   r   r   r   r   r      s        
 !&AC	   U38_d3i=>	
 
   c S S    H%89    E     27c58H2I	     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edeee
f         fd            Zde
dee         fdZd	S )
PdfReaderProtocolr   c                     d S r   r   r!   s    r   
pdf_headerzPdfReaderProtocol.pdf_header*       r   c                     d S r   r   r!   s    r   strictzPdfReaderProtocol.strict.   r4   r   c                     d S r   r   r!   s    r   xrefzPdfReaderProtocol.xref2   r4   r   c                     d S r   r   r!   s    r   pageszPdfReaderProtocol.pages6   r4   r   c                     d S r   r   r!   s    r   trailerzPdfReaderProtocol.trailer:   r4   r   r   c                     d S r   r   r   r   s     r   r"   zPdfReaderProtocol.get_object>   r   r   N)r)   r*   r+   propertyr.   r3   r-   r6   r   intr   r8   r   r:   r<   r   r   r"   r   r   r   r1   r1   )   s       C    X     X d3S#X./    X tCy    X c3h    XS X>O5P      r   r1   c                       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dedefd	Zedee         fd
            Zedefd            ZdS )PdfWriterProtocol_objects_id_translatedr   r   c                     d S r   r   r>   s     r   r"   zPdfWriterProtocol.get_objectF   r   r   r%   c                     d S r   r   )r   r%   s     r   writezPdfWriterProtocol.writeI   r   r   objc                     d S r   r   )r   rH   s     r   _add_objectzPdfWriterProtocol._add_objectL   r   r   c                     d S r   r   r!   s    r   r:   zPdfWriterProtocol.pagesO   r4   r   c                     d S r   r   r!   s    r   r3   zPdfWriterProtocol.pdf_headerS   r4   r   N)r)   r*   r+   r   r   r,   r   r@   r   r   r"   r
   r   r   r	   r-   r   rG   rJ   r?   r:   r/   r3   r   r   r   rB   rB   B   s        3id38n,----S X>O5P    E$"34 tRx    s s     tCy    X E    X  r   rB   N)__doc__pathlibr   typingr   r   r   r   r   r	   r
   r   ImportErrortyping_extensions_utilsr   r   r   r1   rB   r   r   r   <module>rS      sB   ) )       > > > > > > > > > > > > > > > > > >+ + + +********+ , + + + + + + +       4       2         s   # 11