o
    pfa                     @   sJ   d dl mZmZmZmZ G dd dZG dd deZG dd deZdS )	    )Dict
NamedTupleOptionalUnionc                   @   s   e Zd ZdZdededdfddZdefdd	Zdefd
dZdefddZ	de
defddZde
defddZdd defddZdd defddZdS )	Timestampz"A nanosecond-resolution timestamp.secnsecreturnNc                 C   sD   |dk s|dkrt d| |dk r| }t|| _t|| _d S )Nr       eAz,Invalid value for nanoseconds in Timestamp: )
ValueErrorintr   r   )selfr   r    r   R/home/ertert/spirit/venv/lib/python3.10/site-packages/prometheus_client/samples.py__init__   s   
zTimestamp.__init__c                 C   s   | j  d| jdS )N.09dr   r   r   r   r   r   __str__   s   zTimestamp.__str__c                 C   s   d| j  d| j dS )Nz
Timestamp(z, )r   r   r   r   r   __repr__   s   zTimestamp.__repr__c                 C   s   t | jt | jd  S )Nr
   )floatr   r   r   r   r   r   	__float__      zTimestamp.__float__otherc                 C   s"   t |to| j|jko| j|jkS N)
isinstancer   r   r   r   r   r   r   r   __eq__   s   "zTimestamp.__eq__c                 C   s
   | |k S r   r   r   r   r   r   __ne__   s   
zTimestamp.__ne__c                 C   s   | j |j kp| j|jkS r   r   r   r   r   r   __gt__   r   zTimestamp.__gt__c                 C   s   | j |j k p| j|jk S r   r   r   r   r   r   __lt__!   r   zTimestamp.__lt__)__name__
__module____qualname____doc__r   r   strr   r   r   objectboolr   r    r!   r"   r   r   r   r   r      s    r   c                   @   s>   e Zd ZU eeef ed< eed< dZee	ee
f  ed< dS )ExemplarlabelsvalueN	timestamp)r#   r$   r%   r   r'   __annotations__r   r-   r   r   r   r   r   r   r   r*   *   s   
 r*   c                   @   sV   e Zd ZU eed< eeef ed< eed< dZee	ee
f  ed< dZee ed< dS )Samplenamer+   r,   Nr-   exemplar)r#   r$   r%   r'   r.   r   r   r-   r   r   r   r1   r*   r   r   r   r   r/   0   s   
 r/   N)typingr   r   r   r   r   r*   r/   r   r   r   r   <module>   s    &