Ë
    qûàg	  ã                   ó2   — d dl mZ ddlmZ  G d„ de«      Zy)é   )ÚResourceé   )ÚURLc                   ó’   ‡ — e Zd Zdˆ fd„	Zi fˆ fd„	Zi fˆ fd„	Zi fd„Zi fd„Zi fd„Zi fd„Z	i fd„Z
d	„ Zi fd
„Zi fd„Zi fd„Zˆ xZS )ÚSubscriptionc                 óx   •— t         t        | �  |«       t        j                  t        j
                  z   | _        y ©N)Úsuperr   Ú__init__r   ÚV1ÚSUBSCRIPTION_URLÚbase_url)ÚselfÚclientÚ	__class__s     €ú]/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/razorpay/resources/subscription.pyr   zSubscription.__init__   s(   ø€ ÜŒl˜DÑ*¨6Ô2ÜŸ™¤×!5Ñ!5Ñ5ˆ�ó    c                 ó,   •— t        t        | �
  |fi |¤ŽS )zo
        Fetch all Subscription entities

        Returns:
            Dictionary of Subscription data
        )r
   r   Úall)r   ÚdataÚkwargsr   s      €r   r   zSubscription.all
   s   ø€ ô ”\ 4Ñ,¨TÑ<°VÑ<Ð<r   c                 ó.   •— t        t        | �
  ||fi |¤ŽS )úÖ
        Fetch Subscription for given Id

        Args:
            subscription_id : Id for which subscription object is retrieved

        Returns:
            Subscription dict for given subscription Id
        )r
   r   Úfetch)r   Úsubscription_idr   r   r   s       €r   r   zSubscription.fetch   s   ø€ ô ”\ 4Ñ.¨ÀÑOÈÑOÐOr   c                 óB   — | j                   } | j                  ||fi |¤ŽS )zÏ
        Create Subscription from given dict

        Args:
            data : Dictionary using which Subscription has to be created

        Returns:
            Subscription Dict which was created
        )r   Úpost_url)r   r   r   Úurls       r   ÚcreatezSubscription.create   s%   € ð �m‰mˆØˆt�}‰}˜S $Ñ1¨&Ñ1Ð1r   c                 ób   — dj                  | j                  |«      } | j                  ||fi |¤ŽS )zã
        Cancel subscription given by subscription_id

        Args:
            subscription_id : Id for which subscription has to be cancelled

        Returns:
            Subscription Dict for given subscription id
        z{}/{}/cancel©Úformatr   r   ©r   r   r   r   r   s        r   ÚcancelzSubscription.cancel,   ó2   € ð ×#Ñ# D§M¡M°?ÓCˆØˆt�}‰}˜S $Ñ1¨&Ñ1Ð1r   c                 ób   — dj                  | j                  |«      } | j                  ||fi |¤ŽS )zÆ
        Cancel a update

        Args:
            subscription_id : Id for which subscription has to be cancelled

        Returns:
            Subscription Dict for given subscription id
        z{}/{}/cancel_scheduled_changesr!   r#   s        r   Úcancel_scheduled_changesz%Subscription.cancel_scheduled_changes9   s2   € ð /×5Ñ5°d·m±mÀ_ÓUˆØˆt�}‰}˜S $Ñ1¨&Ñ1Ð1r   c                 ób   — dj                  | j                  |«      } | j                  ||fi |¤ŽS )zÐ
        Create addon for given subscription

        Args:
            subscription_id : Id for which addon has to be created

        Return:
            Subscription dict for given subscription id
        z{}/{}/addonsr!   r#   s        r   ÚcreateAddonzSubscription.createAddonF   r%   r   c                 ób   — dj                  | j                  |«      } | j                  ||fi |¤ŽS )zÛ
         Update particular subscription

        Args:
            subscription_id : Id for which subscription has to be edited         
        Returns:
            Subscription dict for given subscription id
        z{}/{})r"   r   Ú	patch_urlr#   s        r   ÚeditzSubscription.editS   s0   € ð �n‰n˜TŸ]™]¨OÓ<ˆØˆt�~‰~˜c 4Ñ2¨6Ñ2Ð2r   c                 ób   — dj                  | j                  |«      } | j                  |i fi |¤ŽS )r   z {}/{}/retrieve_scheduled_changes)r"   r   Úget_url)r   r   r   r   s       r   Úpending_updatezSubscription.pending_update_   s2   € ð 1×7Ñ7¸¿¹ÀÓWˆØˆt�|‰|˜C Ñ. vÑ.Ð.r   c                 ób   — dj                  | j                  |«      } | j                  ||fi |¤ŽS )zà
        Cancel subscription given by subscription_id

        Args:
            subscription_id : Id for which subscription has to be paused

        Returns:
            Subscription Dict for given subscription id
        z{}/{}/pauser!   r#   s        r   ÚpausezSubscription.pausel   s2   € ð ×"Ñ" 4§=¡=°/ÓBˆØˆt�}‰}˜S $Ñ1¨&Ñ1Ð1r   c                 ób   — dj                  | j                  |«      } | j                  ||fi |¤ŽS )zà
        Cancel subscription given by subscription_id

        Args:
            subscription_id : Id for which subscription has to be resume

        Returns:
            Subscription Dict for given subscription id
        z{}/{}/resumer!   r#   s        r   ÚresumezSubscription.resumey   r%   r   c                 ód   — dj                  | j                  ||«      } | j                  ||fi |¤ŽS )a'  
        Delete offer linked to a subscription

        Args:
            subscription_id : The id of the subscription to offer need to be deleted
            offer_id : The id of the offer linked to subscription

        Returns:
            Subscription Dict for given subscription id
        z{}/{}/{})r"   r   Ú
delete_url)r   r   Úoffer_idr   r   r   s         r   Údelete_offerzSubscription.delete_offer†   s4   € ð ×Ñ §¡¨ÀÓIˆØˆt�‰˜s DÑ3¨FÑ3Ð3r   r	   )Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r$   r'   r)   r,   r/   r1   r3   r7   Ú__classcell__)r   s   @r   r   r      ss   ø„ õ6ð õ =ð +-õ 
Pð ó 2ð ,.ó 2ð >@ó 2ð 13ó 2ð *,ó 
3ò/ð +-ó 2ð ,.ó 2ð <>÷ 4r   r   N)Úbaser   Úconstants.urlr   r   © r   r   ú<module>r?      s   ðÝ Ý ôM4�8õ M4r   