
    d{i?                         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 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)ApiResponse)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     m/home/sas/my/fyp/ringai/.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_dict0   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   r6   r7   r8   r9   r   s     r   r   zIApproveChallengeInstance.ApprovePasskeysChallengeRequestResponse.__init__C   G    5<[[AU5VD#3:;;?Q3RD!,3KK,DDN.5kk-.HDr!   c                 `    | j                   | j                  | j                  | j                  dS Nr6   r7   r8   r9   r>   r&   s    r   r%   zHApproveChallengeInstance.ApprovePasskeysChallengeRequestResponse.to_dictJ   .    &*&=&=$($9$9!^^#//	 r!   Nr(   r.   r!   r   'ApprovePasskeysChallengeRequestResponser2   ;   "    		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_sidrC   
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   rE   rF   rG   rC   rH   rI   rJ   r   iso8601_datetimerK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   rU   rV   	_solution)r   rB   r   rC   	__class__s       r   r   z!ApproveChallengeInstance.__init__h   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 {}>)joinrY   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   rh   __classcell__rZ   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d	efdZded	e	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/   ro      r0   r!   r/   c                   ,    e Zd ZdZdeeef   fdZd Zy)<ApproveChallengeList.ApprovePasskeysChallengeRequestResponser3   r   c                     |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        y r5   r:   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@   rs      rA   r!   r@   rB   rC   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.

        rC   z1/Services/{service_sid}/Passkeys/ApproveChallengeNr.   )rW   r   rY   r`   _uri)r   rB   rC   rZ   s      r   r   zApproveChallengeList.__init__   sF     	! ;
 OGNN 
nn
	r!   "approve_passkeys_challenge_requestr[   c                     |j                         }t        j                  ddi      }d|d<   d|d<   | j                  j	                  d| j
                  ||      S )z{
        Internal helper for update operation

        Returns:
            tuple: (payload, status_code, headers)
        Content-Type!application/x-www-form-urlencodedapplication/jsonAcceptPOSTmethoduridataheaders)r%   r   of_versionupdate_with_response_inforw   r   rx   r   r   s       r   _updatezApproveChallengeList._update   sc     299;))^-PQR"4.}}66tyytW 7 
 	
r!   c                 x    | j                  |      \  }}}t        | j                  || j                  d         S )z
        Update the ApproveChallengeInstance

        :param approve_passkeys_challenge_request:

        :returns: The updated ApproveChallengeInstance
        rx   rC   rC   )r   r   r   rY   r   rx   r   _s       r   updatezApproveChallengeList.update   sC     /Q % 
A (MM7}0M
 	
r!   c                     | j                  |      \  }}}t        | j                  || j                  d         }t	        |||      S )z
        Update the ApproveChallengeInstance and return response metadata

        :param approve_passkeys_challenge_request:

        :returns: ApiResponse with instance, status code, and headers
        r   rC   r   r   status_coder   )r   r   r   rY   r	   r   rx   r   r   r   instances         r   update_with_http_infoz*ApproveChallengeList.update_with_http_info  sR     )-/Q )5 )
%g ,MM7}0M
 k7SSr!   c                    K   |j                         }t        j                  ddi      }d|d<   d|d<   | j                  j	                  d| j
                  ||       d{   S 7 w)z
        Internal async helper for update operation

        Returns:
            tuple: (payload, status_code, headers)
        rz   r{   r|   r}   r~   r   N)r%   r   r   r   update_with_response_info_asyncrw   r   s       r   _update_asyncz"ApproveChallengeList._update_async  sr      299;))^-PQR"4.]]BBtyytW C 
 
 	
 
s   AA' A%!A'c                    K   | j                  |       d{   \  }}}t        | j                  || j                  d         S 7 -w)z
        Asynchronously update the ApproveChallengeInstance

        :param approve_passkeys_challenge_request:

        :returns: The updated ApproveChallengeInstance
        r   NrC   r   )r   r   r   rY   r   s       r   update_asyncz!ApproveChallengeList.update_async-  sS      #00/Q 1 
 
A (MM7}0M
 	

s   AA.Ac                    K   | j                  |       d{   \  }}}t        | j                  || j                  d         }t	        |||      S 7 ;w)z
        Asynchronously update the ApproveChallengeInstance and return response metadata

        :param approve_passkeys_challenge_request:

        :returns: ApiResponse with instance, status code, and headers
        r   NrC   r   r   )r   r   r   rY   r	   r   s         r   update_with_http_info_asyncz0ApproveChallengeList.update_with_http_info_async>  sc      /3.@.@/Q /A /
 )
%g ,MM7}0M
 k7SS)
s   AA<Ac                      y)r]   z'<Twilio.Verify.V2.ApproveChallengeList>r.   r&   s    r   rh   zApproveChallengeList.__repr__P  s     9r!   )r)   r*   r+   ri   r/   r@   r   r-   r   tupler   r   r   r	   r   r   r   r   rh   rj   rk   s   @r   rm   rm      s    & @& .
 
c 
$
2Q
	
*
2Q
	!
"T2QT	T$
2Q
	
*
2Q
	!
"T2QT	T$9# 9r!   rm   N)r,   r   typingr   r   r   twilio.baser   r   twilio.base.api_responser	   twilio.base.instance_resourcer
   twilio.base.list_resourcer   twilio.base.versionr   r   rm   r.   r!   r   <module>r      sD     & & + 0 : 2 'yP/ yPxA9< A9r!   