
    Wwgt                         d dl Z d dlmZ d dlmZmZ d dlmZ d dlm	Z	 ddgZ
 G d de j                        Z ed	
       G d d             Zy)    N)	dataclass)IterableOptional)generic)pdf_nameDevExtensionMultivaluedDeveloperExtensionc                   z    e Zd ZdZ ej
                         Z	  ej
                         Z	  ej
                         Zy)r   z
    Setting indicating how an extension is expected to behave well w.r.t.
    the new mechanism for multivalued extensions in ISO 32000-2:2020.
    N)	__name__
__module____qualname____doc__enumautoALWAYSNEVERMAYBE     S/var/www/horilla/myenv/lib/python3.12/site-packages/pyhanko/pdf_utils/extensions.pyr   r      sC    
 TYY[F DIIKE DIIKEr   T)frozenc                   
   e Zd ZU dZej
                  ed<   	 ej
                  ed<   	 eed<   	 dZe	e
   ed<   	 dZe	e
   ed<   	 dZeed	<   	 d
Zee   ed<   	 d
Zee   ed<   	 ej$                  Zeed<   	 dej(                  fdZy)r	   z.
    PDF developer extension designation.
    prefix_namebase_versionextension_levelNurlextension_revisionFcompare_by_levelr   subsumed_bysubsumesmultivaluedreturnc           
         t        j                  t        d      t        d      t        d      | j                  t        d      t        j                  | j
                        i      }| j                  "t        j                  | j                        |d<   | j                  "t        j                  | j                        |d<   |S )z
        Format the data in this object into a PDF dictionary for registration
        into the `/Extensions` dictionary.

        :return:
            A :class:`.generic.DictionaryObject`.
        z/Typez/DeveloperExtensionsz/BaseVersionz/ExtensionLevelz/URLz/ExtensionRevision)	r   DictionaryObjectr   r   NumberObjectr   r   TextStringObjectr   )selfresults     r   as_pdf_objectz DeveloperExtension.as_pdf_objectp   s     ))!8,B#C($*;*;*+W-A-A((.
 88$55dhh?F6N"".+2+C+C'',F'( r   )r   r   r   r   r   
NameObject__annotations__intr   r   strr   r   boolr   r   r    r   r   r!   r$   r)   r   r   r   r	   r	   #   s     ### $$$  C# )-, #d" "$K##	 !Hhsm 	 ,C+H+HK(H
w77 r   )r   dataclassesr   typingr   r   pyhanko.pdf_utilsr   pyhanko.pdf_utils.genericr   __all__Enumr   r	   r   r   r   <module>r5      sP     ! % % .$&:
;dii 0 $d d dr   