
    _j=                         d dl mZ d dlmZ d dlmZ d dlmZmZm	Z	 d dl
mZmZmZ erd dlmZ d dlmZ  G d d	ed	                   Zd
S )    )
ListObject)ListableAPIResource)StripeObject)ClassVarListOptional)LiteralUnpackTYPE_CHECKING)VerificationReportListParams) VerificationReportRetrieveParamsc                      e Zd ZU dZdZeed                  ed<    G d de          Z	 G d de          Z
 G d d	e          Z G d
 de          Z G d de          Z G d de          Zee         ed<   	 eed<   	 ee	         ed<   	 ee
         ed<   	 eed<   	 ee         ed<   	 eed<   	 ed         ed<   	 ee         ed<   ee         ed<   	 ee         ed<   	 ed         ed<   	 ee         ed<   	 ee         ed<   	 eded          d!ed          fd"            Zeded          d!ed          fd#            Zededed$         d!d fd%            Zededed$         d!d fd&            Ze	e
eeeed'Zd(S ))VerificationReporta@  
    A VerificationReport is the result of an attempt to collect and verify data from a user.
    The collection of verification checks performed is determined from the `type` and `options`
    parameters used. You can find the result of each verification check performed in the
    appropriate sub-resource: `document`, `id_number`, `selfie`.

    Each VerificationReport contains a copy of any data collected by the user as well as
    reference IDs which can be used to access collected images through the [FileUpload](https://docs.stripe.com/api/files)
    API. To configure and create VerificationReports, use the
    [VerificationSession](https://docs.stripe.com/api/identity/verification_sessions) API.

    Related guide: [Accessing verification results](https://docs.stripe.com/identity/verification-sessions#results).
    zidentity.verification_reportOBJECT_NAMEc                   8   e Zd ZU  G d de          Z G d de          Z G d de          Z G d de          Z G d	 d
e          Ze	e         e
d<   	 e	e         e
d<   	 e	e         e
d<   	 e	e         e
d<   	 e	ee                  e
d<   	 e	e         e
d<   	 e	e         e
d<   	 e	e         e
d<   	 e	e         e
d<   	 e	e         e
d<   	 e	ed                  e
d<   	 ed         e
d<   	 e	ed                  e
d<   	 e	e         e
d<   	 e	e         e
d<   	 eeeeedZdS )VerificationReport.Documentc                       e Zd ZU ee         ed<   	 ee         ed<   	 ee         ed<   	 ee         ed<   	 ee         ed<   	 ee         ed<   dS )#VerificationReport.Document.Addresscitycountryline1line2postal_codestateN)__name__
__module____qualname__r   str__annotations__     h/var/www/app.qaans.com/backend/venv/lib/python3.11/site-packages/stripe/identity/_verification_report.pyAddressr   &   s         3- c]""" C=    C=    "#&&& C=    r!   r#   c                   V    e Zd ZU ee         ed<   	 ee         ed<   	 ee         ed<   dS )VerificationReport.Document.DobdaymonthyearNr   r   r   r   intr   r    r!   r"   Dobr%   @   T         # C=    3- r!   r+   c                   J    e Zd ZU eed                  ed<   	 ee         ed<   dS )!VerificationReport.Document.Error)document_expireddocument_type_not_supporteddocument_unverified_othercodereasonNr   r   r   r   r	   r   r   r    r!   r"   Errorr.   N   sQ         1    SM!!! r!   r5   c                   V    e Zd ZU ee         ed<   	 ee         ed<   	 ee         ed<   dS )*VerificationReport.Document.ExpirationDater&   r'   r(   Nr)   r    r!   r"   ExpirationDater7   ^   r,   r!   r8   c                   V    e Zd ZU ee         ed<   	 ee         ed<   	 ee         ed<   dS )&VerificationReport.Document.IssuedDater&   r'   r(   Nr)   r    r!   r"   
IssuedDater:   l   r,   r!   r;   addressdoberrorexpiration_datefiles
first_nameissued_dateissuing_country	last_namenumber)z
[redacted]femalemaleunknownsex
unverifiedverifiedstatusdriving_licenseid_cardpassporttypeunparsed_place_of_birthunparsed_sex)r<   r=   r>   r?   rB   N)r   r   r   r   r#   r+   r5   r8   r;   r   r   r   r   r	   _inner_class_typesr    r!   r"   Documentr   %   ss        	 	 	 	 	l 	 	 	4	 	 	 	 	, 	 	 		 	 	 	 	L 	 	 	 	 	 	 	 	\ 	 	 		 	 	 	 	 	 	 	 '""""	 c]	 	 ".1111	 S	""""	 SM!!!	 j))))	 "#&&&	 C=   	 	 gGHIIII	 01111	 wGHIIII	 "*#...	 sm###	 -%
 
r!   rV   c                   |    e Zd ZU  G d de          Zee         ed<   	 ee         ed<   	 ed         ed<   	 deiZ	dS )VerificationReport.Emailc                   J    e Zd ZU eed                  ed<   	 ee         ed<   dS )VerificationReport.Email.Error)email_unverified_otheremail_verification_declinedr2   r3   Nr4   r    r!   r"   r5   rZ      O         K   
 SM!!! r!   r5   emailr>   rJ   rM   N
r   r   r   r   r5   r   r   r   r	   rU   r    r!   r"   EmailrX      s         	 	 	 	 	L 	 	 	 }	 	 01111	 &u-r!   r`   c                      e Zd ZU  G d de          Z G d de          Zee         ed<   	 ee         ed<   	 ee         ed<   	 ee         ed<   	 ee	d	                  ed
<   	 ee         ed<   	 e	d         ed<   	 eedZ
dS )VerificationReport.IdNumberc                   V    e Zd ZU ee         ed<   	 ee         ed<   	 ee         ed<   dS )VerificationReport.IdNumber.Dobr&   r'   r(   Nr)   r    r!   r"   r+   rd      r,   r!   r+   c                   J    e Zd ZU eed                  ed<   	 ee         ed<   dS )!VerificationReport.IdNumber.Error)$id_number_insufficient_document_dataid_number_mismatchid_number_unverified_otherr2   r3   Nr4   r    r!   r"   r5   rf      sQ         2    SM!!! r!   r5   r=   r>   rA   	id_number)br_cpfsg_nricus_ssnid_number_typerD   rJ   rM   )r=   r>   N)r   r   r   r   r+   r5   r   r   r   r	   rU   r    r!   r"   IdNumberrb      s         	 	 	 	 	, 	 	 		 	 	 	 	L 	 	 	  c]	 	 SM!!!	 C=   	 !)F!GHHHH	 C=   	 01111	 &)599r!   ro   c                   ~    e Zd ZU  G d de          Z G d de          Zee         ed<   ee         ed<   eedZdS )	VerificationReport.Optionsc                       e Zd ZU eeed                           ed<   	 ee         ed<   	 ee         ed<   	 ee         ed<   dS )#VerificationReport.Options.DocumentrN   allowed_typesrequire_id_numberrequire_live_capturerequire_matching_selfieN)r   r   r   r   r   r	   r   boolr    r!   r"   rV   rs     s         #WEFG     (~--- #+4.000 &.d^333 r!   rV   c                       e Zd ZdS )#VerificationReport.Options.IdNumberN)r   r   r   r    r!   r"   ro   rz   -  s        Dr!   ro   documentrj   )r{   rj   N)	r   r   r   r   rV   ro   r   r   rU   r    r!   r"   Optionsrq     s         	 	 	 	 	| 	 	 	(	 	 	 	 	| 	 	 	 8$$$$H%%%%*2JJr!   r|   c                   |    e Zd ZU  G d de          Zee         ed<   	 ee         ed<   	 ed         ed<   	 deiZ	dS )VerificationReport.Phonec                   J    e Zd ZU eed                  ed<   	 ee         ed<   dS )VerificationReport.Phone.Error)phone_unverified_otherphone_verification_declinedr2   r3   Nr4   r    r!   r"   r5   r   5  r]   r!   r5   r>   phonerJ   rM   N)
r   r   r   r   r5   r   r   r   r	   rU   r    r!   r"   Phoner~   4  s         	 	 	 	 	L 	 	 	 	 }	 01111	 &u-r!   r   c                       e Zd ZU  G d de          Zee         ed<   	 ee         ed<   	 ee         ed<   	 ed         ed<   	 deiZ	dS )	VerificationReport.Selfiec                   J    e Zd ZU eed                  ed<   	 ee         ed<   dS )VerificationReport.Selfie.Error)selfie_document_missing_photoselfie_face_mismatchselfie_manipulatedselfie_unverified_otherr2   r3   Nr4   r    r!   r"   r5   r   R  sQ         /    SM!!! r!   r5   r{   r>   selfierJ   rM   Nr_   r    r!   r"   Selfier   Q  s         	 	 	 	 	L 	 	 	" 3-	 	 	 01111	 &u-r!   r   client_reference_idcreatedr{   r^   idrj   livemodeobjectoptionsr   r   )r{   rj   verification_flowrR   r   verification_sessionparamsr   returnc                     |                      d|                                 |          }t          |t                    s$t	          dt          |          j        z            |S )0
        List all verification reports.
        getr   %Expected list object from API, got %s)_static_request	class_url
isinstancer   	TypeErrorrR   r   clsr   results      r"   listzVerificationReport.list  sp     $$MMOO % 
 

 &*-- 	7<<(*  
 r!   c                    K   |                      d|                                 |           d{V }t          |t                    s$t	          dt          |          j        z            |S )r   r   r   Nr   )_static_request_asyncr   r   r   r   rR   r   r   s      r"   
list_asynczVerificationReport.list_async  s       00MMOO 1 
 
 
 
 
 
 
 

 &*-- 	7<<(*  
 r!   r   c                 @     | |fi |}|                                  |S ):
        Retrieves an existing VerificationReport
        )refreshr   r   r   instances       r"   retrievezVerificationReport.retrieve  s2     3r$$V$$r!   c                 P   K    | |fi |}|                                  d{V  |S )r   N)refresh_asyncr   s       r"   retrieve_asyncz!VerificationReport.retrieve_async  sH       3r$$V$$$$&&&&&&&&&r!   )r{   r^   rj   r   r   r   N)r   r   r   __doc__r   r   r	   r   r   rV   r`   ro   r|   r   r   r   r   r*   rx   classmethodr
   r   r   r   r   r   rU   r    r!   r"   r   r      s          	' '"@AB   W
 W
 W
 W
 W
< W
 W
 W
r. . . . . . . .:;: ;: ;: ;: ;:< ;: ;: ;:zK K K K K, K K K8. . . . . . . .:". ". ". ". ". ". ". ".H "#&&& LLL x     E? 	GGG !!!! NNN 23333 gE? V >
????  }$$$ #3-''' <=	(	)   [& <=	(	)   [&  &'I J	   [  &'I J	   [  r!   r   N)stripe._list_objectr   stripe._listable_api_resourcer   stripe._stripe_objectr   typingr   r   r   typing_extensionsr	   r
   r   7stripe.params.identity._verification_report_list_paramsr   ;stripe.params.identity._verification_report_retrieve_paramsr   r   r    r!   r"   <module>r      s   + * * * * * = = = = = = . . . . . . + + + + + + + + + + < < < < < < < < < <           
^ ^ ^ ^ ^,-AB ^ ^ ^ ^ ^r!   