
    ChG                         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  S SKJrJrJrJrJr  \(       a  S SKJr   " S S	\S	   5      rg
)    )CreateableAPIResource)ExpandableField)RequestOptions)StripeObject)ClassVarListOptionalcast)LiteralNotRequired	TypedDictUnpackTYPE_CHECKING)Configurationc                   L   \ 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\5      r " S S\5      r " S S\5      r " 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%'    \\S&      \S''    \S   \S('    \\   \S)'    \\   \S*'    \\S+'    \S,\S-   S.S 4S/ j5       r \S,\S-   S.S 4S0 j5       r!S#\
0r"S1r#g2)3Session   a  
The Billing customer portal is a Stripe-hosted UI for subscription and
billing management.

A portal configuration describes the functionality and features that you
want to provide to your customers through the portal.

A portal session describes the instantiation of the customer portal for
a particular customer. By visiting the session's URL, the customer
can manage their subscriptions and billing details. For security reasons,
sessions are short-lived and will expire if the customer does not visit the URL.
Create sessions on-demand when customers intend to manage their subscriptions
and billing details.

Related guide: [Customer management](https://docs.stripe.com/customer-management)
zbilling_portal.sessionOBJECT_NAMEc                       \ rS rSr%  " S S\5      r " S S\5      r " S S\5      r " S S	\5      r\\	S
'   \
\   \	S'    \
\   \	S'    \
\   \	S'    \S   \	S'    \\\\S.rSrg)Session.Flow*   c                       \ rS rSr%  " S S\5      r " S S\5      r\\   \S'    \\   \S'    \	S   \S	'    \\S
.r
Srg)Session.Flow.AfterCompletion+   c                   &    \ rS rSr% \\   \S'   Srg)/Session.Flow.AfterCompletion.HostedConfirmation,   custom_message N__name__
__module____qualname____firstlineno__r	   str__annotations____static_attributes__r       a/home/kali/devsecops-assessor/venv/lib/python3.13/site-packages/stripe/billing_portal/_session.pyHostedConfirmationr   ,   s     (-r(   r*   c                        \ rS rSr% \\S'   Srg)%Session.Flow.AfterCompletion.Redirect2   
return_urlr   Nr!   r"   r#   r$   r%   r&   r'   r   r(   r)   Redirectr,   2   s    r(   r0   hosted_confirmationredirectr1   portal_homepager2   type)r1   r2   r   N)r!   r"   r#   r$   r   r*   r0   r	   r&   r   _inner_class_typesr'   r   r(   r)   AfterCompletionr   +   sb    \ <  "**<!== x(( NOO (:$"r(   r7   c                   R    \ rS rSr%  " S S\5      r\\   \S'    \\S'    S\0r	Sr
g)Session.Flow.SubscriptionCancelI   c                   X    \ rS rSr%  " S S\5      r\\   \S'    \S   \S'    S\0r	Sr
g))Session.Flow.SubscriptionCancel.RetentionJ   c                        \ rS rSr% \\S'   Srg)5Session.Flow.SubscriptionCancel.Retention.CouponOfferK   couponr   Nr/   r   r(   r)   CouponOfferr?   K   s    Kr(   rB   coupon_offerr5   r   N)r!   r"   r#   r$   r   rB   r	   r&   r   r6   r'   r   r(   r)   	Retentionr<   J   s?    ,  '{33 n-- '5k%B"r(   rD   	retentionsubscriptionr   N)r!   r"   r#   r$   r   rD   r	   r&   r%   r6   r'   r   r(   r)   SubscriptionCancelr9   I   s<    CL C"  	**  #.y!9r(   rG   c                        \ rS rSr% \\S'   Srg)Session.Flow.SubscriptionUpdatee   rF   r   Nr/   r   r(   r)   SubscriptionUpdaterI   e   s    r(   rK   c                       \ rS rSr%  " S S\5      r " S S\5      r\\\      \	S'    \\   \	S'    \
\	S'    \\S	.rS
rg)&Session.Flow.SubscriptionUpdateConfirmk   c                   8    \ rS rSr% \\   \S'    \\   \S'   Srg)/Session.Flow.SubscriptionUpdateConfirm.Discountl   rA   promotion_coder   Nr    r   r(   r)   DiscountrP   l   s"     % !)-r(   rS   c                   J    \ rS rSr% \\   \S'    \\   \S'    \\   \S'   Srg)+Session.Flow.SubscriptionUpdateConfirm.Itemv   idpricequantityr   N)	r!   r"   r#   r$   r	   r%   r&   intr'   r   r(   r)   ItemrU   v   s3    SM!  }$ #3-'r(   r[   	discountsitemsrF   )r\   r]   r   N)r!   r"   r#   r$   r   rS   r[   r	   r   r&   r%   r6   r'   r   r(   r)   SubscriptionUpdateConfirmrM   k   s[    < |   X// :  08$!Gr(   r^   after_completionsubscription_cancelsubscription_updatesubscription_update_confirmpayment_method_updater`   ra   rb   r5   )r_   r`   ra   rb   r   N)r!   r"   r#   r$   r   r7   rG   rK   r^   r&   r	   r   r6   r'   r   r(   r)   Flowr   *   s    	l 	<	: 	:8	 	%	H %	HN *)%&899	 &&899	 &..G%HH	 +
 	
	 !0#5#5+D	
r(   re   c                       \ rS rSr% \\   \S'    \\S'    \\\      \S'    \S   \S'    \\S      \S'    \\   \S	'    \\   \S
'   Sr	g)Session.CreateParams   configurationcustomerexpandSession.CreateParamsFlowData	flow_data/autobgcsdadeelenzen-AUzen-CAzen-GBzen-IEzen-INzen-NZzen-SGeszes-419etfifilfrzfr-CAhrhurW   itjakoltlvmsmtnbnlplptzpt-BRroruskslsvthtrvizhzzh-HKzzh-TWlocaleon_behalf_ofr.   r   N)
r!   r"   r#   r$   r   r%   r&   r   r   r'   r   r(   r)   CreateParamsrg      s    "3''	 	 DI&&	 =>>	 .02
 2	
f	 "#&&	  $$	r(   r   c                   n    \ rS rSr% \S   \S'    \S   \S'    \S   \S'    \S   \S	'    \S
   \S'   Srg)rl      +Session.CreateParamsFlowDataAfterCompletionr_   .Session.CreateParamsFlowDataSubscriptionCancelr`   .Session.CreateParamsFlowDataSubscriptionUpdatera   5Session.CreateParamsFlowDataSubscriptionUpdateConfirmrb   rc   r5   r   Nr!   r"   r#   r$   r   r&   r   r'   r   r(   r)   CreateParamsFlowDataSession.CreateParamsFlowData   su    %9
 	
	 )<
 	
	 )<
 	
	 &1C&
 	
	 +
 	
	r(   r   c                   J    \ rS rSr% \S   \S'    \S   \S'    \S   \S'   Srg	)
r   i"  =Session.CreateParamsFlowDataAfterCompletionHostedConfirmationr1   3Session.CreateParamsFlowDataAfterCompletionRedirectr2   r3   r5   r   Nr   r   r(   r)   #CreateParamsFlowDataAfterCompletion+Session.CreateParamsFlowDataAfterCompletion"  sA    (K
 	
	 A
 	
	 JKK	r(   r   c                   &    \ rS rSr% \\   \S'   Srg)r   i4  r   r   Nr!   r"   r#   r$   r   r%   r&   r'   r   r(   r)   5CreateParamsFlowDataAfterCompletionHostedConfirmation=Session.CreateParamsFlowDataAfterCompletionHostedConfirmation4  s    #C((	r(   r   c                        \ rS rSr% \\S'   Srg)r   i:  r.   r   Nr/   r   r(   r)   +CreateParamsFlowDataAfterCompletionRedirect3Session.CreateParamsFlowDataAfterCompletionRedirect:  s    	r(   r   c                   2    \ rS rSr% \S   \S'    \\S'   Srg)r   i@  7Session.CreateParamsFlowDataSubscriptionCancelRetentionrE   rF   r   N)r!   r"   r#   r$   r   r&   r%   r'   r   r(   r)   &CreateParamsFlowDataSubscriptionCancel.Session.CreateParamsFlowDataSubscriptionCancel@  s$    E
 	
	 	r(   r   c                   2    \ rS rSr% S\S'    \S   \S'   Srg)r   iL  BSession.CreateParamsFlowDataSubscriptionCancelRetentionCouponOfferrC   r5   r   N)r!   r"   r#   r$   r&   r   r'   r   r(   r)   /CreateParamsFlowDataSubscriptionCancelRetention7Session.CreateParamsFlowDataSubscriptionCancelRetentionL  s    ZZ	 n%%	r(   r   c                        \ rS rSr% \\S'   Srg)r   iV  rA   r   Nr/   r   r(   r)   :CreateParamsFlowDataSubscriptionCancelRetentionCouponOfferBSession.CreateParamsFlowDataSubscriptionCancelRetentionCouponOfferV  s     	r(   r   c                        \ rS rSr% \\S'   Srg)r   i^  rF   r   Nr/   r   r(   r)   &CreateParamsFlowDataSubscriptionUpdate.Session.CreateParamsFlowDataSubscriptionUpdate^  s    	r(   r   c                   J    \ rS rSr% \\S      \S'    \S   \S'    \\S'   Srg)	r   id  =Session.CreateParamsFlowDataSubscriptionUpdateConfirmDiscountr\   9Session.CreateParamsFlowDataSubscriptionUpdateConfirmItemr]   rF   r   N)	r!   r"   r#   r$   r   r   r&   r%   r'   r   r(   r)   -CreateParamsFlowDataSubscriptionUpdateConfirm5Session.CreateParamsFlowDataSubscriptionUpdateConfirmd  sC    O
 	

	 G
 	
	 	r(   r   c                   8    \ rS rSr% \\   \S'    \\   \S'   Srg)r   ix  rA   rR   r   Nr   r   r(   r)   5CreateParamsFlowDataSubscriptionUpdateConfirmDiscount=Session.CreateParamsFlowDataSubscriptionUpdateConfirmDiscountx  s$    C  	 $C((	r(   r   c                   D    \ rS rSr% \\S'    \\   \S'    \\   \S'   Srg)r   i  rW   rX   rY   r   N)	r!   r"   r#   r$   r%   r&   r   rZ   r'   r   r(   r)   1CreateParamsFlowDataSubscriptionUpdateConfirmItem9Session.CreateParamsFlowDataSubscriptionUpdateConfirmItem  s0    	 3	 c""	r(   r   r   ri   createdrj   flowrW   livemodern   r   objectr   r.   urlparamsrg   returnc           	      T    [        SU R                  SU R                  5       US95      $ )+
Creates a session of the customer portal.
r   postr   )r
   _static_request	class_urlclsr   s     r)   createSession.create  s6    
    
 	
r(   c           	      p   #    [        SU R                  SU R                  5       US9I Sh  vN 5      $  N7f)r   r   r   r   N)r
   _static_request_asyncr   r   s     r)   create_asyncSession.create_async  sC      ++ ,  
 	
s   )64
	6r   N)$r!   r"   r#   r$   __doc__r   r   r   r&   r   re   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   rZ   r%   r	   boolclassmethodr   r   r   r6   r'   r   r(   r)   r   r      s   $ 	! '":;< C
| C
JN~ N`!y !Fi $	 i 
 
)  	 (	 I  #?33 L M 4. 	G N .0	
2 2f ,-- 3-  
H 
f%;< 
 
 
 
45
	
 
 !$r(   r   N)stripe._createable_api_resourcer   stripe._expandable_fieldr   stripe._request_optionsr   stripe._stripe_objectr   typingr   r   r	   r
   typing_extensionsr   r   r   r   r   $stripe.billing_portal._configurationr   r   r   r(   r)   <module>r      s@    B 4 2 . 1 1  By(#I. y(r(   