
     f                        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ddl	m
Z
  G d de          ZddZ	 	 dddZddZdS )    )annotations   )event_classT_JSON_DICT)	dataclassN)runtimec                  B     e Zd ZdZddZed	d            Z fdZ xZS )
StreamHandlez
    This is either obtained from another method or specified as ``blob:<uuid>`` where
    ``<uuid>`` is an UUID of a Blob.
    returnstrc                    | S N )selfs    m/var/www/api.educacionweb.es/myenv/lib/python3.11/site-packages/selenium/webdriver/common/devtools/v125/io.pyto_jsonzStreamHandle.to_json   s        jsonc                     | |          S r   r   )clsr   s     r   	from_jsonzStreamHandle.from_json   s    s4yyr   c                j    d                     t                                                                S )NzStreamHandle({}))formatsuper__repr__)r   	__class__s    r   r   zStreamHandle.__repr__   s'    !(()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
   handler   0typing.Generator[T_JSON_DICT, T_JSON_DICT, None]c              #  f   K   t                      }|                                 |d<   d|d}|V }dS )zu
    Close the stream, discard any temporary backing storage.

    :param handle: Handle of the stream to close.
    r#   zIO.closemethodparamsN)dictr   )r#   r(   cmd_dictr   s       r   closer+      sF       &&F~~''F8 H >>DDDr   offsettyping.Optional[int]sizeZtyping.Generator[T_JSON_DICT, T_JSON_DICT, typing.Tuple[typing.Optional[bool], str, bool]]c              #    K   t                      }|                                 |d<   |||d<   |||d<   d|d}|V }d|v rt          |d                   ndt          |d                   t          |d	                   fS )
a  
    Read a chunk of the stream

    :param handle: Handle of the stream to read.
    :param offset: *(Optional)* Seek to the specified offset before reading (if not specified, proceed with offset following the last read). Some types of streams may only support sequential reads.
    :param size: *(Optional)* Maximum number of bytes to read (left upon the agent discretion if not specified).
    :returns: A tuple with the following items:

        0. **base64Encoded** - *(Optional)* Set if the data is base64-encoded
        1. **data** - Data that were read.
        2. **eof** - Set if the end-of-file condition occurred while reading.
    r#   Nr,   r.   zIO.readr&   base64Encodeddataeof)r)   r   boolr   )r#   r,   r.   r(   r*   r   s         r   readr5   0   s      " &&F~~''F8!xv H >>D'6$'>'>T/"###DDLT%[ r   	object_idruntime.RemoteObjectId/typing.Generator[T_JSON_DICT, T_JSON_DICT, str]c              #     K   t                      }|                                 |d<   d|d}|V }t          |d                   S )z
    Return UUID of Blob object specified by a remote object id.

    :param object_id: Object id of a Blob object wrapper.
    :returns: UUID of the specified Blob.
    objectIdzIO.resolveBlobr&   uuid)r)   r   r   )r6   r(   r*   r   s       r   resolve_blobr<   S   sV       &&F"**,,F:" H >>DtF|r   )r#   r
   r   r$   )NN)r#   r
   r,   r-   r.   r-   r   r/   )r6   r7   r   r8   )
__future__r   utilr   r   dataclassesr   enumtyping r   r   r
   r+   r5   r<   r   r   r   <module>rC      s    # " " " " " * * * * * * * * ! ! ! ! ! !        = = = = =3 = = =    & (,%)         F     r   