U
    g                     @   sB   d Z ddlmZ ddlmZ ddlmZ G dd dZed ZdS )	zThe By implementation.    )Dict)Literal)Optionalc                   @   s   e Zd ZU dZdZdZdZdZdZdZ	dZ
d	Zi Zeeef ed
< eeeddddZeeee dddZeddddZdS )Byz$Set of supported locator strategies.idxpath	link textpartial link textnametag name
class namecss selector_custom_findersN)r
   strategyreturnc                 C   s   || j |< d S N)r   )clsr
   r    r   @/tmp/pip-unpacked-wheel-3ysq0mf8/selenium/webdriver/common/by.pyregister_custom_finder&   s    zBy.register_custom_finder)r
   r   c                 C   s   | j |pt| | d S r   )r   getgetattrupper)r   r
   r   r   r   
get_finder*   s    zBy.get_finder)r   c                 C   s   | j   d S r   )r   clear)r   r   r   r   clear_custom_finders.   s    zBy.clear_custom_finders)__name__
__module____qualname____doc__ZIDZXPATHZ	LINK_TEXTZPARTIAL_LINK_TEXTNAMEZTAG_NAMEZ
CLASS_NAMEZCSS_SELECTORr   r   str__annotations__classmethodr   r   r   r   r   r   r   r   r      s    
r   )r   r   r   r	   r
   r   r   r   N)r   typingr   r   r   r   ZByTyper   r   r   r   <module>   s
   