o
    pkjG                     @   s   d Z ddlZddlZddlmZ ddlZddlmZmZm	Z	 ddl
mZmZ ddlmZ dd	d
dddZeG dd dZ	ddedededede	eeef  de	e fddZdS )zACode generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.    N)	dataclass)AnyMappingOptional   )serialize_form_dataserialize_multipart_form)marshal_jsonzapplication/jsonz!application/x-www-form-urlencodedzmultipart/form-datazapplication/octet-streamz
text/plain)jsonform	multipartrawstringc                   @   sN   e Zd ZU dZee ed< dZee ed< dZ	ee ed< dZ
ee ed< dS )SerializedRequestBodyN
media_typecontentdatafiles)__name__
__module____qualname__r   r   str__annotations__r   r   r   r    r   r   d/home/djax/ivt_ai_plugin/venv/lib/python3.10/site-packages/google/genai/_gaos/utils/requestbodies.pyr   *   s
   
 r   request_bodynullableoptionalserialization_method
extra_bodyreturnc           	      C   s  | d u r
|s
|r
d S t | }t|}td|d urDt| ||_|d urBt|jp*d}t|t	s5t
d|| tj|dd|_|S td|d urYt|| \|_|_|_|S td|d urht| |_|S t| tttjtjfrx| |_|S t| tr| |_|S t
dt|  d	| )
Nz%^(application|text)\/([^+]+\+)*json.*z{}z5extra_body can only be merged into JSON object bodies),:)
separatorsz^multipart\/.*z%^application\/x-www-form-urlencoded.*zinvalid request body type z for mediaType )$SERIALIZATION_METHOD_TO_CONTENT_TYPEr   rematchr	   r   r
   loads
isinstancedict	TypeErrorupdatedumpsr   r   r   r   r   bytes	bytearrayioBytesIOBufferedReaderr   type)	r   r   r   r   request_body_typer   r   serialized_request_bodybodyr   r   r   serialize_request_body2   sB   




r6   )N)__doc__r/   r
   dataclassesr   r%   typingr   r   r   formsr   r   serializersr	   r$   r   boolr   r6   r   r   r   r   <module>   s<   	