
     fU                       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
e G d d	                      Ze G d
 d                      ZddZddZddZddZ ed          e G d d                                  ZdS )    )annotations   )event_classT_JSON_DICT)	dataclassNc                  B     e Zd ZdZddZed	d            Z fdZ xZS )

DatabaseIdz/
    Unique identifier of Database object.
    returnstrc                    | S N )selfs    r/var/www/api.educacionweb.es/myenv/lib/python3.11/site-packages/selenium/webdriver/common/devtools/v85/database.pyto_jsonzDatabaseId.to_json   s        jsonc                     | |          S r   r   clsr   s     r   	from_jsonzDatabaseId.from_json   s    s4yyr   c                j    d                     t                                                                S )NzDatabaseId({}))formatsuper__repr__)r   	__class__s    r   r   zDatabaseId.__repr__   s'    &&uww'7'7'9'9:::r   )r
   r   )r   r   r
   r	   )	__name__
__module____qualname____doc__r   classmethodr   r   __classcell__)r   s   @r   r	   r	      sv                [; ; ; ; ; ; ; ; ;r   r	   c                  X    e Zd ZU dZded<   ded<   ded<   ded<   d Zed	             Zd
S )Databasez
    Database object.
    r	   id_r   domainnameversionc                    t                      }| j                                        |d<   | j        |d<   | j        |d<   | j        |d<   |S )Nidr&   r'   r(   )dictr%   r   r&   r'   r(   r   r   s     r   r   zDatabase.to_json-   sH    vvX%%''T
XyV,Yr   c           	          | t                               |d                   t          |d                   t          |d                   t          |d                             S )Nr*   r&   r'   r(   )r%   r&   r'   r(   )r	   r   r   r   s     r   r   zDatabase.from_json5   s]    s$$T$Z00tH~&&T&\""Y((	
 
 
 	
r   Nr   r   r   r    __annotations__r   r!   r   r   r   r   r$   r$      sv           OOO KKK III LLL   
 
 [
 
 
r   r$   c                  D    e Zd ZU dZded<   ded<   d Zed             ZdS )	Errorz
    Database error.
    r   messageintcodec                J    t                      }| j        |d<   | j        |d<   |S )Nr2   r4   )r+   r2   r4   r,   s     r   r   zError.to_jsonJ   s&    vv,YyVr   c                h     | t          |d                   t          |d                             S )Nr2   r4   )r2   r4   )r   r3   r   s     r   r   zError.from_jsonP   s9    sY((T&\""
 
 
 	
r   Nr.   r   r   r   r1   r1   ?   s`           LLL III   
 
 [
 
 
r   r1   r
   0typing.Generator[T_JSON_DICT, T_JSON_DICT, None]c               #     K   ddi} | V }dS )z]
    Disables database tracking, prevents database events from being sent to the client.
    methodzDatabase.disableNr   cmd_dictr   s     r   disabler<   X   s$      
 	$H >>DDDr   c               #     K   ddi} | V }dS )zY
    Enables database tracking, database events will now be delivered to the client.
    r9   zDatabase.enableNr   r:   s     r   enabler>   b   s$      
 	#H >>DDDr   database_idqueryr   typing.Generator[T_JSON_DICT, T_JSON_DICT, typing.Tuple[typing.Optional[typing.List[str]], typing.Optional[typing.List[typing.Any]], typing.Optional[Error]]]c              #    K   t                      }|                                 |d<   ||d<   d|d}|V }d|v rd |d         D             ndd|v rd	 |d         D             ndd
|v r t                              |d
                   ndfS )z
    :param database_id:
    :param query:
    :returns: A tuple with the following items:

        0. **columnNames** - 
        1. **values** - 
        2. **sqlError** - 
    
databaseIdr@   zDatabase.executeSQLr9   paramscolumnNamesc                ,    g | ]}t          |          S r   r   .0is     r   
<listcomp>zexecute_sql.<locals>.<listcomp>   s    ---AQ---r   Nvaluesc                    g | ]}|S r   r   rI   s     r   rL   zexecute_sql.<locals>.<listcomp>   s    ###q###r   sqlError)r+   r   r1   r   )r?   r@   rE   r;   r   s        r   execute_sqlrP   l   s       &&F&..00F<F7O' H >>D1>$1F1F--m,----D'/4'7'7##DN####T-74-?-?Z()))T r   <typing.Generator[T_JSON_DICT, T_JSON_DICT, typing.List[str]]c              #     K   t                      }|                                 |d<   d|d}|V }d |d         D             S )z,
    :param database_id:
    :returns: 
    rC   zDatabase.getDatabaseTableNamesrD   c                ,    g | ]}t          |          S r   rH   rI   s     r   rL   z,get_database_table_names.<locals>.<listcomp>   s    ///qCFF///r   
tableNames)r+   r   )r?   rE   r;   r   s       r   get_database_table_namesrU      s]       &&F&..00F<2 H >>D//D.////r   zDatabase.addDatabasec                  2    e Zd ZU ded<   edd            ZdS )	AddDatabaser$   databaser   r   r
   c                V     | t                               |d                             S )NrX   )rX   )r$   r   r   s     r   r   zAddDatabase.from_json   s1    s''Z(899
 
 
 	
r   N)r   r   r
   rW   )r   r   r   r/   r!   r   r   r   r   rW   rW      sB          
 
 
 [
 
 
r   rW   )r
   r7   )r?   r	   r@   r   r
   rA   )r?   r	   r
   rQ   )
__future__r   utilr   r   dataclassesr   enumtypingr   r	   r$   r1   r<   r>   rP   rU   rW   r   r   r   <module>r_      s   # " " " " " * * * * * * * * ! ! ! ! ! !  ; ; ; ; ; ; ; ; 
 
 
 
 
 
 
 
D 
 
 
 
 
 
 
 
0         80 0 0 0" #$$

 
 
 
 
 
 
  %$
 
 
r   