
     f$                    J   d dl mZ ddlmZmZ d dlmZ d dlZd dlZ G d de	          Z
 G d d	ej                  Z G d
 dej                  Ze G d d                      Ze G d d                      Zd&dZd&dZd'dZd(dZd)dZd*dZd+d Zd,d!Zd(d"Zd-d%ZdS ).    )annotations   )event_classT_JSON_DICT)	dataclassNc                  >     e Zd ZddZedd            Z fdZ xZS )	AuthenticatorIdreturnstrc                    | S N selfs    s/var/www/api.educacionweb.es/myenv/lib/python3.11/site-packages/selenium/webdriver/common/devtools/v85/web_authn.pyto_jsonzAuthenticatorId.to_json   s        jsonc                     | |          S r   r   clsr   s     r   	from_jsonzAuthenticatorId.from_json       s4yyr   c                j    d                     t                                                                S )NzAuthenticatorId({}))formatsuper__repr__)r   	__class__s    r   r   zAuthenticatorId.__repr__   s'    $++EGG,<,<,>,>???r   )r
   r   )r   r   r
   r	   )__name__
__module____qualname__r   classmethodr   r   __classcell__)r   s   @r   r	   r	      su               [@ @ @ @ @ @ @ @ @r   r	   c                  2    e Zd ZdZdZd Zed             ZdS )AuthenticatorProtocolu2fctap2c                    | j         S r   valuer   s    r   r   zAuthenticatorProtocol.to_json   
    zr   c                     | |          S r   r   r   s     r   r   zAuthenticatorProtocol.from_json    r   r   N)r   r    r!   U2FCTAP2r   r"   r   r   r   r   r%   r%      sH        
CE     [  r   r%   c                  >    e Zd ZdZdZdZdZdZd Ze	d             Z
dS )	AuthenticatorTransportusbnfcblecableinternalc                    | j         S r   r)   r   s    r   r   zAuthenticatorTransport.to_json,   r+   r   c                     | |          S r   r   r   s     r   r   z AuthenticatorTransport.from_json/   r   r   N)r   r    r!   USBNFCBLECABLEINTERNALr   r"   r   r   r   r   r0   r0   %   sW        
C
C
CEH     [  r   r0   c                  x    e Zd ZU ded<   ded<   dZded<   dZded<   dZded	<   dZded
<   d Ze	d             Z
dS )VirtualAuthenticatorOptionsr%   protocolr0   	transportNztyping.Optional[bool]has_resident_keyhas_user_verificationautomatic_presence_simulationis_user_verifiedc                   t                      }| j                                        |d<   | j                                        |d<   | j        
| j        |d<   | j        
| j        |d<   | j        
| j        |d<   | j        
| j        |d<   |S )Nr?   r@   hasResidentKeyhasUserVerificationautomaticPresenceSimulationisUserVerified)dictr?   r   r@   rA   rB   rC   rD   r   r   s     r   r   z#VirtualAuthenticatorOptions.to_jsonH   s    vv=0022Z N2244[ ,%)%:D!"%1*.*DD&'-9262TD./ ,%)%:D!"r   c                d    | t                               |d                   t                              |d                   d|v rt          |d                   nd d|v rt          |d                   nd d|v rt          |d                   nd d|v rt          |d                   nd           S )Nr?   r@   rF   rG   rH   rI   )r?   r@   rA   rB   rC   rD   )r%   r   r0   boolr   s     r   r   z%VirtualAuthenticatorOptions.from_jsonV   s    s*44T*5EFF,66tK7HII=MQU=U=UT$'7"8999[_G\`dGdGd$t,A'B"C"C"CjnWtx|W|W|$t4Q/R*S*S*S  CG=MQU=U=UT$'7"8999[_
 
 
 	
r   )r   r    r!   __annotations__rA   rB   rC   rD   r   r"   r   r   r   r   r>   r>   4   s         ####%%%% /32222 487777 <@!???? /32222   
 
 [
 
 
r   r>   c                  p    e Zd ZU ded<   ded<   ded<   ded<   dZd	ed
<   dZd	ed<   d Zed             ZdS )
Credentialr   credential_idrM   is_resident_credentialprivate_keyint
sign_countNztyping.Optional[str]rp_iduser_handlec                    t                      }| j        |d<   | j        |d<   | j        |d<   | j        |d<   | j        
| j        |d<   | j        
| j        |d<   |S )NcredentialIdisResidentCredential
privateKey	signCountrpId
userHandle)rJ   rQ   rR   rS   rU   rV   rW   rK   s     r   r   zCredential.to_jsonx   sm    vv#1^'+'B#$!-\ O[:!:DL'!%!1Dr   c                     | t          |d                   t          |d                   t          |d                   t          |d                   d|v rt          |d                   nd d|v rt          |d                   nd           S )NrY   rZ   r[   r\   r]   r^   )rQ   rR   rS   rU   rV   rW   )r   rM   rT   r   s     r   r   zCredential.from_json   s    sd>233#'-C(D#E#ED.//4,--'-~~#d6l###43?43G3GD.///T
 
 
 	
r   )	r   r    r!   rN   rV   rW   r   r"   r   r   r   r   rP   rP   b   s              
 OOO #'E&&&& )-K,,,,
 
 
 
 
 [
 
 
r   rP   r
   0typing.Generator[T_JSON_DICT, T_JSON_DICT, None]c               #     K   ddi} | V }dS )z~
    Enable the WebAuthn domain and start intercepting credential storage and
    retrieval with a virtual authenticator.
    methodzWebAuthn.enableNr   cmd_dictr   s     r   enablere      s$       	#H >>DDDr   c               #     K   ddi} | V }dS )z&
    Disable the WebAuthn domain.
    rb   zWebAuthn.disableNr   rc   s     r   disablerg      s$      
 	$H >>DDDr   options;typing.Generator[T_JSON_DICT, T_JSON_DICT, AuthenticatorId]c              #     K   t                      }|                                 |d<   d|d}|V }t                              |d                   S )zW
    Creates and adds a virtual authenticator.

    :param options:
    :returns: 
    rh   z WebAuthn.addVirtualAuthenticatorrb   paramsauthenticatorId)rJ   r   r	   r   )rh   rl   rd   r   s       r   add_virtual_authenticatorrn      s\       &&F))F94 H >>D$$T*;%<===r   authenticator_idc              #  f   K   t                      }|                                 |d<   d|d}|V }dS )zH
    Removes the given authenticator.

    :param authenticator_id:
    rm   z#WebAuthn.removeVirtualAuthenticatorrk   NrJ   r   ro   rl   rd   r   s       r   remove_virtual_authenticatorrs      sI       &&F 0 8 8 : :F7 H >>DDDr   
credentialc              #     K   t                      }|                                 |d<   |                                |d<   d|d}|V }dS )zr
    Adds the credential to the specified authenticator.

    :param authenticator_id:
    :param credential:
    rm   rt   zWebAuthn.addCredentialrk   Nrq   )ro   rt   rl   rd   r   s        r   add_credentialrv      s_       &&F 0 8 8 : :F%--//F<* H >>DDDr   rQ   r   6typing.Generator[T_JSON_DICT, T_JSON_DICT, Credential]c              #     K   t                      }|                                 |d<   ||d<   d|d}|V }t                              |d                   S )z
    Returns a single credential stored in the given virtual authenticator that
    matches the credential ID.

    :param authenticator_id:
    :param credential_id:
    :returns: 
    rm   rY   zWebAuthn.getCredentialrk   rt   )rJ   r   rP   r   ro   rQ   rl   rd   r   s        r   get_credentialrz      sh       &&F 0 8 8 : :F*F>* H >>D\ 2333r   Ctyping.Generator[T_JSON_DICT, T_JSON_DICT, typing.List[Credential]]c              #     K   t                      }|                                 |d<   d|d}|V }d |d         D             S )z}
    Returns all the credentials stored in the given virtual authenticator.

    :param authenticator_id:
    :returns: 
    rm   zWebAuthn.getCredentialsrk   c                B    g | ]}t                               |          S r   )rP   r   ).0is     r   
<listcomp>z#get_credentials.<locals>.<listcomp>  s&    AAAJ  ##AAAr   credentialsrq   rr   s       r   get_credentialsr      s^       &&F 0 8 8 : :F+ H >>DAAT--@AAAAr   c              #  p   K   t                      }|                                 |d<   ||d<   d|d}|V }dS )zn
    Removes a credential from the authenticator.

    :param authenticator_id:
    :param credential_id:
    rm   rY   zWebAuthn.removeCredentialrk   Nrq   ry   s        r   remove_credentialr     sS       &&F 0 8 8 : :F*F>- H >>DDDr   c              #  f   K   t                      }|                                 |d<   d|d}|V }dS )z]
    Clears all the credentials from the specified device.

    :param authenticator_id:
    rm   zWebAuthn.clearCredentialsrk   Nrq   rr   s       r   clear_credentialsr     sI       &&F 0 8 8 : :F- H >>DDDr   rD   rM   c              #  p   K   t                      }|                                 |d<   ||d<   d|d}|V }dS )z
    Sets whether User Verification succeeds or fails for an authenticator.
    The default is true.

    :param authenticator_id:
    :param is_user_verified:
    rm   rI   zWebAuthn.setUserVerifiedrk   Nrq   )ro   rD   rl   rd   r   s        r   set_user_verifiedr   ,  sT       &&F 0 8 8 : :F/F, H >>DDDr   )r
   r`   )rh   r>   r
   ri   )ro   r	   r
   r`   )ro   r	   rt   rP   r
   r`   )ro   r	   rQ   r   r
   rw   )ro   r	   r
   r{   )ro   r	   rQ   r   r
   r`   )ro   r	   rD   rM   r
   r`   )
__future__r   utilr   r   dataclassesr   enumtypingr   r	   Enumr%   r0   r>   rP   re   rg   rn   rs   rv   rz   r   r   r   r   r   r   r   <module>r      s   # " " " " " * * * * * * * * ! ! ! ! ! !  	@ 	@ 	@ 	@ 	@c 	@ 	@ 	@	 	 	 	 	DI 	 	 	    TY    *
 *
 *
 *
 *
 *
 *
 *
Z *
 *
 *
 *
 *
 *
 *
 *
Z      > > > >&   "   (4 4 4 4.B B B B&   (   "     r   