
    pi6                         d Z ddlmZ ddlmZmZmZ ddlmZmZ ddl	m
Z
 ddlmZ ddlmZ  G d d	e
      Z G d
 de      Zy)a  
    This code was generated by
   ___ _ _ _ _ _    _ ____    ____ ____ _    ____ ____ _  _ ____ ____ ____ ___ __   __
    |  | | | | |    | |  | __ |  | |__| | __ | __ |___ |\ | |___ |__/ |__|  | |  | |__/
    |  |_|_| | |___ | |__|    |__| |  | |    |__] |___ | \| |___ |  \ |  |  | |__| |  \

    Twilio - Verify
    This is the public Twilio REST API.

    NOTE: This class is auto generated by OpenAPI Generator.
    https://openapi-generator.tech
    Do not edit the class manually.
    )datetime)AnyDictOptional)deserializevalues)InstanceResource)ListResource)Versionc                   p     e Zd Z G d de      Z G d de      Z	 dedeee	f   def fdZ
d	efd
Z xZS )ApproveChallengeInstancec                   ,    e Zd ZdZdeeef   fdZd Zy)8ApproveChallengeInstance.ApprovePasskeysChallengeRequest  
        :ivar id: A [base64url](https://base64.guru/standards/base64url) encoded representation of `rawId`.
        :ivar raw_id: The globally unique identifier for this `PublicKeyCredential`.
        :ivar authenticator_attachment: A string that indicates the mechanism by which the WebAuthn implementation is attached to the authenticator at the time the associated `navigator.credentials.create()` or `navigator.credentials.get()` call completes.
        :ivar type: The valid credential types supported by the API. The values of this enumeration are used for versioning the `AuthenticatorAssertion` and `AuthenticatorAttestation` structures according to the type of the authenticator.
        :ivar response:
        payloadc                     |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        y Nidraw_idauthenticator_attachmenttyperesponsegetr   r   r   r   r   selfr   s     q/opt/services/ai/voice_agent/venv/lib/python3.12/site-packages/twilio/rest/verify/v2/service/approve_challenge.py__init__zAApproveChallengeInstance.ApprovePasskeysChallengeRequest.__init__#   `    %,[[%6DG)0X)>DK67 ) CJ++fBUDI J' M    c                     | j                   | j                  | j                  | j                  | j                  | j                  j                         dS d dS N)r   r   r   r   r   r   r   r   r   r   to_dictr   s    r   r$   z@ApproveChallengeInstance.ApprovePasskeysChallengeRequest.to_dict/   T    gg++,0,I,I		/3}}/HDMM))+  OS r    N	__name__
__module____qualname____doc__r   strr   r   r$    r    r   ApprovePasskeysChallengeRequestr           	
	(DcN 
	(		r    r.   c                   ,    e Zd ZdZdeeef   fdZd Zy)@ApproveChallengeInstance.ApprovePasskeysChallengeRequestResponse  
        :ivar authenticator_data: The [authenticator data](https://developer.mozilla.org/en-US/docs/Web/API/Web_Authentication_API/Authenticator_data) structure contains information from the authenticator about the processing of a credential creation or authentication request.
        :ivar client_data_json: This property contains the JSON-compatible serialization of the data passed from the browser to the authenticator in order to generate this credential.
        :ivar signature: An assertion signature over `authenticatorData` and `clientDataJSON`. The assertion signature is created with the private key of the key pair that was created during the originating `navigator.credentials.create()` call and verified using the public key of that same key pair.
        :ivar user_handle: The user handle stored in the authenticator, specified as `user.id` in the options passed to the originating `navigator.credentials.create()` call. This property should contain a base64url-encoded entity SID.
        r   c                     |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        y Nauthenticator_dataclient_data_json	signatureuser_handler   r5   r6   r7   r8   r   s     r   r   zIApproveChallengeInstance.ApprovePasskeysChallengeRequestResponse.__init__B   G    5<[[AU5VD#3:;;?Q3RD!,3KK,DDN.5kk-.HDr    c                 `    | j                   | j                  | j                  | j                  dS Nr5   r6   r7   r8   r=   r%   s    r   r$   zHApproveChallengeInstance.ApprovePasskeysChallengeRequestResponse.to_dictI   .    &*&=&=$($9$9!^^#//	 r    Nr'   r-   r    r   'ApprovePasskeysChallengeRequestResponser1   :   "    		IDcN 	I	r    r?   versionr   service_sidc                    t         |   |       |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _	        t        j                  |j                  d            | _        t        j                  |j                  d	            | _        t        j                  |j                  d
            | _        t        j                  |j                  d            | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        d|i| _        y )Noptionssidaccount_sidrB   
entity_sididentity
factor_siddate_createddate_updateddate_respondedexpiration_datestatusresponded_reasondetailshidden_detailsmetadatafactor_typeurllinks)superr   r   rD   rE   rF   rB   rG   rH   rI   r   iso8601_datetimerJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   rU   	_solution)r   rA   r   rB   	__class__s       r   r   z!ApproveChallengeInstance.__init__g   s   !4;KK	4J")++e"4*1++m*D*1++m*D)0\)B'.{{:'>)0\)B0;0L0LKK'1
 1<0L0LKK'1
 3>2N2NKK()3
 4?3O3OKK)*4
 &-[[%:/6{{;M/N4;KK	4J;B;;GW;X5<[[5L*1++m*D")++e"429++g2F
 ;
r    returnc                     dj                  d | j                  j                         D              }dj                  |      S )f
        Provide a friendly representation

        :returns: Machine friendly representation
         c              3   F   K   | ]  \  }}d j                  ||        yw)z{}={}N)format).0kvs      r   	<genexpr>z4ApproveChallengeInstance.__repr__.<locals>.<genexpr>   s     SDAq7>>!Q/Ss   !z.<Twilio.Verify.V2.ApproveChallengeInstance {}>)joinrX   itemsr_   )r   contexts     r   __repr__z!ApproveChallengeInstance.__repr__   s6     ((SDNN<P<P<RSS?FFwOOr    )r(   r)   r*   objectr.   r?   r   r   r,   r   r   rg   __classcell__rY   s   @r   r   r      sR    & @& .,!
 !
$sCx. !
s !
FP# Pr    r   c                        e Zd Z G d de      Z G d de      Zdedef fdZded	e	fd
Z
ded	e	fdZd	efdZ xZS )ApproveChallengeListc                   ,    e Zd ZdZdeeef   fdZd Zy)4ApproveChallengeList.ApprovePasskeysChallengeRequestr   r   c                     |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        y r   r   r   s     r   r   z=ApproveChallengeList.ApprovePasskeysChallengeRequest.__init__   r   r    c                     | j                   | j                  | j                  | j                  | j                  | j                  j                         dS d dS r"   r#   r%   s    r   r$   z<ApproveChallengeList.ApprovePasskeysChallengeRequest.to_dict   r&   r    Nr'   r-   r    r   r.   rn      r/   r    r.   c                   ,    e Zd ZdZdeeef   fdZd Zy)<ApproveChallengeList.ApprovePasskeysChallengeRequestResponser2   r   c                     |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        y r4   r9   r   s     r   r   zEApproveChallengeList.ApprovePasskeysChallengeRequestResponse.__init__   r:   r    c                 `    | j                   | j                  | j                  | j                  dS r<   r=   r%   s    r   r$   zDApproveChallengeList.ApprovePasskeysChallengeRequestResponse.to_dict   r>   r    Nr'   r-   r    r   r?   rr      r@   r    r?   rA   rB   c                 x    t         |   |       d|i| _         dj                  di | j                  | _        y)z
        Initialize the ApproveChallengeList

        :param version: Version that contains the resource
        :param service_sid: The unique SID identifier of the Service.

        rB   z1/Services/{service_sid}/Passkeys/ApproveChallengeNr-   )rV   r   rX   r_   _uri)r   rA   rB   rY   s      r   r   zApproveChallengeList.__init__   sF     	! ;
 OGNN 
nn
	r    "approve_passkeys_challenge_requestrZ   c                     |j                         }t        j                  ddi      }d|d<   d|d<   | j                  j	                  d| j
                  ||      }t        | j                  || j                  d         S )	z
        Update the ApproveChallengeInstance

        :param approve_passkeys_challenge_request:

        :returns: The created ApproveChallengeInstance
        Content-Type!application/x-www-form-urlencodedapplication/jsonAcceptPOSTmethoduridataheadersrB   rB   )r$   r   of_versionupdaterv   r   rX   r   rw   r   r   r   s        r   r   zApproveChallengeList.update   s     299;))^-PQR"4.--&&tyytW ' 
 (MM7}0M
 	
r    c                   K   |j                         }t        j                  ddi      }d|d<   d|d<   | j                  j	                  d| j
                  ||       d{   }t        | j                  || j                  d   	      S 7 )w)
z
        Asynchronously update the ApproveChallengeInstance

        :param approve_passkeys_challenge_request:

        :returns: The created ApproveChallengeInstance
        ry   rz   r{   r|   r}   r~   NrB   r   )r$   r   r   r   update_asyncrv   r   rX   r   s        r   r   z!ApproveChallengeList.update_async   s      299;))^-PQR"4.22tyytW 3 
 
 (MM7}0M
 	
	
s   AB B
!*Bc                      y)r\   z'<Twilio.Verify.V2.ApproveChallengeList>r-   r%   s    r   rg   zApproveChallengeList.__repr__  s     9r    )r(   r)   r*   rh   r.   r?   r   r,   r   r   r   r   rg   ri   rj   s   @r   rl   rl      se    & @& .
 
c 
$
2Q
	!
4
2Q
	!
49# 9r    rl   N)r+   r   typingr   r   r   twilio.baser   r   twilio.base.instance_resourcer	   twilio.base.list_resourcer
   twilio.base.versionr   r   rl   r-   r    r   <module>r      sA     & & + : 2 'yP/ yPxE9< E9r    