Ë
    <@‹g?  ã                   óä   — d dl mZ d dlmZ d dlmZ d dlmZ d dlm	Z	 d dl
mZ d dlmZ d dlmZ d d	lmZmZmZmZmZ d d
lmZmZmZmZmZ erd dlmZ d dlmZ  G d„ ded   ed   ed   «      Z y)é    )ÚCreateableAPIResource)ÚExpandableField)Ú
ListObject)ÚListableAPIResource)ÚRequestOptions)ÚStripeObject)ÚUpdateableAPIResource)Úsanitize_id)ÚClassVarÚDictÚListÚOptionalÚcast)ÚLiteralÚNotRequiredÚ	TypedDictÚUnpackÚTYPE_CHECKING)ÚCoupon)ÚCustomerc                   óô  — 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 G d„ de
«      Z G d„ de«      Z G d„ de«      Z G d„ de
«      Zeed<   	 eed<   	 ded<   	 eed<   	 eed      ed<   	 ee   ed<   	 eed <   	 eed!<   	 ee   ed"<   	 eeeef      ed#<   	 ed   ed$<   	 e	ed%<   eed&<   	 ed'ed(   d)d fd*„«       Zed'ed(   d)d fd+„«       Z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d0„«       Z"ed ed'ed/   d)d fd1„«       Z#ed ed'ed2   d)d fd3„«       Z$ed ed'ed2   d)d fd4„«       Z%d%e	iZ&y5)6ÚPromotionCodez¶
    A Promotion Code represents a customer-redeemable code for a [coupon](https://stripe.com/docs/api#coupons). It can be used to
    create multiple codes for a single coupon.
    Úpromotion_codeÚOBJECT_NAMEc                   ó~   — e Zd ZU  G d„ de«      Zeeeef      ed<   	 e	ed<   	 ee
   ed<   	 ee   ed<   	 deiZdgZy)úPromotionCode.Restrictionsc                   ó   — e Zd ZU eed<   y)ú*PromotionCode.Restrictions.CurrencyOptionsÚminimum_amountN)Ú__name__Ú
__module__Ú__qualname__ÚintÚ__annotations__© ó    úU/var/www/html/AdoubleTech/venv/lib/python3.12/site-packages/stripe/_promotion_code.pyÚCurrencyOptionsr   &   s   … ØÓðr&   r(   Úcurrency_optionsÚfirst_time_transactionr   Úminimum_amount_currencyN)r    r!   r"   r   r(   r   r   Ústrr$   Úboolr#   Ú_inner_class_typesÚ_inner_class_dictsr%   r&   r'   ÚRestrictionsr   %   so   … ô	˜lô 	ð # 4¨¨_Ð(<Ñ#=Ñ>Ó>ð	ð !%Ó$ð	ð ! ™Ó%ð	ð "*¨#¡Ó.ð	ð 1°/ÐBÐØ0Ð1Ñr&   r0   c                   ó¸   — e Zd ZU ee   ed<   	 ee   ed<   	 eed<   	 ee   ed<   	 eee      ed<   	 ee   ed<   	 ee   ed<   	 ee	eef      ed<   	 ed	   ed
<   y)úPromotionCode.CreateParamsÚactiveÚcodeÚcouponÚcustomerÚexpandÚ
expires_atÚmax_redemptionsÚmetadataú&PromotionCode.CreateParamsRestrictionsÚrestrictionsN)
r    r!   r"   r   r-   r$   r,   r   r#   r   r%   r&   r'   ÚCreateParamsr2   ?   s©   … Ø˜DÑ!Ó!ð	ð ˜#ÑÓð	ð
 ‹ð	ð ˜cÑ"Ó"ð	ð ˜D ™IÑ&Ó&ð	ð   Ñ$Ó$ð	ð % SÑ)Ó)ð	ð ˜d 3¨ 8™nÑ-Ó-ð	ð "Ð"JÑKÓKð	r&   r=   c                   ó^   — e Zd ZU eeedf      ed<   	 ee   ed<   	 ee   ed<   	 ee   ed<   y)r;   ú5PromotionCode.CreateParamsRestrictionsCurrencyOptionsr)   r*   r   r+   N)	r    r!   r"   r   r   r,   r$   r-   r#   r%   r&   r'   ÚCreateParamsRestrictionsz&PromotionCode.CreateParamsRestrictionsg   sX   … Ø%ØÐMÐMÑNñ
ó 	
ð	ð !,¨DÑ 1Ó1ð	ð $ CÑ(Ó(ð	ð "-¨SÑ!1Ó1ð	r&   r@   c                   ó   — e Zd ZU ee   ed<   y)r?   r   N©r    r!   r"   r   r#   r$   r%   r&   r'   Ú'CreateParamsRestrictionsCurrencyOptionsz5PromotionCode.CreateParamsRestrictionsCurrencyOptions{   ó   … Ø# CÑ(Ó(ð	r&   rC   c                   ó´   — e Zd ZU 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ee      ed<   	 ee   ed	<   	 ee   ed
<   y)úPromotionCode.ListParamsr3   r4   r5   z#PromotionCode.ListParamsCreated|intÚcreatedr6   Úending_beforer7   ÚlimitÚstarting_afterN)	r    r!   r"   r   r-   r$   r,   r   r#   r%   r&   r'   Ú
ListParamsrF      s§   … Ø˜DÑ!Ó!ð	ð ˜#ÑÓð	ð ˜CÑ Ó ð	ð ÐBÑCÓCð	ð ˜cÑ"Ó"ð	ð # 3Ñ'Ó'ð	ð ˜D ™IÑ&Ó&ð	ð ˜3ÑÓð	ð $ CÑ(Ó(ð	r&   rK   c                   óT   — e Zd ZU ee   ed<   	 ee   ed<   	 ee   ed<   	 ee   ed<   y)úPromotionCode.ListParamsCreatedÚgtÚgteÚltÚlteNrB   r%   r&   r'   ÚListParamsCreatedrM   §   sH   … Ø˜ÑÓð	ð ˜ÑÓð	ð ˜ÑÓð	ð ˜ÑÓð	r&   rR   c                   óZ   — e Zd ZU ee   ed<   	 eee      ed<   	 ed   ed<   	 ed   ed<   y)úPromotionCode.ModifyParamsr3   r7   zLiteral['']|Dict[str, str]r:   ú&PromotionCode.ModifyParamsRestrictionsr<   N)r    r!   r"   r   r-   r$   r   r,   r%   r&   r'   ÚModifyParamsrT   ¹   sN   … Ø˜DÑ!Ó!ð	ð ˜D ™IÑ&Ó&ð	ð Ð:Ñ;Ó;ð	ð "Ð"JÑKÓKð	r&   rV   c                   ó(   — e Zd ZU eeedf      ed<   y)rU   ú5PromotionCode.ModifyParamsRestrictionsCurrencyOptionsr)   N)r    r!   r"   r   r   r,   r$   r%   r&   r'   ÚModifyParamsRestrictionsz&PromotionCode.ModifyParamsRestrictionsË   s"   … Ø%ØÐMÐMÑNñ
ó 	
ð	r&   rY   c                   ó   — e Zd ZU ee   ed<   y)rX   r   NrB   r%   r&   r'   Ú'ModifyParamsRestrictionsCurrencyOptionsz5PromotionCode.ModifyParamsRestrictionsCurrencyOptionsÓ   rD   r&   r[   c                   ó$   — e Zd ZU eee      ed<   y)úPromotionCode.RetrieveParamsr7   N)r    r!   r"   r   r   r,   r$   r%   r&   r'   ÚRetrieveParamsr]   Ù   s   … Ø˜D ™IÑ&Ó&ð	r&   r^   r3   r4   r   r5   rG   r   r6   r8   ÚidÚlivemoder9   r:   Úobjectr<   Útimes_redeemedÚparamsr2   Úreturnc                 óZ   — t        d| j                  d| j                  «       |¬«      «      S )úš
        A promotion code points to a coupon. You can optionally restrict the code to a specific customer, redemption limit, and expiration date.
        r   Úpost©rc   )r   Ú_static_requestÚ	class_url©Úclsrc   s     r'   ÚcreatezPromotionCode.create  s6   € ô ØØ×ÑØØ—‘“Øð  ó ó
ð 	
r&   c              ‹   óv   K  — t        d| j                  d| j                  «       |¬«      ƒ d{  –—† «      S 7 Œ­w)rf   r   rg   rh   N)r   Ú_static_request_asyncrj   rk   s     r'   Úcreate_asynczPromotionCode.create_async#  sD   è ø€ ô ØØ×+Ñ+ØØ—‘“Øð ,ó ÷ ó
ð 	
ðús   ‚,9®7
¯	9rF   c                 ó¬   — | j                  d| j                  «       |¬«      }t        |t        «      s!t	        dt        |«      j                  z  «      ‚|S )ú9
        Returns a list of your promotion codes.
        Úgetrh   ú%Expected list object from API, got %s)ri   rj   Ú
isinstancer   Ú	TypeErrorÚtyper    ©rl   rc   Úresults      r'   ÚlistzPromotionCode.list3  s]   € ð ×$Ñ$ØØM‰M‹OØð %ó 
ˆô
 ˜&¤*Ô-ÜØ7Ü˜“<×(Ñ(ñ*óð ð
 ˆr&   c              ‹   óÈ   K  — | j                  d| j                  «       |¬«      ƒ d{  –—† }t        |t        «      s!t	        dt        |«      j                  z  «      ‚|S 7 Œ7­w)rr   rs   rh   Nrt   )ro   rj   ru   r   rv   rw   r    rx   s      r'   Ú
list_asynczPromotionCode.list_asyncG  sk   è ø€ ð ×0Ñ0ØØM‰M‹OØð 1ó 
÷ 
ˆô
 ˜&¤*Ô-ÜØ7Ü˜“<×(Ñ(ñ*óð ð
 ˆð
ús   ‚&A"¨A ©8A"rT   c                 óz   — | j                  «       ›dt        |«      ›}t        d| j                  d||¬«      «      S )ú
        Updates the specified promotion code by setting the values of the parameters passed. Most fields are, by design, not editable.
        ú/r   rg   rh   )rj   r
   r   ri   ©rl   r_   rc   Úurls       r'   ÚmodifyzPromotionCode.modify[  sD   € ð Ÿ™¬+°b¬/Ð:ˆÜØØ×ÑØØØð  ó ó
ð 	
r&   c              ‹   ó–   K  — | j                  «       ›dt        |«      ›}t        d| j                  d||¬«      ƒ d{  –—† «      S 7 Œ­w)r~   r   r   rg   rh   N)rj   r
   r   ro   r€   s       r'   Úmodify_asynczPromotionCode.modify_asyncl  sR   è ø€ ð Ÿ™¬+°b¬/Ð:ˆÜØØ×+Ñ+ØØØð ,ó ÷ ó
ð 	
ðús   ‚<A	¾A
¿	A	r]   c                 ó8   —  | |fi |¤Ž}|j                  «        |S )ú×
        Retrieves the promotion code with the given ID. In order to retrieve a promotion code by the customer-facing code use [list](https://stripe.com/docs/api/promotion_codes/list) with the desired code.
        )Úrefresh©rl   r_   rc   Úinstances       r'   ÚretrievezPromotionCode.retrieve}  s$   € ñ rÑ$˜VÑ$ˆØ×ÑÔØˆr&   c              ‹   óT   K  —  | |fi |¤Ž}|j                  «       ƒ d{  –—†  |S 7 Œ­w)r†   N)Úrefresh_asyncrˆ   s       r'   Úretrieve_asynczPromotionCode.retrieve_asyncˆ  s3   è ø€ ñ rÑ$˜VÑ$ˆØ×$Ñ$Ó&×&Ð&Øˆð 	'ús   ‚(Ÿ& (N)'r    r!   r"   Ú__doc__r   r   r   r$   r   r0   r   r=   r   r@   rC   rK   rR   rV   rY   r[   r^   r-   r,   r#   r   r   r   Úclassmethodr   rm   rp   r   rz   r|   r‚   r„   rŠ   r   r.   r%   r&   r'   r   r      sâ  … ñ
ð
 8H€K˜'Ð"2Ñ3Ñ4ÓGô2|ô 2ô4&~ô &ôP 9ô ô(°)ô ô$^ô $ôL˜Iô ô$~ô ô$ 9ô ô°)ô ô˜ô ð ƒLðð ƒIðð Óðð
 ƒLðð  zÑ2Ñ3Ó3ðð ˜‘Óðð 	ƒGðð ƒNðð ˜c‘]Ó"ðð t˜C ˜H‘~Ñ&Ó&ðð Ð$Ñ%Ó%ðð ÓØÓðð ð
ØÐ:Ñ;ð
à	ò
ó ð
ð ð
ØÐ:Ñ;ð
à	ò
ó ð
ð ðØÐ8Ñ9ðà	OÑ	$òó ðð& ðØÐ8Ñ9ðà	OÑ	$òó ðð& ð
Øð
Ø &Ð'CÑ Dð
à	ò
ó ð
ð  ð
Øð
Ø &Ð'CÑ Dð
à	ò
ó ð
ð  ðØðØ &Ð'EÑ Fðà	òó ðð ðØðØ &Ð'EÑ Fðà	òó ðð )¨,Ð7Ñr&   r   N)!Ústripe._createable_api_resourcer   Ústripe._expandable_fieldr   Ústripe._list_objectr   Ústripe._listable_api_resourcer   Ústripe._request_optionsr   Ústripe._stripe_objectr   Ústripe._updateable_api_resourcer	   Ústripe._utilr
   Útypingr   r   r   r   r   Útyping_extensionsr   r   r   r   r   Ústripe._couponr   Ústripe._customerr   r   r%   r&   r'   ú<module>rœ      s_   ðõ BÝ 4Ý *Ý =Ý 2Ý .Ý AÝ $ß 7Õ 7÷õ ñ Ý%Ý)ôz8Ø˜/Ñ*Ø˜Ñ(Ø˜/Ñ*õz8r&   