o
    pkj6                     @   s0  d Z ddlmZmZ ddlmZ ddlmZmZm	Z	m
Z
 ddlmZmZmZ ddlmZmZ ddl	mZmZmZmZ ddlmZ dd	lmZ dd
l
mZmZ ddlmZ ddl Z ddl!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z( G dd deZ)G dd dZ*G dd dZ+G dd deZ,G dd dZ-G dd dZ.dS )zACode generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.   )AsyncBaseSDKBaseSDK)SDKConfiguration)errorsmodelstypesutils)AfterParseErrorContextHookContextResponseContext)
AsyncFilesFiles)OptionalNullableUNSETenvironmentsinteractions)createenvironmentrequest)source)get_security_from_envresponse_helpers)unmarshal_json_response    N)AnyIterableListMappingOptionalUnioncastc                   @     e Zd ZU edd Zedd Zeed< 	d#dede	e
 d	dfd
dZdd Zdddddddde	e de	e de	e de	eeef  de	eeef  de	eeejf  d	ejfddZddddddddde	e de	eejejf  de	eeej eej f  de	eeef  de	eeef  de	eeef  de	eeejf  d	ejfddZ ddddddede	e de	eeef  de	eeef  de	eeejf  d	e!j"fdd Z#ddddddede	e de	eeef  de	eeef  de	eeejf  d	ejfd!d"Z$dS )$Environmentsc                 C      t | S N)EnvironmentsWithRawResponseself r&   ]/home/djax/ivt_ai_plugin/venv/lib/python3.10/site-packages/google/genai/_gaos/environments.pywith_raw_response$      zEnvironments.with_raw_responsec                 C   r!   r"   )!EnvironmentsWithStreamingResponser$   r&   r&   r'   with_streaming_response(   r)   z$Environments.with_streaming_responsefilesN
sdk_config
parent_refreturnc                 C   "   t j| ||d || _|   d S N)r.   )r   __init__sdk_configuration
_init_sdksr%   r-   r.   r&   r&   r'   r2   .      zEnvironments.__init__c                 C      t | j| jd| _d S r1   )r   r3   r.   r,   r$   r&   r&   r'   r4   5      zEnvironments._init_sdksapi_version	page_size
page_tokenextra_headersextra_querytimeoutr:   r;   r<   r=   r>   r?   c                C   s  d}d}t }	d}
|}| |}|du r| jj}|
dur|
}n| ||}tj|||d}t|\}}| j	d3i ddddd|d|d	|d
dddddddddd|d|dtj
| jjjdd| jjddd|}|	t kr| jjt ur| jj}	ntjdtddddddd }	d}t|	tjr|	g d!f}d"d# }t| j|pd$d%dt| jjtjddt|d&d'd(}| j||d)d* |d+k|d,}|d-kr#td.d/g|jr|  z|| W n! ty } zt| jjd0 t||| W Y d}~nd}~ww |d+krtj ntj!}t"t#|||d1| t|| jj$d0d2S z||W S  tyJ } zt| jjd0 t||| W Y d}~dS d}~ww )4  Lists environments.

        :param api_version: Which version of the API to use.
        :param page_size: Optional. Maximum number of environments to return.\nIf unspecified, defaults to 50. Maximum is 1000.
        :param page_token: Optional. Pagination token.
        :param extra_headers: Additional headers to set or replace on requests.
        :param extra_query: Additional query parameters to append to requests.
        :param timeout: Override the default request timeout configuration for this method in seconds
        Nr:   r;   r<   methodGETpath/{api_version}/environmentsbase_urlurl_variablesrequestrequest_body_requiredFrequest_has_path_paramsTrequest_has_query_paramsuser_agent_header
user-agentaccept_header_valueapplication/jsonhttp_headersextra_query_params_globalsr:   securityallow_empty_value
timeout_msattempt-count-backoff  @     0u     max_retries4084094295XXc                 S   v   t | ddrt | }td| |t | ddr&t | }td| |t | ddr5ttj| ddS td	| 
N4XX*zAPI error occurredrc   defaultrO   F)validatezUnexpected response received)r   match_responsestream_to_textr   GenAiDefaultErrorr   r   ListEnvironmentsResponsehttp_reshttp_res_textr&   r&   r'   _speakeasy_parse_response      

zAEnvironments.list_environments.<locals>._speakeasy_parse_response ListEnvironmentssyncmode	executionconfigrF   operation_idoauth2_scopessecurity_sourcetags
extensionsresponsec                 S      t ddg| S Nrf   rc   r   match_status_codescr&   r&   r'   <lambda>       z0Environments.list_environments.<locals>.<lambda>	streaminghook_ctxrH   is_error_status_codestreamretry_configparsedrf   rc   _hooksbufferedrawparserrw   
client_refr   hooksr&   )%r   _coerce_timeout_msr3   rV   _get_urlr   ListEnvironmentsRequestr   consume_response_mode_build_requestListEnvironmentsGlobalsglobalsr:   rT   r   r   RetryConfigBackoffStrategy
isinstancer
   r   r   Securityr   
do_requestr   status_coderead	Exceptionraise_parse_error__dict__r	   StreamedAPIResponseAPIResponser   r   getr%   r:   r;   r<   r=   r>   r?   rF   rG   retries
server_urlrP   rV   rH   _speakeasy_response_modereqr   rq   _speakeasy_hook_ctxro   
parse_exc__speakeasy_response_clsr&   r&   r'   list_environments8   s   

	






	

zEnvironments.list_environmentsr:   networksourcesr=   r>   
extra_bodyr?   r   r   r   c                   s  d}d}	t }
d}|}| |}|du r| jj}|dur|}n| ||	}tj|tjt	|t
tj t	|t
ttj  ddt|\}}| jd5i ddddd|d	|	d
ddddddddddd|d|dtj| jjjdd| jjd fddddd|}|
t kr| jjt ur| jj}
ntjdtddd d!dd"d#}
d}t|
tjr|
g d$f}d%d& }t| j|pd'd(dt| jjtjddt|d)d*d+}| j||d,d |d-k|d.}|d/kr?t d0d1g|j!r |"  z|| W n! t#y } zt$| jj%d2 t&||| W Y d}~nd}~ww |d-kr(tj'ntj(}t)t*|||d3| t&|| jj%+d2d4S z||W S  t#yf } zt$| jj%d2 t&||| W Y d}~dS d}~ww )6A  Creates an environment.

        :param api_version: Which version of the API to use.
        :param network: Network configuration for the environment.
        :param sources: Sources to be mounted into the environment.
        :param extra_headers: Additional headers to set or replace on requests.
        :param extra_query: Additional query parameters to append to requests.
        :param extra_body: Additional JSON object fields to merge into request bodies.
        :param timeout: Override the default request timeout configuration for this method in seconds
        Nr   r   r:   bodyrB   POSTrD   rE   rF   rG   rH   rI   TrJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   get_serialized_bodyc                         t jjdddtj dS NFjson)r   r   serialize_request_bodyr   r   CreateEnvironmentRequestr&   r   rH   r&   r'   r         z1Environments.create_environment.<locals>.<lambda>rU   rV   rW   rX   rY   rZ   r[   r\   r]   r_   c                 S   rd   re   r   rj   rk   r   rl   r   r   Environmentrn   r&   r&   r'   rq   9  rr   zBEnvironments.create_environment.<locals>._speakeasy_parse_responsers   CreateEnvironmentru   rv   ry   c                 S   r   r   r   r   r&   r&   r'   r   Z  r   r   r   r   rf   rc   r   r   r   r&   ),r   r   r3   rV   r   r   r   r   r   get_pydantic_modelr   $CreateEnvironmentRequestNetworkUnionr   r   Sourcer   r   r   CreateEnvironmentGlobalsr   r:   rT   r   r   r   r   r
   r   r   r   r   r   r   r   r   r   r   r   r	   r   r   r   r   r   r%   r:   r   r   r=   r>   r   r?   rF   rG   r   r   rP   rV   r   r   r   rq   r   ro   r   r   r&   r   r'   create_environment   s  


	






	

zEnvironments.create_environmentr:   r=   r>   r?   idc                C     d}d}t }d}	|}
| |}|du r| jj}|	dur|	}n| ||}tj||d}t|
\}}
| j	d3i ddddd|d|d	|d
dddddddddd|
d|dtj
| jjjdd| jjddd|}|t kr| jjt ur| jj}ntjdtddddddd }d}t|tjr|g d!f}d"d# }t| j|pd$d%dt| jjtjddt|d&d'd(}| j||d)d* |d+k|d,}|d-kr"td.d/g|jr|  z|| W n! ty } zt| jjd0 t||| W Y d}~nd}~ww |d+krtj ntj!}t"t#|||d1| t|| jj$d0d2S z||W S  tyI } zt| jjd0 t||| W Y d}~dS d}~ww )4	  Deletes an environment.

        :param id: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
        :param api_version: Which version of the API to use.
        :param extra_headers: Additional headers to set or replace on requests.
        :param extra_query: Additional query parameters to append to requests.
        :param timeout: Override the default request timeout configuration for this method in seconds
        Nr:   r   rB   DELETErD    /{api_version}/environments/{id}rF   rG   rH   rI   FrJ   TrK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   rU   rV   rW   rX   rY   rZ   r[   r\   r]   r_   c                 S   rd   re   )r   rj   rk   r   rl   r   r   Emptyrn   r&   r&   r'   rq     rr   zBEnvironments.delete_environment.<locals>._speakeasy_parse_responsers   DeleteEnvironmentru   rv   ry   c                 S   r   r   r   r   r&   r&   r'   r     r   z1Environments.delete_environment.<locals>.<lambda>r   r   r   rf   rc   r   r   r   r&   )%r   r   r3   rV   r   r   DeleteEnvironmentRequestr   r   r   DeleteEnvironmentGlobalsr   r:   rT   r   r   r   r   r   r
   r   r   r   r   r   r   r   r   r   r   r   r	   r   r   r   r   r   r%   r   r:   r=   r>   r?   rF   rG   r   r   rP   rV   rH   r   r   r   rq   r   ro   r   r   r&   r&   r'   delete_environment     

	






	

zEnvironments.delete_environmentc                C   r   )4  Gets an environment.

        :param id: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
        :param api_version: Which version of the API to use.
        :param extra_headers: Additional headers to set or replace on requests.
        :param extra_query: Additional query parameters to append to requests.
        :param timeout: Override the default request timeout configuration for this method in seconds
        Nr   rB   rC   rD   r   rF   rG   rH   rI   FrJ   TrK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   rU   rV   rW   rX   rY   rZ   r[   r\   r]   r_   c                 S   rd   re   r   rn   r&   r&   r'   rq   e  rr   z?Environments.get_environment.<locals>._speakeasy_parse_responsers   GetEnvironmentru   rv   ry   c                 S   r   r   r   r   r&   r&   r'   r     r   z.Environments.get_environment.<locals>.<lambda>r   r   r   rf   rc   r   r   r   r&   )%r   r   r3   rV   r   r   GetEnvironmentRequestr   r   r   GetEnvironmentGlobalsr   r:   rT   r   r   r   r   r   r
   r   r   r   r   r   r   r   r   r   r   r   r	   r   r   r   r   r   r   r&   r&   r'   get_environment  r   zEnvironments.get_environmentr"   )%__name__
__module____qualname__propertyr(   r+   r   __annotations__r   r   objectr2   r4   strintr   r   r   floathttpxTimeoutr   rm   r   %environments_createenvironmentrequestr   )CreateEnvironmentRequestNetworkUnionParamr   interactions_sourcer   SourceParamr   r   r   r   r   r   r&   r&   r&   r'   r    #   s   
 


	
 

 8
 r    c                   @   *   e Zd ZdeddfddZedd ZdS )r#   sdkr/   Nc                 C   J   || _ t|jd| _t|jd| _t|jd| _t|jd| _d S Nr=   )_sdkr   to_raw_response_wrapperr   r   r   r   r%   r   r&   r&   r'   r2        
z$EnvironmentsWithRawResponse.__init__c                 C   
   | j jjS r"   r   r,   r(   r$   r&   r&   r'   r,        
z!EnvironmentsWithRawResponse.filesr   r   r   r    r2   r   r,   r&   r&   r&   r'   r#         r#   c                   @   r   )r*   r   r/   Nc                 C   r   r   )r   r   to_streamed_response_wrapperr   r   r   r   r   r&   r&   r'   r2     r   z*EnvironmentsWithStreamingResponse.__init__c                 C   r   r"   r   r,   r+   r$   r&   r&   r'   r,     r   z'EnvironmentsWithStreamingResponse.filesr   r&   r&   r&   r'   r*     r   r*   c                   @   r   )$AsyncEnvironmentsc                 C   r!   r"   ) AsyncEnvironmentsWithRawResponser$   r&   r&   r'   r(     r)   z#AsyncEnvironments.with_raw_responsec                 C   r!   r"   )&AsyncEnvironmentsWithStreamingResponser$   r&   r&   r'   r+     r)   z)AsyncEnvironments.with_streaming_responser,   Nr-   r.   r/   c                 C   r0   r1   )r   r2   r3   r4   r5   r&   r&   r'   r2     r6   zAsyncEnvironments.__init__c                 C   r7   r1   )r   r3   r.   r,   r$   r&   r&   r'   r4     r8   zAsyncEnvironments._init_sdksr9   r:   r;   r<   r=   r>   r?   c                   s  d}d}t }	d}
|}| |}|du r| jj}|
dur|
}n| ||}tj|||d}t|\}}| j	d4i ddddd|d|d	|d
dddddddddd|d|dtj
| jjjdd| jjddd|}|	t kr| jjt ur| jj}	ntjdtddddddd }	d}t|	tjr|	g d!f}d"d# }t| j|pd$d%dt| jjtjddt|d&d'd(}| j||d)d* |d+k|d,I dH }|d-kr=td.d/g|jr| I dH  z	||I dH  W n+ ty } zt| jjd0| jjd1t |||I dH  W Y d}~nd}~ww |d+kr tj!ntj"}t#t$|||d2| t || jjd1| jjd0d3S z||I dH W S  tyq } zt| jjd0| jjd1t |||I dH  W Y d}~dS d}~ww )5r@   NrA   rB   rC   rD   rE   rF   rG   rH   rI   FrJ   TrK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   rU   rV   rW   rX   rY   rZ   r[   r\   r]   r_   c                       t | ddrt | I d H }td| |t | ddr-t | I d H }td| |t | ddr<ttj| ddS td	| re   )r   rj   stream_to_text_asyncr   rl   r   r   rm   rn   r&   r&   r'   rq   >      zFAsyncEnvironments.list_environments.<locals>._speakeasy_parse_responsers   rt   asyncrv   ry   c                 S   r   r   r   r   r&   r&   r'   r   _  r   z5AsyncEnvironments.list_environments.<locals>.<lambda>r   r   r   rf   rc   _async_hooksr   r   r   r   rw   r   r   r   async_hooksr&   )%r   r   r3   rV   r   r   r   r   r   _build_request_asyncr   r   r:   rT   r   r   r   r   r   r
   r   r   r   r   do_request_asyncr   r   areadr   raise_parse_error_asyncr   r   r	   AsyncStreamedAPIResponseAsyncAPIResponser   r   r   r&   r&   r'   r     s  

	






z#AsyncEnvironments.list_environmentsr   r   r   r   c                   s  d}d}	t }
d}|}| |}|du r| jj}|dur|}n| ||	}tj|tjt	|t
tj t	|t
ttj  ddt|\}}| jd6i ddddd|d	|	d
ddddddddddd|d|dtj| jjjdd| jjd fddddd|}|
t kr| jjt ur| jj}
ntjdtddd d!dd"d#}
d}t|
tjr|
g d$f}d%d& }t| j|pd'd(dt| jjtjddt|d)d*d+}| j||d,d |d-k|d.I dH }|d/krYt d0d1g|j!r4|" I dH  z	||I dH  W n+ t#y3 } zt$| jj%&d2| jj%&d3t'|||I dH  W Y d}~nd}~ww |d-kr<tj(ntj)}t*t+|||d4| t'|| jj%&d3| jj%&d2d5S z||I dH W S  t#y } zt$| jj%&d2| jj%&d3t'|||I dH  W Y d}~dS d}~ww )7r   Nr   r   rB   r   rD   rE   rF   rG   rH   rI   TrJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   r   c                      r   r   r   r&   r   r&   r'   r     r   z6AsyncEnvironments.create_environment.<locals>.<lambda>rU   rV   rW   rX   rY   rZ   r[   r\   r]   r_   c                    r  re   r   rj   r  r   rl   r   r   r   rn   r&   r&   r'   rq     r  zGAsyncEnvironments.create_environment.<locals>._speakeasy_parse_responsers   r   r  rv   ry   c                 S   r   r   r   r   r&   r&   r'   r     r   r   r   r   rf   rc   r  r   r   r  r&   ),r   r   r3   rV   r   r   r   r   r   r   r   r   r   r   r   r   r   r
  r   r   r:   rT   r   r   r   r   r
   r   r   r   r   r  r   r   r  r   r  r   r   r	   r  r  r   r   r   r&   r   r'   r     s  


	






z$AsyncEnvironments.create_environmentr   r   c                     d}d}t }d}	|}
| |}|du r| jj}|	dur|	}n| ||}tj||d}t|
\}}
| j	d4i ddddd|d|d	|d
dddddddddd|
d|dtj
| jjjdd| jjddd|}|t kr| jjt ur| jj}ntjdtddddddd }d}t|tjr|g d!f}d"d# }t| j|pd$d%dt| jjtjddt|d&d'd(}| j||d)d* |d+k|d,I dH }|d-kr<td.d/g|jr| I dH  z	||I dH  W n+ ty } zt| jjd0| jjd1t |||I dH  W Y d}~nd}~ww |d+krtj!ntj"}t#t$|||d2| t || jjd1| jjd0d3S z||I dH W S  typ } zt| jjd0| jjd1t |||I dH  W Y d}~dS d}~ww )5r   Nr   rB   r   rD   r   rF   rG   rH   rI   FrJ   TrK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   rU   rV   rW   rX   rY   rZ   r[   r\   r]   r_   c                    r  re   )r   rj   r  r   rl   r   r   r   rn   r&   r&   r'   rq     r  zGAsyncEnvironments.delete_environment.<locals>._speakeasy_parse_responsers   r   r  rv   ry   c                 S   r   r   r   r   r&   r&   r'   r     r   z6AsyncEnvironments.delete_environment.<locals>.<lambda>r   r   r   rf   rc   r  r   r   r  r&   )%r   r   r3   rV   r   r   r   r   r   r
  r   r   r:   rT   r   r   r   r   r   r
   r   r   r   r   r  r   r   r  r   r  r   r   r	   r  r  r   r   r   r&   r&   r'   r   B    

	






z$AsyncEnvironments.delete_environmentc                   r  )5r   Nr   rB   rC   rD   r   rF   rG   rH   rI   FrJ   TrK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   rU   rV   rW   rX   rY   rZ   r[   r\   r]   r_   c                    r  re   r  rn   r&   r&   r'   rq   &  r  zDAsyncEnvironments.get_environment.<locals>._speakeasy_parse_responsers   r   r  rv   ry   c                 S   r   r   r   r   r&   r&   r'   r   G  r   z3AsyncEnvironments.get_environment.<locals>.<lambda>r   r   r   rf   rc   r  r   r   r  r&   )%r   r   r3   rV   r   r   r   r   r   r
  r   r   r:   rT   r   r   r   r   r   r
   r   r   r   r   r  r   r   r  r   r  r   r   r	   r  r  r   r   r   r&   r&   r'   r     r  z!AsyncEnvironments.get_environmentr"   )%r   r   r   r   r(   r+   r   r   r   r   r   r2   r4   r   r   r   r   r   r   r   r   r   rm   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r&   r&   r&   r'   r     s   
 


	
  

 ;
 r   c                   @   r   )r  r   r/   Nc                 C   r   r   )r   r   async_to_raw_response_wrapperr   r   r   r   r   r&   r&   r'   r2   v  r   z)AsyncEnvironmentsWithRawResponse.__init__c                 C   r   r"   r   r$   r&   r&   r'   r,     r   z&AsyncEnvironmentsWithRawResponse.filesr   r   r   r   r2   r   r,   r&   r&   r&   r'   r  u  r   r  c                   @   r   )r  r   r/   Nc                 C   r   r   )r   r   "async_to_streamed_response_wrapperr   r   r   r   r   r&   r&   r'   r2     r   z/AsyncEnvironmentsWithStreamingResponse.__init__c                 C   r   r"   r   r$   r&   r&   r'   r,     r   z,AsyncEnvironmentsWithStreamingResponse.filesr  r&   r&   r&   r'   r    r   r  )/__doc__basesdkr   r   sdkconfigurationr   rs   r   r   r   r   r   r	   r
   r   r,   r   r   r   r   r   r   types.environmentsr   r   types.interactionsr   r   r   r   utils.unmarshal_json_responser   r   typingr   r   r   r   r   r   r   r    r#   r*   r   r  r  r&   r&   r&   r'   <module>   s:   $          