
    Ch:%                         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	  S SK
Jr  S SKJr  S SKJrJrJrJrJr  S S	KJrJrJrJrJr  \(       a  S S
KJr   " S S\S   \S   \S   5      rg)    )CreateableAPIResource)ExpandableField)
ListObject)ListableAPIResource)RequestOptions)UpdateableAPIResource)sanitize_id)ClassVarDictListOptionalcast)LiteralNotRequired	TypedDictUnpackTYPE_CHECKING)Filec                   \   \ 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\	5      r " S S\	5      r\\S'    \\S'    \\   \S'    \S   \S'    \\S'    \\S'    \\\4   \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    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\S\S$   SS 4S% j5       r\S\S\S$   SS 4S& j5       r S'r!g())FileLink   z
To share the contents of a `File` object with non-Stripe users, you can
create a `FileLink`. `FileLink`s contain a URL that you can use to
retrieve the contents of the file without authentication.
	file_linkOBJECT_NAMEc                   \    \ rS rSr% \\\      \S'    \\   \S'    \\S'    \S   \S'   Sr	g)	FileLink.CreateParams$   expand
expires_atfileLiteral['']|Dict[str, str]metadata N)
__name__
__module____qualname____firstlineno__r   r   str__annotations__int__static_attributes__r"       T/home/kali/devsecops-assessor/venv/lib/python3.13/site-packages/stripe/_file_link.pyCreateParamsr   $   sG    DI&&	  $$	 		 :;;	r+   r-   c                       \ rS rSr% \S   \S'    \\   \S'    \\\      \S'    \\   \S'    \\   \S'    \\	   \S'    \\   \S	'   S
r
g)FileLink.ListParams6   zFileLink.ListParamsCreated|intcreatedending_beforer   expiredr   limitstarting_afterr"   N)r#   r$   r%   r&   r   r(   r'   r   boolr)   r*   r"   r+   r,   
ListParamsr/   6   s    =>>	 #3''	 DI&&	 T""	 #	 3	 $C((	r+   r7   c                   \    \ rS rSr% \\   \S'    \\   \S'    \\   \S'    \\   \S'   Srg)FileLink.ListParamsCreatedT   gtgteltlter"   N)r#   r$   r%   r&   r   r)   r(   r*   r"   r+   r,   ListParamsCreatedr9   T   sH    	 	 	 	r+   r?   c                   P    \ rS rSr% \\\      \S'    \S   \S'    \S   \S'   Srg)	FileLink.ModifyParamsf   r   zLiteral['']|Literal['now']|intr   r    r!   r"   N	r#   r$   r%   r&   r   r   r'   r(   r*   r"   r+   r,   ModifyParamsrA   f   s<    DI&&	   @AA	 :;;	r+   rD   c                   ,    \ rS rSr% \\\      \S'   Srg)FileLink.RetrieveParamst   r   r"   NrC   r"   r+   r,   RetrieveParamsrF   t   s    DI&&	r+   rH   r1   r3   r   r   r   idlivemoder!   objecturlparamsr   returnc           	      T    [        SU R                  SU R                  5       US95      $ )!
Creates a new file link object.
r   postrM   )r   _static_request	class_urlclsrM   s     r,   createFileLink.create   s6    
    
 	
r+   c           	      p   #    [        SU R                  SU R                  5       US9I Sh  vN 5      $  N7f)rP   r   rQ   rR   N)r   _static_request_asyncrT   rU   s     r,   create_asyncFileLink.create_async   sC      ++ ,  
 	
s   )64
	6r/   c                     U R                  SU R                  5       US9n[        U[        5      (       d!  [	        S[        U5      R                  -  5      eU$ )
Returns a list of file links.
getrR   %Expected list object from API, got %s)rS   rT   
isinstancer   	TypeErrortyper#   rV   rM   results      r,   listFileLink.list   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)r^   r_   rR   Nr`   )rZ   rT   ra   r   rb   rc   r#   rd   s      r,   
list_asyncFileLink.list_async   sm      00MMO 1 
 

 &*--7<((* 
 
s   #A$A"=A$rA   c           	      x    U R                  5       < S[        U5      < 3n[        SU R                  SUUS95      $ )O
Updates an existing file link object. Expired links can no longer be updated.
/r   rQ   rR   )rT   r	   r   rS   rV   rI   rM   rL   s       r,   modifyFileLink.modify   sD     +b/:   
 	
r+   c           	         #    U R                  5       < S[        U5      < 3n[        SU R                  SUUS9I Sh  vN 5      $  N7f)rl   rm   r   rQ   rR   N)rT   r	   r   rZ   rn   s       r,   modify_asyncFileLink.modify_async   sQ      +b/:++ ,  
 	
s   ;AA
	ArF   c                 8    U " U40 UD6nUR                  5         U$ ),
Retrieves the file link with the given ID.
)refreshrV   rI   rM   instances       r,   retrieveFileLink.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)ru   N)refresh_asyncrw   s       r,   retrieve_asyncFileLink.retrieve_async  s2      r$V$$$&&& 	's   (&(r"   N)"r#   r$   r%   r&   __doc__r   r
   r   r(   r   r-   r7   r   r?   rD   rH   r)   r6   r   r   r'   r   classmethodr   rW   r[   r   rf   ri   ro   rr   ry   r}   r*   r"   r+   r,   r   r      s\   
 3>K'+./=~ $^ <I $~   L M  &
!! 	G N 38n K   
# 
f%<= 
* 
 
 
56
	
 
 34	J	 & 34	J	 & 

 &'> ?
	
 
  

 &'> ?
	
 
   &'@ A	   &'@ A	 r+   r   N)stripe._createable_api_resourcer   stripe._expandable_fieldr   stripe._list_objectr   stripe._listable_api_resourcer   stripe._request_optionsr   stripe._updateable_api_resourcer   stripe._utilr	   typingr
   r   r   r   r   typing_extensionsr   r   r   r   r   stripe._filer   r   r"   r+   r,   <module>r      sY    B 4 * = 2 A $ 7 7  !D*%
#*%Dr+   