
    Ai|=                         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y
)    )
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y())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://stripe.com/docs/api/files)
    API. To configure and create VerificationReports, use the
    [VerificationSession](https://stripe.com/docs/api/identity/verification_sessions) API.

    Related guide: [Accessing verification results](https://stripe.com/docs/identity/verification-sessions#results).
    zidentity.verification_reportOBJECT_NAMEc                      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y)VerificationReport.Documentc                   x    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<   y)#VerificationReport.Document.Addresscitycountryline1line2postal_codestateN)__name__
__module____qualname__r   str__annotations__     W/var/www/html/immo/lib/python3.12/site-packages/stripe/identity/_verification_report.pyAddressr   &   sf    3- c]" C=  C=  "#& C= r!   r#   c                   B    e Zd ZU ee   ed<   	 ee   ed<   	 ee   ed<   y)VerificationReport.Document.DobdaymonthyearNr   r   r   r   intr   r    r!   r"   Dobr%   @   3    # C=  3-r!   r+   c                   6    e Zd ZU eed      ed<   	 ee   ed<   y)!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   s2    1  SM!r!   r5   c                   B    e Zd ZU ee   ed<   	 ee   ed<   	 ee   ed<   y)*VerificationReport.Document.ExpirationDater&   r'   r(   Nr)   r    r!   r"   ExpirationDater7   ^   r,   r!   r8   c                   B    e Zd ZU ee   ed<   	 ee   ed<   	 ee   ed<   y)&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   %   sn   	l 	4	, 		L 	 	\ 		 	 '""	 c]	 	 ".11	 S	""	 SM!	 j))	 "#&	 C= 	 	 gGHII	 011	 wGHII	 "*#.	 sm#	 -%
r!   rV   c                   b    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	y)VerificationReport.Emailc                   6    e Zd ZU eed      ed<   	 ee   ed<   y)VerificationReport.Email.Error)email_unverified_otheremail_verification_declinedr2   r3   Nr4   r    r!   r"   r5   rZ      0    K 
 SM!r!   r5   emailr>   rJ   rM   N
r   r   r   r   r5   r   r   r   r	   rU   r    r!   r"   EmailrX      sP    	L 	 }	 	 0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
y)VerificationReport.IdNumberc                   B    e Zd ZU ee   ed<   	 ee   ed<   	 ee   ed<   y)VerificationReport.IdNumber.Dobr&   r'   r(   Nr)   r    r!   r"   r+   rd      r,   r!   r+   c                   6    e Zd ZU eed      ed<   	 ee   ed<   y)!VerificationReport.IdNumber.Error)$id_number_insufficient_document_dataid_number_mismatchid_number_unverified_otherr2   r3   Nr4   r    r!   r"   r5   rf      s2    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	 C= 	 011	 &)59r!   ro   c                   d    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y)	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<   y)#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     sU    #WEFG   (~- #+4.0 &.d^3r!   rV   c                       e Zd Zy)#VerificationReport.Options.IdNumberN)r   r   r   r    r!   r"   ro   rz   -  s    r!   ro   documentrj   )r{   rj   N)	r   r   r   r   rV   ro   r   r   rU   r    r!   r"   Optionsrq     s=    	| 	(	| 	 8$$H%%*2Jr!   r|   c                   b    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	y)VerificationReport.Phonec                   6    e Zd ZU eed      ed<   	 ee   ed<   y)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  sP    	L 	 	 }	 011	 &u-r!   r   c                   t    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	y)	VerificationReport.Selfiec                   6    e Zd ZU eed      ed<   	 ee   ed<   y)VerificationReport.Selfie.Error)selfie_document_missing_photoselfie_face_mismatchselfie_manipulatedselfie_unverified_otherr2   r3   Nr4   r    r!   r"   r5   r   R  s2    /  SM!r!   r5   r{   r>   selfierJ   rM   Nr_   r    r!   r"   Selfier   Q  sa    	L 	" 3-	 	 	 011	 &u-r!   r   client_reference_idcreatedr{   r^   idrj   livemodeobjectoptionsr   r   )r{   rj   verification_flowrR   r   verification_sessionparamsr   returnc                     | j                  d| j                         |      }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  s]     $$MMO % 

 &*-7<((* 
 r!   c                    K   | j                  d| j                         |       d{   }t        |t              s!t	        dt        |      j                  z        |S 7 7w)r   r   r   Nr   )_static_request_asyncr   r   r   r   rR   r   r   s      r"   
list_asynczVerificationReport.list_async  sk      00MMO 1 
 

 &*-7<((* 
 
s   &A"A 8A"r   c                 8     | |fi |}|j                          |S ):
        Retrieves an existing VerificationReport
        )refreshr   r   r   instances       r"   retrievezVerificationReport.retrieve  s$     r$V$r!   c                 T   K    | |fi |}|j                          d{    |S 7 w)r   N)refresh_asyncr   s       r"   retrieve_asyncz!VerificationReport.retrieve_async  s3      r$V$$$&&& 	's   (&()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      s2    	' '"@AB W
< W
r. .:;:< ;:zK, K8. .:". ".H "#& L x   E? 	G !! N 2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!   