o
    ٷi                     @  s\   U d dl mZ d dlmZ d dlmZmZ ejgZde	d< G dd de
ZG dd	 d	Zd
S )    )annotations)create_or_modify_pyi)EventListenerEventszlist[EventListener | str]BLOCKS_EVENTSc                      s   e Zd Z fddZ  ZS )
BlocksMetac                   s^   t D ]}t|tr|nt|d }|j|d |j||< qt | |||}tt	dt  |S )N)
event_name)	componentBlocksEvents)
r   
isinstancer   copyset_doclistenersuper__new__r   r
   )clsnamebasesattrseventtriggercomponent_class	__class__ H/home/ubuntu/.local/lib/python3.10/site-packages/gradio/blocks_events.pyr   
   s   zBlocksMeta.__new__)__name__
__module____qualname__r   __classcell__r   r   r   r   r   	   s    r   c                   @  s   e Zd ZdZdS )r
   z
    This class is used to hold the events for the Blocks component. It is populated dynamically
    by the BlocksMeta metaclass.
    N)r   r   r   __doc__r   r   r   r   r
      s    r
   N)
__future__r   gradio.component_metar   gradio.eventsr   r   loadr   __annotations__typer   r
   r   r   r   r   <module>   s    