
    ChN                     x    S SK Jr  S SKJr  S SKJr  S SKJr  S SKJ	r	J
r
Jr  S SKJrJrJr   " S S\S   5      rg	)
    )
ListObject)ListableAPIResource)RequestOptions)StripeObject)ClassVarDictList)LiteralNotRequiredUnpackc                      \ rS rSr% SrSr\\S      \S'    " S S\	5      r
 " S S\5      r " S	 S
\5      r\\S'    \\S'    \S   \S'    \\\\   4   \S'    \\   \S'    \\   \S'    \\   \S'    \
\S'   \S\S   S\S    4S j5       r\S\S   S\S    4S j5       r\S\S\S   SS 4S j5       r\S\S\S   SS 4S j5       rS\
0rSrg)CountrySpec   ap  
Stripe needs to collect certain pieces of information about each account
created. These requirements can differ depending on the account's country. The
Country Specs API makes these rules available to your integration.

You can also view the information from this API call as [an online
guide](https://docs.stripe.com/docs/connect/required-verification-information).
country_specOBJECT_NAMEc                   `    \ rS rSr%  " S S\5      r " S S\5      r\\S'   \\S'   \\S.rS	r	g
)CountrySpec.VerificationFields   c                   8    \ rS rSr% \\   \S'    \\   \S'   Srg)&CountrySpec.VerificationFields.Company   
additionalminimum N__name__
__module____qualname____firstlineno__r	   str__annotations____static_attributes__r       W/home/kali/devsecops-assessor/venv/lib/python3.13/site-packages/stripe/_country_spec.pyCompanyr      "    S	! #Yr#   r%   c                   8    \ rS rSr% \\   \S'    \\   \S'   Srg))CountrySpec.VerificationFields.Individual"   r   r   r   Nr   r   r#   r$   
Individualr(   "   r&   r#   r*   company
individual)r+   r,   r   N)
r   r   r   r   r   r%   r*   r!   _inner_class_typesr"   r   r#   r$   VerificationFieldsr      s3    	l 		 	 )0
Kr#   r.   c                   b    \ rS rSr% \\   \S'    \\\      \S'    \\   \S'    \\   \S'   Sr	g)CountrySpec.ListParams0   ending_beforeexpandlimitstarting_afterr   N)
r   r   r   r   r   r    r!   r	   intr"   r   r#   r$   
ListParamsr0   0   sL    "3''	 DI&&	 3	 $C((	r#   r7   c                   ,    \ rS rSr% \\\      \S'   Srg)CountrySpec.RetrieveParamsB   r3   r   N)	r   r   r   r   r   r	   r    r!   r"   r   r#   r$   RetrieveParamsr9   B   s    DI&&	r#   r;   default_currencyidobject!supported_bank_account_currenciessupported_payment_currenciessupported_payment_methodssupported_transfer_countriesverification_fieldsparamsr0   returnc                     U R                  SU R                  5       US9n[        U[        5      (       d!  [	        S[        U5      R                  -  5      eU$ )6
Lists all Country Spec objects available in the API.
getrD   %Expected list object from API, got %s)_static_request	class_url
isinstancer   	TypeErrortyper   clsrD   results      r$   listCountrySpec.listf   s`     $$MMO % 

 &*--7<((* 
 r#   c                    #    U R                  SU R                  5       US9I Sh  vN n[        U[        5      (       d!  [	        S[        U5      R                  -  5      eU$  N<7f)rG   rH   rI   NrJ   )_static_request_asyncrL   rM   r   rN   rO   r   rP   s      r$   
list_asyncCountrySpec.list_asyncz   sm      00MMO 1 
 

 &*--7<((* 
 
s   #A$A"=A$r9   c                 8    U " U40 UD6nUR                  5         U$ )2
Returns a Country Spec for a given Country code.
)refreshrQ   r=   rD   instances       r$   retrieveCountrySpec.retrieve   s$     r$V$r#   c                 T   #    U " U40 UD6nUR                  5       I Sh  vN   U$  N7f)rZ   N)refresh_asyncr\   s       r$   retrieve_asyncCountrySpec.retrieve_async   s2      r$V$$$&&& 	's   (&(r   N)r   r   r   r   __doc__r   r   r
   r!   r   r.   r   r7   r;   r    r   r	   classmethodr   r   rS   rW   r^   rb   r-   r"   r   r#   r$   r   r      s    6DK'.12CL\ L2^ $   	G N## (,CcN';; #'s)+  $Cy( #'s)+ ,+67	M	" & 67	M	" &  &'C D	   &'C D	  01CDr#   r   N)stripe._list_objectr   stripe._listable_api_resourcer   stripe._request_optionsr   stripe._stripe_objectr   typingr   r   r	   typing_extensionsr
   r   r   r   r   r#   r$   <module>rl      s5    + = 2 . ' ' : :YE%m4 YEr#   