
    xh	                     :    d dl mZ d dlmZ  G d de          ZdS )   )GroupId)GroupsToDisplayc                       e Zd ZdZd	dZed             Zej        d             Zed             Zej        d             Zd Z	dS )
Asmz*An object specifying unsubscribe behavior.Nc                 J    d| _         d| _        ||| _        |	|| _        dS dS )a/  Create an ASM with the given group_id and groups_to_display.

        :param group_id: ID of an unsubscribe group
        :type group_id: GroupId, int, required
        :param groups_to_display: Unsubscribe groups to display
        :type groups_to_display: GroupsToDisplay, list(int), optional
        N)	_group_id_groups_to_displaygroup_idgroups_to_display)selfr
   r   s      L/var/www/html/what/lib/python3.11/site-packages/sendgrid/helpers/mail/asm.py__init__zAsm.__init__   s<     "&$DM(%6D""" )(    c                     | j         S )zUThe unsubscribe group to associate with this email.

        :rtype: GroupId
        )r   r   s    r   r
   zAsm.group_id   s     ~r   c                 j    t          |t                    r	|| _        dS t          |          | _        dS )zThe unsubscribe group to associate with this email.

        :param value: ID of an unsubscribe group
        :type value: GroupId, int, required
        N)
isinstancer   r   r   values     r   r
   zAsm.group_id!   s2     eW%% 	,"DNNN$U^^DNNNr   c                     | j         S )zThe unsubscribe groups that you would like to be displayed on the
        unsubscribe preferences page. Max of 25 groups.

        :rtype: GroupsToDisplay
        )r	   r   s    r   r   zAsm.groups_to_display-   s     &&r   c                 j    t          |t                    r	|| _        dS t          |          | _        dS )a  An array containing the unsubscribe groups that you would like to
        be displayed on the unsubscribe preferences page. Max of 25 groups.

        :param groups_to_display: Unsubscribe groups to display
        :type groups_to_display: GroupsToDisplay, list(int), optional
        N)r   r   r	   r   s     r   r   zAsm.groups_to_display6   s:     e_-- 	=&+D###&5e&<&<D###r   c                     i }| j         | j                                         |d<   | j        | j                                        |d<   |S )z
        Get a JSON-ready representation of this ASM object.

        :returns: This ASM object, ready for use in a request body.
        :rtype: dict
        Nr
   r   )r
   getr   )r   asms     r   r   zAsm.getC   sP     =$"m//11C
O!-'+'='A'A'C'CC#$
r   )N)
__name__
__module____qualname____doc__r   propertyr
   setterr   r    r   r   r   r      s        447 7 7 7"   X _	, 	, _	, ' ' X' 
= 
= 
=    r   r   N)r
   r   r   r   objectr   r!   r   r   <module>r#      sg          . . . . . .K K K K K& K K K K Kr   